HX711稱重傳感器專用模擬/數字(A/D)轉換器芯片
簡介:
HX711是一款專為高精度稱重傳感器而設計的24位A/D轉換器芯片。與同類型其它芯片相比,該芯片集成了包括穩壓電源、片內時鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應速度快、抗干擾性強等優點。降低了電子秤的整機成本,提高了整機的性能和可靠性。該芯片與后端MCU芯片的接口和編程非常簡單,所有控制信號由管腳驅動,無需對芯片內部的寄存器編程。輸入選擇開關可任意選取通道A或通道B,與其內部的低噪聲可編程放大器相連。通道A的可編程增益為128或64,對應的滿額度差分輸入信號幅值分別為±20mV或±40mV。通道B則為固定的32增益,用于系統參數檢測。芯片內提供的穩壓電源可以直接向外部傳感器和芯片內的A/D轉換器提供電源,系統板上無需另外的模擬電源。芯片內的時鐘振蕩器不需要任何外接器件。上電自動復位功能簡化了開機的初始化過程。
HX711引腳圖:
HX711管腳功能描述:
HX711電路圖:
注意事項1.所有數字輸入管腳,包括RATE,XI和PD_SCK管腳,芯片內均無內置拉高或拉低電阻。這些管腳在使用時不應懸空。
2.建議使用通道A與傳感器相連,作為小信號輸入通道;通道B用于系統參數檢測,如電池電壓檢測。
3.建議使用PNP管S8550與片內穩壓電源電路配合。也可根據需要使用其他MOS或雙極晶體管,但應注意穩壓電源的穩定性。
4.無論是采用片內穩壓電源或系統上其他電源,建議傳感器和A/D轉換器使用同一模擬供電電源。
5.的輸入時鐘脈沖數不應少于25或多于27,否則會造成串口通訊錯誤。
參考驅動程序(匯編) /*------------------------------------------------------------------- 在ASM中調用: LCALL ReaAD 可以在C中調用: extern unsigned longReadAD(void);
unsigned long data; data=ReadAD();
----------------------------------------------------------------------*/ PUBLIC ReadAD HX711ROM segment code rseg HX711ROM sbit ADDO = P1.5; sbit ADSK = P0.0; /*-------------------------------------------------- OUT: R4, R5, R6, R7 R7=>LSB 如果在C中調用,不能修改R4,R5,R6,R7 ---------------------------------------------------*/ ReadAD: CLR ADSK // 使能AD(PD_SCK 置低) SETB ADDO //51CPU 準雙向I/0 輸入使能 JB ADDO,$ // 判斷AD轉換是否結束,若未結束則等待否則開始讀取 MOV R4,#24 ShiftOut: SETB ADSK //PD_SCK 置高(發送脈沖) NOP CLR ADSK //PD_SCK 置低 MOV C,ADDO // 讀取數據(每次一位) XCH A,R7 // 移入數據 RLC A XCH A,R7 XCH A,R6 RLC A XCH A,R6 XCH A,R5 RLC A
XCH A,R5 DJNZ R4,ShiftOut // 判斷是否移入24BIT SETB ADSK NOP CLR ADSK RET END
參考C程序: Sbit ADDO=P1^5; Sbit ADSK=P0^0; Undsigned long ReadCount(void){ Unsigned long Count; Unsigned char i; ADDO=1; ADSK=0; Count=0; While(ADDO); for(i=0;i<24;i++){ ADSK=1; Count=Count<<1; ADSK=0; if(ADDO)Count++; } ADSK=1; Count=Count^0x800000; ADSK=0; return(Count);
全部資料下載地址(里面包含詳細的HX711中文資料和c語言的源碼):
專用型高精度24位AD轉換器芯片HX711說明.doc
(990 KB, 下載次數: 34)
2017-8-11 17:19 上傳
點擊文件名下載附件
|