課程設計—數字電壓表.rar
(528.24 KB, 下載次數: 151)
所在院系 | 教育信息與技術學院 |
專業名稱 | 信息工程 |
班級 | 1002 |
題目 | 數字電壓表 |
指導教師 | 黎明 |
成員 | 孫斌 鄭兵 楊鑫 |
完成時間 | 17.1.4 |
一、設計任務及要求: 設計任務: 設計一個數字電壓表。 要 求: 1.0-5V輸入; 2.用4個數碼管顯示;有小數點的顯示;顯示小數后三位數,如0.001;只顯示最后結果,不要顯示中間結果。 3. 要求精度達到1%,超出量程警告提示。 4. 可以多檔切換。 指導教師簽名: 2017年1月3日 |
二、指導教師評語: 指導教師簽名: 2017年1月 3 日 |
三、成績 驗收蓋章 2013年1月3 日 |
目錄
1 設計目的
2 設計思路
3 設計過程
3.2.1 硬件部分
(1)單片機控制模塊設計
(2)AD轉換模塊設計
(3)量程自動轉換模塊
(4)LED顯示模塊
(5)報警模塊
3.2.2 軟件部分
(1)主程序設計
(2)A/D轉換程序設計
4電路仿真與結果分析
5設計體會
參考文獻
附件
數字電壓表的設計
1 設計目的(1)熟悉數字電壓表的基本工作原理和與一般的模擬電壓表相比,數字電壓表具有的優點。
(2)掌握A/D 的使用和單片機整個開發過程。
(3)了解積分式和逐次逼近式AD轉換器各自的特點。
2 設計思路利用AD轉換器對輸入電壓進行采集并傳輸給單片機,讓其進行數據的處理。通過單片機與數碼管的連接,最終顯示在數碼管上。并用軟件編程的方式檢測輸入信號的大小來實現數字電壓表的量程自動轉換功能。
3 設計過程第一部分:單片機控制模塊。控制中心微控制器采用的是AT89C52 單片機,其對于多量程電路的測量有著不可比擬的性價比,而且操作簡單,特別是與ADC0808 構成的電壓采集電路,反映時間短,能夠有效地將模擬電壓數據在LED 上顯示出來。
第二部分:AD轉換模塊。A/D 轉換電路用來將量程轉換電路輸入的直流電壓信號轉成數字電壓信號,以供主控制器進行數據處理。采用一片ADC0808,它是采樣分辨率為8 位的、以逐次逼近原理進行模—數轉換的器件。
第三部分:量程自動轉換模塊。通過對輸入電壓的測量,利用軟件編程的方式來實現量程的自動轉換。
第四部分;LED顯示模塊。數碼管顯示電路以顯示4位的方式來顯示數字電壓表測量的直流電壓值。
第五部分:報警模塊。當輸入的直流電壓超過最大量程時,數字電壓表報警以示警告。
3.1方案論證
利用AD轉換器對輸入電壓進行采集并傳輸給單片機,讓其進行數據的處理。通過單片機與數碼管的連接,將輸入的直流電壓顯示在數碼管上。利用軟件編程的方式檢測輸入信號的大小來實現數字電壓表的量程自動轉換功能。在允許的誤差范圍內實現了數字電壓表的設計要求,完成了數字電壓表的全部設計。
3.2電路設計
3.2.1 硬件部分
(1) 單片機控制模塊設計
單片機控制模塊的作用是為控制各單元電路的運行并完成數據的換算或處理,主要由單片機、時鐘電路、復位電路組成。
① 時鐘電路
單片機工作的時間基準是由時鐘電路提供的,在單片機的XTAL1和XYAL2兩個管腳接一只晶振及兩只電容就構成了單片機的時鐘電路,電路中電容器C1和C2對振蕩頻率有微調作用,通常取(30±10pF)石英晶體選擇11.0592MHz。時鐘電路如圖1所示。
② 復位電路
單片機的RST管腳為主機提供了一個外部復位信號輸入口。復位信號是高電平有效,高電平有效的持續時間為2個機器周期以上。單片機的復位方式為上電復位方式。復位電路如圖2所示。
(2)AD轉換模塊設計
逐次逼近型A/D轉換器ADC0808屬于直接型A/D轉換器,它能把輸入的模擬電壓直接轉換為輸出的數字代碼,而不需要經過中間變量。
① ADC0808簡介
ADC0808精度為8位,CMOS器件,不僅包括一個8位的逐次逼近型的ADC部分,而且還提供一個8通道的模擬多路開關和通道尋址邏輯,因而有理由把它作為簡單的“數據采集系統”。利用它可直接輸入8個單端的模擬信號分時進行A/D轉換,在多點巡回檢測和過程控制、運動控制中應用十分廣泛。
②外部引腳圖及引腳功能
ADC0808的外部引腳如圖3所示。
IN0~IN7:8路模擬量輸入。A、B、C:3位地址輸入,2個地址輸入端的不同組合選擇八路模擬量輸入。
ALE:地址鎖存啟動信號,在ALE的上升沿,將A、B、C上的通道地址鎖存到內部的地址鎖存器。
D0~D7:八位數據輸出線,A/D轉換結果由這8根線傳送給單片機。
OE:允許輸出信號。當OE=1時,即為高電平,允許輸出鎖存器輸出數據。
START:啟動信號輸入端,START為正脈沖,其上升沿清除ADC0808的內部的各寄存器,其下降沿啟動A/D開始轉換。
EOC:轉換完成信號,當EOC上升為高電平時,表明內部A/D轉換已完成。
③AD轉換模塊設計
集成摸數轉換芯片ADC0808實現的A/D轉換電路如圖4所示,被測信號由ADC0808模擬輸入端輸入,完成A/D轉換后送入單片機,經相應處理后送出顯示。
(3)量程自動轉換模塊
利用軟件編程的方式,通過對輸入電壓判斷其大小來確定電壓表的當前量程,進而實現電壓表的量程自動切換。量程自動轉換模塊如圖5所示。量程分為3個檔:當s1亮時為1V-5V;當s2亮時為0.1—1V;當s3亮時為0—0.1V。
(4)LED顯示模塊
LED顯示模塊用來顯示數字電壓表測量的直流電壓值。LED顯示模塊如圖6所示。
(5) 報警模塊
利用一個電壓比較器和一個蜂鳴器的連接來實現報警模塊的設計。當輸入的直流電壓大于最大量程(5V)時,蜂鳴器響起即報警。報警模塊如圖7所示。
3.2.2 軟件部分
(1)主程序設計
(2)A/D轉換程序設計
A/D轉換程序的功能是采集數據,在整個系統設計中占有很高的地位。當系統設置好后,單片機掃描轉換結束管腳P3^2的輸入電平狀態,當輸入為高電平則轉換完成,將轉換的數值轉換并顯示輸出。若輸入為低電平,則繼續掃描。AD轉換程序流程圖如圖9所示。
程序如下:
OE=0;
ST=0;
ST=1;
ST=0;//啟動轉換
while(EOC==0); //等待轉換結果
OE=1; //允許輸出
sum=data;
電路的仿真和結果分析
4.1電路仿真
4.2結果分析
(1)當輸入直流電壓(input)大于5V時,電壓表只能顯示5.000V的電壓,此時s1亮。電壓大于5V時數碼管顯示如圖11所示。
(2)當輸入直流電壓(input)在1V~5V時,s1亮。在誤差允許的范圍內輸出相對精確的電壓值。電壓在1V~5V時數碼管顯示如圖12所示。
(3) 當輸入直流電壓(input)在0.1V~1V時,s2亮。在誤差允許的范圍內輸出相對精確的電壓值。電壓在0.1V~1V時數碼管顯示如圖13所示。
(4) 當輸入直流電壓(input)在0V~0.1V時,s3亮。在誤差允許的范圍內輸出相對精確的電壓值。電壓在0V~0.1V時數碼管顯示如圖14所示。
通過這次對數字電壓表的設計與制作,我們了解了單片機整個開發過程,熟知和掌握了AT89C51,ADC0809,CD4066,運放等芯片的作用及其使用。雖然在制作過程中出現了問題,但是通過不斷實踐和查找資料,積極地思考問題、發現問題,最終解決了。無論從硬件還是軟件方面,都提高了我們的動手和動腦能力。整個過程中,不但擴展了我們的知識面,而且也不斷在挖掘我們的潛力,為我們今后的學習奠定扎實的基礎。也許在這幾天的制作中,我學的知識比課本上的還多、還難。在這次制作中,我更加看到了我對課本知識不熟,思想不夠開闊等不足的地方,希望在以后的學習與實踐中多看課本,多思考來彌補自己的不足。
[1] 徐愛鈞.智能化測量控制儀表原理 [M].北京航空航天大學出版社.2004
[2] 吳金戌,沈慶陽,郭庭吉.8051單片機實踐與應用[M].北京清華大學出版社.2002
[3] 張毅剛,彭喜元,彭宇.《單片機原理及應用》第二版[M].北京高等教育出版社.2010.5
[4] 汪德彪.MCS-51單片機原理及接口技術[M]. 第1版.北京電子工業出版社.2003
[5] 沙占友.新型數字電壓表原理與應用[M].北京機械工業出版社.2006
附件完整電路
雨落 發表于 2020-4-13 15:45
如果是交流電壓也可以嗎
| 歡迎光臨 (http://www.denmoz.com/bbs/) | Powered by Discuz! X3.1 |