新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > X25165芯片在8051系統中的應用

        X25165芯片在8051系統中的應用

        作者: 時間:2012-03-05 來源:網絡 收藏

        e.讀存儲單元內容子程序

        的串行EEPROM中讀指定單元內容,需要先發送READ指令和16位地址,指定地址單元的數據在SCK脈沖的作用下就會從S0引腳依次移出。
        WD-RD-DATA:CLR P1.2 ;使SCK為低電平
        CLR P1.3 ;選擇CS有效
        MOC A,#03H ;READ指令送累加器A
        LCALL WD-OUTB;輸出READ指令
        MOV A,DPH;高位地址送累加器A
        LCALL WD-OUTB ;輸出高位地址
        MOV A,DPL ;低位地址送累加器A
        LCALL WD-OUTB ;輸出低位地址
        LCALL WD-INB ;讀?。―PTR)單元的數據
        MOV R4,A ;數據送R4
        LCALL WD-INB ;讀?。―PTP+1)單元的數據
        MOV R5,A ;數據送R5
        CLR P1.2 ;使SCK為低電平
        SETB P1.3 ;選擇CS無效
        RET

        f.寫存儲單元內容子程序

        該子程序向內EEPROM的指定起始地址寫入數據,與寫狀態寄存器子程序一樣,程序中需要先輸出WREN指令設置寫使能鎖存器。然后,按高位在前的順序輸出存放于DPTR中的16位地址和存放于R5、R4中的16位數據。最后,要循環檢測狀態寄存器的WIP位,直到芯征內容的寫操作完成,以確保數據被安全可靠地寫入芯片。
        WD-WR-DATA:CLR P1.2 ;使SCK為低電平
        CLR P1.3 ;芯片選擇CS有效
        MOV A,#06H ;WREN指令送累加器A
        LCALL WD-LUTB ;輸出WREN指令
        SETB P1.3 ;使CS為高電平
        CLR P1.3 ;芯片選擇CS有效
        MOV A,#02H ;WRITE指令送累加器A
        LCALL WD-OUTB ;輸出WRITE指令
        MOV A,DPH ;輸出高8位地址
        LCALL WD-OUTB ;
        MOV A,DPL ;輸出低8位地址
        LCALL WD-OUTB ;
        MOV A, R4 ;輸出低8位數據
        LCALL WD-OUTB ;
        MOV A,R5 ;輸出高8位數據
        LCALL WD-OUTB;
        CLR P1.2 ;使SCK為低電平
        SETB P1.3 ;使CS為高電平
        WD-WIP-POLL:LCALL WD-RD-SR ;讀狀態寄存器
        JB ACC.0, WD-WIP-POLL
        ;檢測WIP位
        RET

        g.看門狗定時器復位子程序

        只要在設定的看門狗定時器超時周期以內執行子程序并向芯片的CS引腳發送一個下降沿,看門狗就不會產生復位輸出信號。
        WD-EAT:SETB P1.3 ;
        CLR P1.3 ;產生CS下降沿脈沖
        SETB P1.3 ;
        RET

        筆者在設計車輪徑軸向位移檢測儀時使用了芯片,從而簡化了結構,降低了成本,提高了的可靠性,使用過程中保存的數據從未發生丟失現象,使用結果令人滿意。


        上一頁 1 2 3 下一頁

        關鍵詞: 應用 系統 芯片 X25165

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 海宁市| 全州县| 夏河县| 婺源县| 义马市| 曲周县| 成武县| 岚皋县| 石景山区| 十堰市| 奉节县| 南丰县| 随州市| 锦屏县| 孝义市| 安国市| 高雄市| 静海县| 托克托县| 灯塔市| 田林县| 庐江县| 含山县| 固镇县| 宜宾县| 武功县| 稻城县| 轮台县| 兴海县| 鹤山市| 湖口县| 哈巴河县| 石棉县| 昌图县| 平安县| 沽源县| 西安市| 大同县| 岑巩县| 苗栗市| 古交市|