實驗五、模數轉換
一、實驗目的
1、掌握A/D轉換與(yu) 單片機的接口方法;
2、掌握A/D芯片TLC549的編程方法;
3、掌握數據采集程序的設計方法;
二、實驗內(nei) 容
利用實驗開發裝置上的TLC549做A/D轉換器,對電位器提供的模擬電壓信號進行定時中斷采樣,結果在LED上進行顯示。
A/D轉換芯片 TLC549
CLK P1.5 時鍾位
DAT P1.6 數據位
CS P1.7 選片位
VREF 接 +5V
三、實驗線路
將TLC549的CLK接P1.5、DAT接P1.6、CS接P1.7,將模擬電壓輸入端連到電位器的電壓輸出端,
並接萬(wan) 用表進行輸入電壓測量。
四、實驗步驟
在PC機輸入源程序並匯編,然後下載到單片機上,進行調試。
調節電位器,電壓從(cong) 0V到5V變化,記錄數碼管的顯示數值。記錄到表中。
輸入電壓V 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
A/D結果
五、 實驗報告
(1) 整理好實驗程序和實驗記錄,進行數據處理分析並做圖。
(2) 數據采集中,如何實現精確的定時數據采集?
(3) 數碼管動態掃描顯示程序設計中,顯示刷新的時間如何確定?
;++++++++++++++++++++++++++++++++++++++++++++++++++++++
CS BIT P3.0
DAT BIT P3.1
CLK BIT P3.2
ADC DATA 30H
ORG 0000H
MAIN: MOV SP,#60H
WAIT: ACALL TLC549
LCALL DELAY
ACALL TLC549 ;讀取上次ADC值,並再次啟動AD轉換
MOV A,ADC
CPL A
MOV P1,A
SJMP WAIT
TLC549: CLR CLK
CLR CS ;選中TLC549
MOV R6,#8
TLCAD: SETB CLK
MOV C,DAT
RLC A
CLR CLK ;DAT=0,為(wei) 讀出下一位數據作準備
DJNZ R6,TLCAD
SETB CS ;禁能TLC549,再次啟動AD轉換
SETB CLK
MOV ADC,A
RET
DELAY: MOV R7,#250
DJNZ R7,$
RET
END
實驗六、模數轉換
一、實驗目的
1、掌握模數轉換芯片TLC5620的接口技術。
2、掌握模數轉換芯片TLC5620的編程方法。
二、實驗內(nei) 容
編寫(xie) 程序實現下列要求:
1、 通過SW輸入8位數值,由TLC5620變為(wei) 模擬電壓輸出,記錄數值與(yu) 對應的對應關(guan) 係。
2、 利用TLC5620輸出一個(ge) 從(cong) 0V開始逐漸升至5V再降至0V,周期為(wei) 1秒的三角波。
三、實驗線路
將TLC5620的信號線接到相應的端口,在OutA、OutB、OutC、OutD、輸出0-5V電壓接萬(wan) 用表。
D/A芯片TLC5620
LDAC 接GND;
LOAD 接P3^0; 裝載
CLK 接P3^1; 時鍾
DAT 接P3^2; 數據
Vref 接+5V; 參考
四、實驗預習(xi)
1、學習(xi) 模數轉換的原理與(yu) 編程
2、提前編寫(xie) 程序,寫(xie) 出預習(xi) 報告。
五、實驗報告
1、總結出實驗的詳細步驟。
2、寫(xie) 出調試正確的程序及框圖。
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
SCL BIT P3.0
SDA BIT P3.1
LOAD BIT P3.2
DAC DATA 30H
NUM DATA 31H
ORG 0000H
MAIN: MOV SP,#60H
CLR SCL
CLR SDA
SETB LOAD
WAIT: MOV P1,#0FFH
MOV A,P1
MOV DAC,A
MOV NUM,#0
LCALL DAC5620
SJMP WAIT
DAC5620: MOV A,R1
CLR SCL
MOV A,NUM
LCALL SENDAD
MOV A,R2
CLR SCL
MOV A,DAC
LCALL SENDDB
CLR LOAD
SETB LOAD
RET
SENDDB: MOV R7,#8
LPDB: SETB SCL
RLC A
MOV SDA,C
CLR SCL
DJNZ R7,LPDB
RET
SENDAD: MOV R7,#3
SETB C
RLC A
LPAD: SETB SCL
RLC A
MOV C,ACC.3
MOV SDA,C
CLR SCL
DJNZ R7,LPAD
RET
END