數(shù)字電壓表的設計制作_第1頁
數(shù)字電壓表的設計制作_第2頁
數(shù)字電壓表的設計制作_第3頁
數(shù)字電壓表的設計制作_第4頁
數(shù)字電壓表的設計制作_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

設計制作數(shù)字電壓表 MSC51系列單片機定時器 計數(shù)器中斷 動態(tài)掃描 A D轉換相關知識等 ADC0809各管腳功能 TLC2543各管腳功能C51程序語言中for語句 dowhile語句運行規(guī)則 使用方法 項目所需掌握的理論知識 完成項目所鍛煉的能力 掌握定時器 計數(shù)器的定時程序的編寫 掌握定時器中斷方式的編寫掌握ADC0809以及TLC2543數(shù)據(jù)采集的編程能力 一時鐘設計學習要求 案例引入 預備知識講解 電子實物制作與檢測 參考與消化示例程序并完成項目程序 總結與提高 學習指南 二案例引入 設計數(shù)字電壓表 設計要求如下 1 要求分別采用兩種不同模數(shù)轉換的芯片ADC0809 TLC2543實現(xiàn)設計數(shù)字電壓表 2 設計的數(shù)字電壓表可以測量0 5V范圍內的輸入電壓值 并且通過4位LED數(shù)碼管顯示采集的電壓值 實物照片 三任務二知識講解 1 ADC0809芯片知識與使用方法 ADC0809是一種有8路模擬輸入 8位并行數(shù)字輸出的逐次逼近式A D器件 性能 ADC0809主要技術指標和特性 1 分辨率 8位 2 轉換時間 取決于芯片的時鐘頻率 轉換1次所需時間 3 單一電源 5V 4 模擬輸入電壓范圍 單級性為0 5V 2 引腳介紹 8路輸入端 數(shù)據(jù)輸出端 輸入選擇控制端 時鐘輸入端 決定轉換速率 時頻率50 800kHz 啟動轉換信號 轉換結束信號 輸出允許信號 地址鎖存允許信號 注意 理解這些管腳的作用對理解程序語句非常有幫助 3 ADC0809工作過程 START 工作分為4大步每步工作內容如圖所示 啟動信號 START 6腳 為轉換啟動信號 當START為上升沿時 所有內部寄存器清零 下降沿時 開始進行A D轉換 START 保持低電平 EOC 當EOC變?yōu)楦唠娖綍r 轉換結束 OE 當OE變?yōu)楦唠娖綍r 輸出數(shù)據(jù) 1 2 3 4 上升沿 高電平信號 高電平信號 下降沿 在轉換期間 START應保持低電平 4 電路連接圖 顯示電路 單片機P2口的低4位接4個1K電阻 4個PNP三極管 作為數(shù)碼管的位碼輸出 P0口與74LS245的A1 A8相連 B1 B8串個300歐姆的電阻 作為數(shù)碼管段碼輸出 ADC0809的D0 D7與P3口相接 采集的數(shù)據(jù)通過P3口傳送給單片機 P1 4 P1 7作為ADC0809的控制信號端 控制ADC0809的采集工作 5 程序分析 在程序設計時 由于ADC0809在進行A D轉換時需要有CLK信號 而此時的ADC0809的CLK是接在單片機的P1 4端口上 也就是要求從P1 4端口能夠輸出CLK信號供ADC0809使用 1 采用T0定時器中斷方式產(chǎn)生ADC0809所需要的CLK信號 CLK為時鐘輸入信號線 它的取值范圍為10KHz 1280KHz 我們這里取值50KHz 根據(jù)定時器的計算公式可得TH0 TL0 0XF6 主程序流程圖揭示程序工作過程 2 項目源程序 include defineuintunsignedint defineucharunsignedcharucharcodeled 10 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 數(shù)碼管顯示0 9uintvolt 電壓值測定值sbitLW1 P2 3 sbitLW2 P2 2 sbitLW3 P2 1 sbitLW4 P2 0 定義數(shù)碼管位選腳sbitCLK P1 4 sbitSTART P1 5 sbitEOC P1 6 sbitOE P1 7 定義ADC0809各腳 紅色語句是依據(jù)電路連接定義的 定義這些語句是便于程序書寫 函數(shù)名 ADC 功能 數(shù)模轉換程序 調用函數(shù) 輸入?yún)?shù) 輸出參數(shù) 說明 將轉換好的測定值保存在變量volt中 voidADC START 0 START 1 START 0 ad開始轉換while EOC 0 等待轉換結束OE 1 volt P3 取走轉換值OE 0 輸出轉換結束volt volt 196 轉換值處理 3 紅色語句嚴格依據(jù)芯片工作過程書寫 將P3口得到的A D轉換值通過計算公式轉換為正確的電壓值 這是因為項目的滿量程為5V 轉換分辯率為8位即最大值是255 5 255 196mV 即1代表196mV 4 函數(shù)名 timer interrupt1 功能 定時中斷0響應程序 說明 為ADC提供時鐘信號 voidtimer interrupt1 CLK CLK 取反產(chǎn)生時鐘信號 主程序voidmain EA 1 開總中斷TMOD 0 x02 設定定時計數(shù)工作方式TH0 0XF6 TL0 0XF6 為定時器初賦值ET0 1 開定時器0中斷TR0 1 while 1 ADC 調用模數(shù)轉換程序display 調用顯示程序 采用T0定時器中斷方式產(chǎn)生ADC0809所需要的CLK信號 CLK為時鐘輸入信號線 我們這里取值50KHz 根據(jù)定時器的計算公式可得TH0 TL0 0XF6 使用并行ADC會限制系統(tǒng)I O口的功能擴展 采用串行ADC比較適合那些低速采樣而控制管腳又比較多的系統(tǒng) TLC2543是TI公司的12位串行模數(shù)轉換器 由于是串行輸入結構 能夠節(jié)省51系列單片機I O資源 且價格適中 分辨率較高 因此在儀器儀表中有較為廣泛的應用 1 TLC2543芯片知識與使用方法 TLC2543是12位串行A D轉換器 使用開關電容逐次逼近技術完成A D轉換過程 四任務三知識講解 AIN0 AIN10為模擬輸入通道 DATAINPUT為串行數(shù)據(jù)輸入端 DATAOUT為A D轉換結果的三態(tài)串行輸出端EOC為轉換結束端 I OCLK為I O時鐘端 REF 為正基準電壓端 REF 為負基準電壓端 VCC為電源端 GND為地 為片選端 TLC2543控制字 控制字為從DATAINPUT端串行輸入端8位數(shù)據(jù) 規(guī)定了TLC2543要轉換的模擬量通道 轉換后的輸出數(shù)據(jù)長度以及輸出數(shù)據(jù)端格式 高4位 D7 D4 決定通道號 對于模擬輸入通道0至模擬輸入通道10 低4位 D3 D0 決定輸出數(shù)據(jù)長度及格式 其值為0000 1010 對應通道為通道0 通道10 其中D3 D2決定輸出數(shù)據(jù)長度 01表示輸出數(shù)據(jù)長度為8位 11表示輸出數(shù)據(jù)長度為16位 其他為12位 D1決定輸出數(shù)據(jù)是高位先送出 還是低位先送出 為0表示高位先送出 D0決定輸出數(shù)據(jù)是純正數(shù)還是有負數(shù) 若為純正數(shù) 該位為0 否則為1 TLC2543工作過程 工作開始 片選端CS必須先高到低 當片選端CS變低時 12個時鐘信號從CLOCK端依次加入 控制字從DATAINPUT一位一位在時鐘的上升沿被送入TLC2543 高位先送入 同時上一周期轉換的結果數(shù)據(jù)從DATAOUT一位一位地移出 TLC2543收到第4個時鐘信號后 通道號已收到 此時TLC2543開始對選定通道的模擬量進行采樣 并保持到第12個時鐘的下降沿 在第12個時鐘下降沿 EOC變低 進行A D轉換 約需10us 轉換完成后EOC變高 轉換的數(shù)據(jù)在輸出數(shù)據(jù)寄存器中 待下一個工作周期輸出 2 電路連接圖 TLC2543連接電路 單片機的P1 0 P1 3 P1 4作為TLC2543的控制信號端 起到控制TLC2543的采集電壓工作 單片機的P1 1 P1 2分別接TLC2543的DATAOUT和DATAINPUT 作為TLC2543串行數(shù)據(jù)線 顯示電路與前邊一樣 3 程序分析 AT89C51單片機通過編程產(chǎn)生串行時鐘 并按時序發(fā)送與接收數(shù)據(jù)位 完成通道方式 通道數(shù)據(jù)的寫入和轉換結果的讀出 其中模數(shù)轉換程序是重點 include defineuintunsignedint defineucharunsignedchar defineulongunsignedlongulongvolt 測量的電壓值ucharcodeled 10 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 數(shù)碼管顯示0 9sbitLW1 P2 3 sbitLW2 P2 2 sbitLW3 P2 1 sbitLW4 P2 0 定義數(shù)碼管位選腳sbitCLK P1 3 定義時鐘信號口sbitDIN P1 2 定義2543數(shù)據(jù)寫入口sbitDOUT P1 1 定義2543數(shù)據(jù)讀取口sbitCS P1 0 定義2543片選信號口 紅色語句是依據(jù)電路連接定義的 定義這些語句是便于程序書寫 1 2 函數(shù)名 read2543 ucharaddr 說明 進行ad轉換將結果存于volt變量中addr為測量位地址voidread2543 ucharaddr uintad 0 uchari CLK 0 CS 0 啟動2543addr 1 volt ad 取走轉換結果 是上一個時鐘的結果 volt volt 1221 對測量值進行處理以符合實際 此段程序按TLC2543時序圖寫 是程序的重點 也是難

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論