PCF8591晶元和A D編碼

2021-09-02 16:57:58 字數 1532 閱讀 9436

i2c匯流排是philips公司推出的序列匯流排,整個系統僅靠資料線(sda)和時鐘線(scl)實現完善的全雙工資料傳輸,即cpu與各個外圍器件僅靠這兩條線實現資訊交換。i2c匯流排系統與傳統的並行匯流排系統相比具有結構簡單、可維護性好、易實現系統擴充套件、易實現模組化標準化設計、可靠性高等優點。

在乙個完整的微控制器系統中,a/d(a :模擬訊號 d:數碼訊號)轉換晶元往往是必不可少的。pcf8591是一種具有i2c匯流排介面的a/d轉換晶元。在與cpu的資訊傳輸過程中僅靠時鐘線scl和資料線sda就可以實現。

晶元介紹

pcf8591是具有i2c匯流排介面的8位a/d及d/a轉換器。有4路a/d轉換輸入,1路d/a模擬輸出。這就是說,它既可以作a/d轉換也可以作d/a轉換。a/d轉換為逐次比較型。引腳圖如圖1所示。結構圖如圖2所示。電源電壓典型值為5v。

pcf8591 ad轉換例項及程式詳解

pcf8591 ad轉換例項及程式詳解

ain0~ain3:模擬訊號輸入端。

vdd、vss:電源端(2.5~6v)

sda、scl:i2c匯流排的資料線、時鐘線。

osc:外部時鐘輸入端,內部時鐘輸出端。

ext:內部、外部時鐘選擇線,使用內部時鐘時ext接地。

agnd:模擬訊號地。

aout:d/a轉換輸出端。

vref:基準電源端。

應用1、器件總位址

pcf8591採用典型的i2c匯流排介面器件定址方法,即匯流排位址由器件位址、引腳位址和方向位組成。飛利蒲公司規定a/d器件位址為1001。引腳位址為a2a1a0,其值由使用者選擇,因此i2c系統中最多可接23=8個具有i2c匯流排介面的a/d器件。位址的最後一位為方向位r/ ,當主控器對a/d器件進行讀操作時為1,進行寫操作時為0。匯流排操作時,由器件位址、引腳位址和方向位組成的從位址為主控器傳送的第一位元組。

2、控制位元組

控制位元組用於實現器件的各種功能,如模擬訊號由哪幾個通道輸入等。控制位元組存放在控制暫存器中。匯流排操作時為主控器傳送的第二位元組。其格式如下所示:

pcf8591 ad轉換例項及程式詳解

其中:d1、d0兩位是a/d通道編號:00通道0,01通道1,10通道2,11通道3

d2 自動增益選擇(有效位為1)

d5、d4模擬量輸入選擇:00為四路單數入、01為三路差分輸入、10為單端與差分配合輸入、11為模擬輸出允許有效。

當系統為a/d轉換時,模擬輸出允許為0。模擬量輸入選擇位取值由輸入方式決定:四路單端輸入時取00,三路差分輸入時取01,單端與差分輸入時取10,二路差分輸入時取11。最低兩位時通道編號位,當對0通道的模擬訊號進行a/d轉換時取00,當對1通道的模擬訊號進行a/d轉換時取01,當對2通道的模擬訊號進行a/d轉換時取10,當對3通道的模擬訊號進行a/d轉換時取11

**#include 「pcf8591.h」

//傳送乙個位元組資料給pcf8591

void pcf8591_init(uchar dat) //選擇的四種模式

//從pcf8591中讀出乙個位元組資料

uint pcf8591_get(void)

void main(void)

}}**

51微控制器AD轉換之PCF8591

pcf8591是乙個單片整合 單獨供電 低功耗 8 bit cmos資料獲取器件。ad轉換即 模擬量 analog 轉換成 數字量 digital 1.引腳分析 pcf8591具有4個模擬輸入 ain0 ain3 1個模擬輸出 aout 和1個序列i c匯流排介面 sda scl pcf8591的3...

通過PCF8591控制電壓值(DA轉換)

1 pcf8591 是乙個單片整合 單獨供電 8 bit cmos資料獲取器件。2 ain0 ain1 ain2 ain3為模擬輸入端 3 aout為模擬輸出端 4 ext為低電平時使用內部時鐘,為高電平時使用外部時鐘 5 a0 a1 a2為位址引腳 6 ocs vref agnd照著接相應電平就行...

PCF8591工作異常(資料都是讀到255)

使用環境 藍色粗體字為特別注意內容 1 硬體環境 pcf8591 4通道adc,51微控制器,3v電源 今天用pcf8591採集4個通道的電壓資料,發現讀到的資料都是255,接上之前做的那塊電路板,發現可以正常工作,於是懷疑是電路板的原因或者晶元壞了,可以排除是微控制器及其軟體程式的原因。四個通道都...