ADS1115的IIC通信

朋友在用華遠bc芯片做個東西,想和ads1115通信。這裏根據datasheet總結下ADS1115的IIC通信機制

datasheet裏面其實有個quick guide,比較詳細的介紹了IIC通信的流程.

這個流程是讓ADS1113/4/5能夠連續的進行A/D轉換並且讀取結果的過程。將詳解下這個流程中的步驟

1.寫congif register,這是爲了寫配置寄存器,確定ADS1115的工作模式。

1)首先要確定從機地址(slave address),slave address 可選,addr pin有4個選擇。不過一般是地址位接GND,1001000,最後一位是確定IIC的寫/讀狀態,寫的時候是1,讀的時候是0.所以slave address讀寫地址是0x90/0x91(10010000/10010001)

2)寫0x01(00000001),指向config register(必選)

標題

 

pointer register的後兩位確定了ADS1115的4個功能寄存器地址的地址

所以conversion reg的地址是0x00,config register 的地址是0x01.

3)配置config register.

quickguide裏面給的配置參數的高低八位是10000100,100000011。這個參數不是隨便配置的,必須搞清楚

config reg的高8位

config reg的低8位

高8位的主要作用如下:

  [15] 工作狀態或者啓動單次轉換.寫狀態時0沒有影響,1則表示啓動單次轉換,guide選擇了1。同guide就可以了

【14:12】只對ADS1115有用,根據輸入端口配置,guide裏面選的000,表示差分輸入的兩個端口正極AIN0,負極AIN1。這隻有根據自己的輸入來配置,不一定按照guide來

【11:9】ADS1115 only。根據可編程增益放大器的增益配置。這配置可以改變輸入信號的有效範圍,但是輸入信號不能超過VSS+0.3V。guide選擇了010,這個也根據自己要求來

【8】ads1115工作模式,0爲單次,1爲連續continuous。

 

低8位

【7:5】採樣頻率,guide是100,默認值128,一般足夠了

【4:0】只對ADS1114/1115有用,主要是比較器和輸出的配置。一般默認值即可

 

 

2  配置完成之後,轉向conversion reg,就是輸出寄存器,即

依次

1)寫入0x90(從機地址),

2)0x00(輸出寄存器的地址,必選)

 

3讀取數據

1)寫入0x91(從機地址,讀)

2)接收輸出寄存器的高8位

3)接收輸出寄存器的低8位(但是隻有高四位有效,所有最後得到的輸出結果還要在convert下)

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章