AD7416在低功耗系統中的應用
地址指針寄存器儲存指向四個數據寄存器之一的地址。對AD7416每一次串行寫操作的第一個數據字節是數據寄存器的地址,這就是隨后的數據字節要寫入的地址,這個值就存儲在地址指針寄存器中。這個寄存器只須最低兩位被用來選擇一個數據寄存器,其值對應于寄存器地址。溫度值寄存器是一個16位只讀寄存器,它的高1O位以2的補碼格式儲存由AD轉換器送來的10位溫度讀數,低六位未用。
配置寄存器是一個8位讀/寫寄存器,它用來設置AD7416的工作方式。D7、D6、D5用于通道選擇,均保持為0;D4、D3設置錯誤隊列長度;D2設置OTI輸出極性;D1設置OTI工作方式;DO設置芯片工作方式。THYST設點寄存器和TOTI設點寄存器都是16位讀/寫寄存器,它們的9個最高位儲存以2的補碼格式表示的低、高溫度門限設點,對應溫度值寄存器的高9位,低7位未用。
AD7416上電時地址指針指向溫度值寄存器,TOT1=80℃,THYST=75℃。
1.2.2 基本工作原理
帶隙溫度傳感器和10位A/D轉換器可以按照預先設定的工作方式對環境溫度進行實時測量。同時把轉換結果以10位二進制數形式保存到溫度值寄存器。
設點比較器把實際測量到的溫度值與預先設定的高低門限值進行比較,如果超限則按配置寄存器設置在OTI端輸出高低電平。OTI在使用中需要外接一個約1O k的上拉電阻。
AD7416中有一個故障排隊計數器用以避免干擾造成的OTI輸出端誤觸發,這個計數器的排隊長度由配置寄存器設定。如果排隊設置為4,那么就需要連續4次測量溫度超限才能引起OTI的有效輸出,小于4次都認為是干擾,將復位故障排隊計數器。本文引用地址:http://www.j9360.com/article/188575.htm
2 系統設計
2.1 硬件設計
系統中AD7416部分硬件原理圖如圖3所示,A2、A1、A0 分別接低、低、高電平,在八位地址中,高四位為1001表示選中7416,次三位為A2、A1、A0表示的地址,最低位表示讀寫,所以應用中AD7416 的寫地址為10010010B,讀地址為10010011B。本例中僅使用AD7416進行測量溫度,OTI懸空,沒有利用。串行時鐘、數據總線對應連接處理器的時鐘、數據總線端口。
2.2 軟件設計
AD7416的01H為配置寄存器,其最低位為0,則啟動芯片采集溫度值并進行AD轉換;為1則停止芯片工作。軟件開始首先啟動芯片工作,程序如下:
這段程序向AD7416的配置寄存器寫入00H,完成芯片的測溫啟動。I2C_START子程序啟動IIC總線,I2C_WwRITE子程序向IIC總線寫一個字節,I2C_STOP子程序關閉IIC總線。程序首先向IIC總線寫92H,選中AD7416芯片,然后把01H寫入AD7416的地址指針寄存器,選中配置寄存器,最后把00H寫入配置寄存器。
評論