新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機對SAA7113初始化和控制的程序代碼

        51單片機對SAA7113初始化和控制的程序代碼

        作者: 時間:2012-02-13 來源:網絡 收藏

         RET

        本文引用地址:http://www.104case.com/article/172108.htm

          ;*******通過I2C總線讀出某一寄存器的數據*********

          I2C_READ: ACALL I2C_START

          MOV A, # DeviceaddressW ;調7113地址,寫入

          ACALL I2C_SEND_1BYTE

          ACALL CHECK_ACK

          JNB I2C_ERROR, RD200

          RD100: ACALL I2C_STOP

          RET

          RD200: MOV A, Subaddress ;調要讀的寄存器地址

          ACALL I2C_SEND_1BYTE ; 發送寄存器地址字節

          ACALL CHECK_ACK

          JB I2C_ERROR, RD100

          ACALL I2C_START ;重發起動信號

          MOV A, # DeviceaddressR ;調7113地址,讀

          ACALL I2C_SEND_1BYTE

          ACALL CHECK_ACK

          JB I2C_ERROR, RD100

          ACALL I2C_RECEIVE_1BYTE ;接收讀出的數據

          MOV DATA_I2C,A ;讀出數據轉存

          ACALL SEND_NOACK ;發送非應答位

          ACALL I2C_STOP ;停止

          RET

          ;***************化7113,配置各寄存器************************

          INIT_: MOV DPTR, #_Subaddress

          MOV R7, #28

          INIT100: MOV A, #0

          MOV C A, @A+DPTR

          MOV Subaddress, A ;調寄存器地址

          MOV A,#28

          MOVC A, @A+DPTR

          MOV DATA_I2C, A ;調寄存器配置數據

          INC DPTR

          ACALL I2C_WRITE ;配置1個寄存器

          JB I2C_ERROR, INIT200

          DJNZ R7,INIT100

          INIT200: RET

          ;***************寄存器化配置數據**********************

          SAA7113_Subaddress:

          DB 01H,02H,03H,04H,05H,06H,07H,08H,09H,0AH,0BH,0CH,0DH,0EH

          DB 0FH,10H,11H,12H,13H,15H,16H,17H,40H,58H,59H,5AH,5BH,5EH

          ;共28個

          I2C_REG_VALUE_AI11:

          DB 08H,0C0H,33H,00H,00H,0EBH,0E0H,0B8H,01H,7EH,46H,43H,01H,01H

          DB 0FH,00H,0CH,0A7H,00H,00H,00H,00H,02H,00H,54H,07H,80H,00H

          ;*************對SAA7113某一寄存器的改寫與讀出*******************

          WRITE_READ: MOV Subaddress, #0AH ; 設寄存器地址為0AH

          MOV DATA_I2C, #88H ;改寄存器的值為88H

          ACALL I2C_WRITE ;改寫

          ACALL I2C_READ ;讀出


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 邳州市| 湘西| 二连浩特市| 大埔县| 江陵县| 陵水| 武陟县| 五原县| 永昌县| 昌黎县| 义马市| 邵阳县| 丹凤县| 阜康市| 福海县| 闸北区| 新沂市| 夏邑县| 镇赉县| 磐石市| 乌海市| 洪洞县| 阿瓦提县| 玛纳斯县| 黄大仙区| 南充市| 临泉县| 台南县| 台前县| 玉田县| 遵义县| 巨鹿县| 秭归县| 马关县| 和林格尔县| 昭平县| 泾源县| 朝阳县| 汪清县| 丰县| 满城县|