新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > ADSll10自校準模數轉換器在稱重中的應用

        ADSll10自校準模數轉換器在稱重中的應用

        作者: 時間:2010-03-24 來源:網絡 收藏

        3 軟件設計
        按照硬件電路,采用匯編語言編程,在KeilA51 V8.50環境下調試通過,并成功應用在單片機稱重系統中。軟件按功能模塊,主要由LCD顯示控制、ADslllO模數轉化、超負荷報警檢測、采集數據處理、鍵盤中斷等子程序構成。此處側重介紹l0模數轉換程序。程序代碼如下:
        ;定義P3.O腳為時鐘SCI,P3.1腳為數據SDA
        SDA BIT P3.1 ;定義數據
        SCL BIT P3.O ;定義時鐘
        ;配置寄存器子程序
        SEND:ACALL START;主機發送開始條件
        MOV A,#0000B ;發送l0地址(末位為O表示寫)
        ACALL S_BIT
        ACALL G_ASK
        JC STOP1 ;如果應答失敗,結束通信
        MOV A,#l00110B;工作在單周期模式
        ACALL S_BIT
        ACALL G_ASK
        STOP1: ACALL STOP
        RET
        ;接收一次轉換值(3字節)子程序
        READ:ACALL START;主機發送開始條件
        MOV A,#10010001B;發送lO地址(末位為1表示讀)
        ACALL S_BIT
        ACALL G_ASK
        JC STOP2 ;如果應答失敗,結束通信
        ACALL READBYTE
        MOV R7,A ;高字節存在R7中
        CLR SDA ;發送應答脈沖
        NOP
        NOP
        SETB SCL
        NOP
        NOP
        CLR SCL
        ACALL READBYTE
        MOV R6,A ;低字節存在R6中
        CLR SDA ;發送應答脈沖
        NOP
        NOP
        SETB SCL
        NOP
        NOP
        CLR SCL
        ACALL READBYTE
        MOV R5,A ;配置寄存器數據存在R5中
        CLR SDA ;發送應答脈沖
        NOP
        NOP
        SETB SCL
        NOP
        NOP
        CLR SCL
        STOP2: ACALL STOP
        RET
        ;I2C開始子程序
        START:SETB SDA
        SETB SCL
        NOP
        NOP
        CLR SDA
        NOP
        NOP
        CLR SCL
        NOP
        NOP
        RET
        ;I2C停止子程序
        STOP:CLR SDA
        SETB SCL
        NOP
        NOP
        SETB SDA
        NOP
        NOP
        CLR SCL
        NOP
        NOP
        RET
        ;I2C檢測應答子程序

        稱重傳感器相關文章:稱重傳感器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 崇左市| 靖西县| 祁连县| 永新县| 龙海市| 万荣县| 邹平县| 赤峰市| 靖安县| 广东省| 伊金霍洛旗| 临澧县| 辰溪县| 南岸区| 禹州市| 永新县| 静安区| 澳门| 抚松县| 东兴市| 新蔡县| 乌海市| 台南县| 安宁市| 南漳县| 鄂温| 剑川县| 政和县| 金沙县| 龙井市| 五峰| 金乡县| 宝兴县| 邢台市| 枣庄市| 蓬莱市| 西充县| 宣汉县| 遵义县| 噶尔县| 霍城县|