本實驗通過上位機來顯示來顯示電壓的變化,目的除了熟悉如何讓數據傳送到上位機進行顯示之外還要了解TLC549芯片的引用,同時熟悉將數據處理的應用。
一、tlc549中文資料匯總-tlc549介紹
TLC549是8位串行A/D轉換器芯片,可與通用微處理器、控制器通過CLK、CS、DATAOUT三條口線進行串行接口。具有4MHz片內系統時鐘和軟、硬件控制電路,轉換時間最長17μs,TLC549為40000次/s。總失調誤差最大為±0.5LSB,典型功耗值為6mW。采用差分參考電壓高阻輸入,抗干擾,可按比例量程校準轉換范圍,VREF-接地,VREF+-VREF-≥1V,可用于較小信號的采樣。
51hei.png (44.95 KB, 下載次數: 59)
下載附件
2021-7-18 21:39 上傳
TLC549主要特征:
①8位分辨率A/D轉換器,總不可調整誤差≤±0.5LSB。
②采用三線串行方式與微處理器接口。
③片內提供4MHz內部系統時鐘,并于操作控制用的外部I/OCLOCK相互獨立。
④有片內采樣保持電路,轉換時間≤17us,包括存取與轉換時間、轉換速率達40000次/秒
⑤差分高阻抗基準電壓輸入,其范圍是:1V≤差分基準電壓≤Vcc+0.2V
⑥寬電源范圍:3V~6.5V,低功耗,當片選信號/CS為低,芯片選中處于工作狀態。
二、tlc549中文資料匯總-tlc549引腳圖及其功能
1、TLC549的管腳圖
51hei.png (51.52 KB, 下載次數: 50)
下載附件
2021-7-18 21:40 上傳
2、TLC549管腳功能
REF+:正基準電壓輸入2.5V≤REF+≤Vcc+0.1。
REF-:負基準電壓輸入端,-0.1V≤REF-≤2.5V。且要求:(REF+)-(REF-)≥1V。
VCC:系統電源3V≤Vcc≤6V。
GND:接地端。
/CS:芯片選擇輸入端,要求輸入高電平VIN≥2V,輸入低電平VIN≤0.8V。
DATAOUT:轉換結果數據串行輸出端,與TTL電平兼容,輸出時高位在前,低位在后。
ANALOGIN:模擬信號輸入端,0≤ANALOGIN≤Vcc,當ANALOGIN≥REF+電壓時,轉換結果為全“1”(0FFH),ANALOGIN≤REF-電壓時,轉換結果為全“0”(00H)。
I/OCLOCK:外接輸入/輸出時鐘輸入端,同于同步芯片的輸入輸出操作,無需與芯片內部系統時鐘同步。
三、tlc549中文資料匯總-tlc549工作原理
TLC549均有片內系統時鐘,該時鐘與I/OCLOCK是獨立工作的,無須特殊的速度或相位匹配。其工作時序如圖所示。
當CS為高時,數據輸出(DATAOUT)端處于高阻狀態,此時I/OCLOCK不起作用。這種CS控制作用允許在同時使用多片TLC549時,共用I/OCLOCK,以減少多路(片)A/D并用時的I/O控制端口
一組通常的控制時序為:
(1)將CS置低。內部電路在測得CS下降沿后,再等待兩個內部時鐘上升沿和一個下降沿后,然后確認這一變化,最后自動將前一次轉換結果的最高位(D7)位輸出到DATAOUT端上。
(2)前四個I/OCLOCK周期的下降沿依次移出第2、3、4和第5個位(D6、D5、D4、D3),片上采樣保持電路在第4個I/OCLOCK下降沿開始采樣模擬輸入。
(3)接下來的3個I/OCLOCK周期的下降沿移出第6、7、8(D2、D1、D0)個轉換位,
(4)片上采樣保持電路在第8個I/OCLOCK周期的下降沿將移出第6、7、8(D2、D1、D0)個轉換位。保持功能將持續4個內部時鐘周期,然后開始進行32個內部時鐘周期的A/D轉換。第8個I/OCLOCK后,CS必須為高,或I/OCLOCK保持低電平,這種狀態需要維持36個內部系統時鐘周期以等待保持和轉換工作的完成。如果CS為低時I/OCLOCK上出現一個有效干擾脈沖,則微處理器/控制器將與器件的I/O時序失去同步;若CS為高時出現一次有效低電平,
若要在特定的時刻采樣模擬信號,應使第8個I/OCLOCK時鐘的下降沿與該時刻對應,因為芯片雖在第4個I/OCLOCK時鐘下降沿開始采樣,卻在第8個I/OCLOCK的下降沿開始保存。
四、tlc549中文資料匯總-tlc549特性參數
TLC549的極限參數如下:
●電源電壓:6.5V;
●輸入,出電壓范圍:0.3V~VCC+0.3V;
●峰值輸入電流(任一輸入端):±10mA;
●總峰值輸入電流(所有輸入端):±30mA;
●工作溫度:TLC549C:0℃~70℃
TLC549I:-40℃~85℃
TLC549M:-55℃~125℃
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
無標題.png (46.81 KB, 下載次數: 52)
下載附件
2021-7-18 21:42 上傳
單片機源程序如下:
- #include "reg51.h"
- #include "intrins.h"
- #define u8 unsigned char//0--255
- #define u16 unsigned int//0--65535
- #include "uart.h"
- #include "TLC549.h"
- void delay(long i){while(i--);}
- void main()
- {
- u16 ad=0;
- float f1=0.0;
- UART1_init();
- UART1_sends("Phuck u everyday \r\n");
- while(1)
- {
- f1=AD_read()*19.5312+0.5;//采集到的0--255,對應0--5V
- ad=(u16)f1;//浮點數轉為整數
- UART1_number(ad,1);//發送5位以內的數,0打印空格1打印回車
- delay(20000);
- }
- }
復制代碼
51hei.png (11.66 KB, 下載次數: 59)
下載附件
2021-7-18 21:43 上傳
仿真代碼51hei提供下載:
AD8位TLC549-串口.7z
(107.48 KB, 下載次數: 34)
2021-7-18 21:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|