版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p> 第一章 前言- 3 -</p><p> 1.1概述- 3 -</p><p> 1.2系統(tǒng)原理及基本框圖- 3 -</p><p> 第二章 硬件設(shè)計- 4 -</p><p> 2.1 背景介紹- 4 -&
2、lt;/p><p> 2.1.1、預(yù)備知識- 4 -</p><p> 2.1.2、單片機測量電壓原理- 4 -</p><p> 2.2 設(shè)計目的- 4 -</p><p> 2.3 設(shè)計題目- 4 -</p><p> 2.4 設(shè)計說明- 5 -</p><p> 2.4.
3、1、系統(tǒng)設(shè)計- 5 -</p><p> 2.4.2、硬件原理- 5 -</p><p> 2.4.3、系統(tǒng)連接- 6 -</p><p> 2.5 軟件流程圖- 7 -</p><p> 2.6 系統(tǒng)各模塊原理圖- 9 -</p><p> 第三章 程序設(shè)計- 15 -</p>&
4、lt;p> 第四章.總結(jié)- 19 -</p><p><b> 第一章 前言</b></p><p><b> 1.1概述</b></p><p> 數(shù)字電壓表(Digital Voltmeter)簡稱DVM,它是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量(直流輸入電壓)轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀
5、表。傳統(tǒng)的指針式電壓表功能單一、精度低,不能滿足數(shù)字化時代的需求,采用單片機的數(shù)字電壓表,由精度高、抗干擾能力強,可擴展性強、集成方便。目前,由各種單片A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量、工業(yè)自動化儀表、自動測試系統(tǒng)等智能化測量領(lǐng)域,示出強大的生命力。與此同時,由DVM擴展而成的各種通用及專用數(shù)字儀器儀表,也把電量及非電量測量技術(shù)提高到嶄新水平。本章重點介紹單片A/D 轉(zhuǎn)換器以及由它們構(gòu)成的基于單片機的數(shù)字電壓表
6、的工作原理。</p><p> 1.2系統(tǒng)原理及基本框圖</p><p> 如圖1.1所示,模擬電壓經(jīng)過檔位切換到不同的分壓電路衰減后,經(jīng)隔離干擾送到A/D轉(zhuǎn)換器進行A/D轉(zhuǎn)換,然后送到單片機中進行數(shù)據(jù)處理。處理后的數(shù)據(jù)送到LED中顯示,同時通過串行通訊與上位機通信.</p><p><b> 第二章 硬件設(shè)計</b></p>
7、<p><b> 2.1 背景介紹</b></p><p> 2.1.1、預(yù)備知識 </p><p> 1. 熟悉凌陽單片機工作原理。 </p><p> 1)凌陽單片機的I/O口的使用原理和設(shè)置; </p><p> 2)凌陽單片機的中斷功能; </p><p> 3)
8、凌陽單片機的ADC的了解。 </p><p> 2. 熟悉凌陽匯編語言及C語言。 </p><p> 2.1.2、單片機測量電壓原理 </p><p> 單片機實現(xiàn)電壓測量,首先要把輸入的電信號轉(zhuǎn)換為數(shù)字量,這一轉(zhuǎn)換過程稱為A/D轉(zhuǎn)換,又稱為量化過程,需要用到A/D轉(zhuǎn)換器。 </p><p><b> 2.2 設(shè)計目的<
9、;/b></p><p> 本課程設(shè)計的基本要求是: </p><p> 1. 熟悉凌陽十六位單片機系統(tǒng)板-61板的基本構(gòu)成。 </p><p> 2. 掌握LED數(shù)碼管原理及使用方法。 </p><p> 3. 掌握61板的使用方法。 </p><p> 4. 初步掌握SPCE061A單片機匯編語言一
10、般編程技巧。 </p><p> 5. 初步掌握61板系統(tǒng)調(diào)試的一般步驟及方法。 </p><p> 6. 掌握ADC的使用。 </p><p><b> 2.3 設(shè)計題目</b></p><p> 本裝置將實現(xiàn)0-3.3V的電壓測量,IOA6接要測量的電壓,經(jīng)AD轉(zhuǎn)換后,計算出當(dāng)前電壓值,在數(shù)碼管上顯示當(dāng)前電壓
11、。具體要求如下: </p><p> 1. 通過IOA6接入要測量的電壓,單片機自動檢測。 </p><p> 2. 在數(shù)碼管上實時顯示當(dāng)前電壓值。 </p><p><b> 2.4 設(shè)計說明</b></p><p> 2.4.1、系統(tǒng)設(shè)計 </p><p> 根據(jù)設(shè)計題目的要求分析,
12、并考慮到題目的可擴展性,系統(tǒng)分成兩大部分: </p><p> 1. 模擬電壓輸入。 </p><p> 2. 數(shù)碼管顯示。 </p><p> 根據(jù)系統(tǒng)的功能現(xiàn)選擇61板作為單片機控制處理部分,利用4位LED數(shù)碼管作為顯示部分,如圖 4.36所示。 </p><p> 0~3.3V電壓輸入SPCE061A精簡開發(fā)板IOA8~15LE
13、D數(shù)碼管IOB8~9IOA6 </p><p><b> 2.1 系統(tǒng)框圖</b></p><p> 2.4.2、硬件原理 </p><p> 61板電路原理圖請參考附錄。 </p><p> 關(guān)于LED數(shù)碼管可參考第一章內(nèi)容。 </p><p> 0~3.3V可調(diào)的電壓可以通過在VD
14、D與GND之間接一電位器獲得,其電路如下圖所示。 </p><p> VDD(3.3V)GNDR(10K)IOA6 </p><p> 2.2 顯示部分原理圖</p><p> 2.4.3、系統(tǒng)連接 </p><p> 采用凌陽大學(xué)計劃的LED鍵盤模組和61板搭配可以很容易的完成這個課程設(shè)計的題目。它的連結(jié)圖如圖 4.38所示,IO
15、B的低八位控制數(shù)碼管顯示段位,IOB高八位控制點亮哪一個數(shù)碼管,IOA6連接模擬電壓輸入端AV(圖中并沒有畫出具體連線)。LED鍵盤模組的左上角有一個可變電阻,調(diào)整它的阻值即可在IOA6獲得不同電壓。</p><p> 2.3 LED鍵盤膜組和61板連接圖</p><p> 發(fā)光二極管數(shù)碼管1數(shù)碼管2數(shù)碼管3數(shù)碼管4數(shù)碼管5數(shù)碼管6KEY1KEY2KEY3KEY4KEY5KEY6KE
16、Y7KEY8按鍵狀態(tài)跳線2*4Key</p><p><b> 2.5 軟件流程圖</b></p><p> 在主程序中,首先初始化AD和數(shù)碼管驅(qū)動程序,然后不斷執(zhí)行AD采集,將采到的數(shù)字量換算成0~3.3V區(qū)間的電壓值,在數(shù)碼管上顯示出來。其流程如下: 開始初始化AD及數(shù)碼管驅(qū)動程序獲壓值在數(shù)碼管上顯示 </p><p> 顯示器片選
17、1*8Key 顯示器段選 IOA8-15 IOA0-7 IOB0-7 IOB8-15 2.4 主程序流程圖</p><p> AD轉(zhuǎn)換程序連續(xù)采集8個數(shù)字量,取其平均值,返回給主程序。 </p><p> YN開始ADC_Sum = 0AD轉(zhuǎn)換完成?將AD轉(zhuǎn)換值累加至ADC_Sum已執(zhí)行8次轉(zhuǎn)換?ADC_Sum=ADC_Sum/8返回ADC_SumYN </p&
18、gt;<p> 2.5 AD轉(zhuǎn)換程序流程</p><p> 2.6 系統(tǒng)各模塊原理圖</p><p><b> 原理與框圖:</b></p><p> ?。?)電源區(qū)原理框圖</p><p> (2)下載區(qū)原理框圖ICE 基本運作方式是通過控制 clock 及通過 ICE 喂入指令方式,來控制C
19、PU 的運行及緩存器資料和內(nèi)存資料的存取,因此必須透過控制緩存器值的設(shè)定來控制目前 CPU 的動作. </p><p> 每個相連接的不同ICE模塊都擁有自己獨特的3-bit ID,當(dāng)PC在傳送control信號時都會先傳送該 3-bit ID,只有ICE本身的ID和control信號的ID 相同時才會執(zhí)行該命令或回傳資料。61板上的74HC244主要在我們選用下載線的時候起作用,主要奇緩存的作用和完成SDA是
20、作為數(shù)據(jù)回送還是數(shù)據(jù)下傳的選擇。</p><p><b> (3)音頻輸入部分</b></p><p> 如下圖所示電路, MICP和MICN將隨著MIC產(chǎn)生的波形變化,并在兩個端口處形成兩路反相的波形,再經(jīng)過兩級運放放大,把放大的語音信號交給ADC轉(zhuǎn)換為數(shù)字量,這個時候我們就可以通過單片機編程對這些數(shù)據(jù)進行處理,比如說語音數(shù)據(jù)壓縮、語音識別樣本處理。音頻輸入外圍
21、電路如下:</p><p> 2.3.5音頻輸出部分</p><p> SPY0030是凌陽公司開發(fā)的專門用于語音信號放大的芯片,它的增益如下所示: </p><p> Gain=2*5000/(5000+R1) </p><p> SPY0030工作原理圖</p><p><b> 2.3.6按鍵
22、部分</b></p><p> 按鍵是通過通斷控制來實現(xiàn)它的功能,61板上的按鍵在沒按下時,它的1、3腳是斷開的,當(dāng)按下時這兩個腳是連通的。若此時我們在1腳接一個高電平,把第三腳連到一個I/O口上,這就形成了一個人機操作界面,通過編程對I/O掃描,單片機就能識別到我們的按鍵命令。</p><p><b> 第三章 程序設(shè)計</b></p>
23、<p> 3.1 程序名稱為VoltageTest。 </p><p> 工程名稱:VoltageTest</p><p> 功能描述:0~3.3V電壓表參考程序</p><p> 實現(xiàn)0-3.3V的電壓測量,IOA6接要測量的電壓,經(jīng)AD轉(zhuǎn)換后,計算出當(dāng)前電壓值,在數(shù)碼管上顯示當(dāng)前電壓。具體要求如下:</p><p>
24、; 1. 通過IOA6接入要測量的電壓,單片機自動檢測。</p><p> 2. 在數(shù)碼管上實時顯示當(dāng)前電壓值。</p><p> 涉及的庫:CMacro.lib</p><p> 組成文件:main.c, AD.c</p><p><b> Dig.asm</b></p><p>
25、 AD.h, Dig.h</p><p> 硬件連接:LED鍵盤模組的2*4KEY接IOA低8位,DIG接IOB高8位,SEG接IOB低8位,61板的電壓選擇跳線J5跳至"3V"位</p><p><b> ?。?)主程序</b></p><p> 文件名稱:main.c</p><p>
26、功能描述:0~3.3V電壓的程序</p><p> #include "AD.h"// AD采集程序頭文件</p><p> #include "DIG.h"// 包含數(shù)碼管驅(qū)動頭文件</p><p> #define CLR_WDT()*(unsigned *)0x7012=1// 清
27、看門狗</p><p> 語法格式:void DispFloat(float fNum)</p><p> 實現(xiàn)功能:顯示10以內(nèi)浮點數(shù),保留2位小數(shù)</p><p> 參數(shù):fNum - 要顯示的數(shù)值,范圍0.00~9.99</p><p><b> 返回值:無</b></p><
28、;p> const unsigned DigNum[]={// 0~9十個數(shù)字對應(yīng)的數(shù)碼管顯示編碼</p><p> 0x3f,0x06,0x5b,0x4f,0x66,</p><p> 0x6d,0x7d,0x27,0x7f,0x6f</p><p><b> };</b></p><p>
29、void DispFloat(float fNum)</p><p><b> {</b></p><p> unsigned int TempNum, i;</p><p> if(fNum>10)return;</p><p> TempNum = (unsigned int)fNum;// 獲得
30、整數(shù)部分</p><p> DIG_Set(1, DigNum[TempNum] | 0x80);// 在第1位上顯示整數(shù)部分(以及小數(shù)點)</p><p> for(i=2; i<=3; i++)</p><p><b> {</b></p><p> fNum = (fNum - TempNum)
31、* 10;</p><p> TempNum = (unsigned int)fNum;</p><p> DIG_Set(i, DigNum[TempNum]);// 在第i位上顯示第i-1位小數(shù)</p><p><b> }</b></p><p><b> }</b></p&
32、gt;<p> 語法格式:int main(void)</p><p><b> 實現(xiàn)功能:主函數(shù)</b></p><p><b> 參數(shù):無</b></p><p><b> 返回值:無</b></p><p> int main()<
33、;/p><p><b> {</b></p><p> unsigned int AD_Data;</p><p> float AD_Result;</p><p> ADC_Init();</p><p> DIG_Init();</p><p><b>
34、; while(1)</b></p><p><b> {</b></p><p> CLR_WDT();</p><p> AD_Data = ADC_Get();</p><p> AD_Result = ((float)AD_Data/0xffc0)*4.0;</p><p
35、> DispFloat(AD_Result);</p><p><b> }</b></p><p><b> }</b></p><p> #define P_INT_Ctrl(unsigned int*)0x7010// 硬件端口定義</p><p> #define P_I
36、NT_Clear(unsigned int*)0x7011// 硬件端口定義</p><p> #define C_IRQ4_4KHz0x0040// 常數(shù)助記符定義</p><p> void IRQ4(void)__attribute__((ISR));// 將IRQ4函數(shù)聲明為中斷服務(wù)函數(shù)/ 語法格式:void IRQ4(void)<
37、/p><p> 實現(xiàn)功能:IRQ4中斷服務(wù)函數(shù),用于LED數(shù)碼管驅(qū)動</p><p><b> 參數(shù):無</b></p><p><b> 返回值:無</b></p><p> void IRQ4(void)// IRQ4函數(shù)體</p><p>
38、<b> {</b></p><p> if((*P_INT_Ctrl&C_IRQ4_4KHz)!=0x0000)// 如果是4KHz中斷</p><p><b> {</b></p><p> *P_INT_Clear = C_IRQ4_4KHz;// 清中斷標志位</p><
39、p> DIG_Drive();</p><p><b> }</b></p><p><b> }</b></p><p><b> (2)頂頭文件</b></p><p> void ADC_Init(void);</p><p>
40、unsigned int ADC_Get(void);</p><p><b> #endif;</b></p><p><b> 實驗顯示結(jié)果:</b></p><p><b> 3.2 可擴展題目</b></p><p> 3.2.1、功能描述: </p>
41、;<p> 1)、改進為兩路電壓數(shù)據(jù)采集; </p><p> 2)、用61板的KEY1與KEY2切換采集通道; </p><p> 3)、按下KEY3鍵語音播報當(dāng)前電壓值。 </p><p> 3.2.2、方案論證: </p><p> 1)、多路AD采集; </p><p> 2)、61板
42、播放語音; </p><p><b> 3)、按鍵掃描. </b></p><p><b> 第四章.總結(jié)</b></p><p> 1.電壓測量通過不同的接口電路可實現(xiàn)溫度、濕度、壓力等測量,廣泛應(yīng)用于工業(yè)領(lǐng)域。本電路設(shè)計別具一格,是一種高精度、低功耗、寬量程、智能化的電壓表??蓴U展鍵盤、報警電路,實現(xiàn)電壓異常記錄
43、、報警。但在實驗過程中由于沒有LCD顯示器,沒有實現(xiàn)帶播報電壓語音和在LCD液晶屏顯示電壓數(shù)據(jù)的結(jié)果,用LED顯示缺一個插口,不能同時實現(xiàn)語音播報和數(shù)字顯示。</p><p><b> 2.心得體會</b></p><p> 經(jīng)過半個月的單片機課程設(shè)計我認識到61板的作用以及它能實現(xiàn)的功能,但是我覺得自己所學(xué)的基礎(chǔ)知識還不是很踏實,有些問題自己還解決不了,需要老師
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計-數(shù)字電壓表
- 單片機課程設(shè)計---數(shù)字電壓表
- 單片機課程設(shè)計-數(shù)字電壓表
- 單片機(數(shù)字電壓表)課程設(shè)計
- 單片機課程設(shè)計----數(shù)字電壓表
- 單片機課程設(shè)計-數(shù)字電壓表
- 單片機課程設(shè)計--數(shù)字電壓表
- 單片機課程設(shè)計--數(shù)字電壓表
- 單片機課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機課程設(shè)計---數(shù)字電壓表設(shè)計
- 單片機課程設(shè)計--簡易數(shù)字電壓表
- 單片機(數(shù)字電壓表)課程設(shè)計.rar
- 單片機課程設(shè)計數(shù)字電壓表
- 單片機數(shù)字電壓表課程設(shè)計.doc
- 單片機(數(shù)字電壓表)課程設(shè)計.rar
- 單片機(數(shù)字電壓表)課程設(shè)計.rar
- 單片機課程設(shè)計報告——數(shù)字電壓表
- 課程設(shè)計----單片機簡易數(shù)字電壓表
- 單片機(數(shù)字電壓表)課程設(shè)計.rar
評論
0/150
提交評論