新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應用 > ADSll10自校準模數(shù)轉(zhuǎn)換器在稱重中的應用

ADSll10自校準模數(shù)轉(zhuǎn)換器在稱重中的應用

作者: 時間:2010-03-24 來源:網(wǎng)絡(luò) 收藏

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

稱重傳感器相關(guān)文章:稱重傳感器原理


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉