




已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
湖北經(jīng)濟學院 洪艷 何文斌 劉誠所在學校:XX學生姓名:XX輔導老師:XX設計時間:2010.7.16“簡易數(shù)控直流電源”的設計要求一 設計任務設計出有一定輸出電壓范圍和功能的數(shù)控電源。其原理示意圖如下:輸 出 電 路數(shù) 控 部 分“+” “-” 鍵數(shù) 字 顯 示 +5V -15V +15V自 制 穩(wěn) 壓 電 源 220V二 設計要求1)基本要求(1)輸出電壓:范圍09.9V,步進0.1V,紋波不大于10mV;(2)輸出電流:500mA;(3)輸出電壓值由數(shù)碼管顯示;(4)由“”、“”兩鍵分別控制輸出電壓步進增減;(5)為實現(xiàn)上述幾部件工作,自制一穩(wěn)壓直流電源,輸出15V,5V。2)發(fā)揮部分(1)輸出電壓可預置在09.9V之間的任意一個值;(2)用自動掃描代替人工按鍵,實現(xiàn)輸出電壓變化(步進0.1V不變); (3)擴展輸出電壓種類(比如三角波等)三 評分意見項 目滿 分基本要求方案設計和論證、理論計算與分析、電路圖30實際完成情況50總結報告20發(fā)揮部分完成第(1)項5完成第(2)項15完成第(3)項20簡易數(shù)控直流電源的設計摘要:本設計以TI的超低功耗的16單片機MSP430F149作為微控制器,利用TIMEER_A的PWM調(diào)制來改變輸出電壓的幅度,通過4*4的矩陣鍵盤控制輸出電壓的值,輸出的電壓值可以在七段數(shù)碼管上顯示出來。再配置相應的集成運放電路來達到電壓由09.9V的變化。關鍵詞:MSP430F149、PWM、矩陣鍵盤、LED顯示一、 方案設計與論證1、 總體方案設計通過分析實驗要求,可知道電路的整體框圖如下圖一所示:鍵盤數(shù)控部分輸出電路 數(shù)字顯示圖1簡易數(shù)控直流穩(wěn)壓電源框圖其中鍵盤用于實現(xiàn)信號的輸入以及實現(xiàn)對輸入信號的加、減、清零、置數(shù)的功能;顯示部分則實現(xiàn)對輸出電壓的顯示;數(shù)控部分則通過程序以及硬件的協(xié)同作用,實現(xiàn)對輸入信號的該變;輸出電路則將數(shù)控部分輸出的數(shù)字信號轉(zhuǎn)化為模擬信號,輸出一個穩(wěn)定的輸出電壓。1、 方案一(如圖2所示)此方案的控制部分采用FPGA開發(fā)板,通過VHDL語言來進行控制,輸出部分通過DAC0832來進行D/A轉(zhuǎn)換之后,通過穩(wěn)壓、限流電路來控制輸出電壓達到實驗的要求,再通過A/D轉(zhuǎn)換電路來實現(xiàn)輸出電壓的顯示。顯示A/D轉(zhuǎn)換FPGA開發(fā)板鍵 盤穩(wěn)壓限流電路D/A轉(zhuǎn)換顯 示輸出 圖2 方案一電路框圖 2、 方案二(如圖3所示)此方案采用MSP430F149為微控制器,通過定時器_A的PWM調(diào)制來實現(xiàn)D/A轉(zhuǎn)換,再通過穩(wěn)壓、限流電路來控制輸出電壓達到實驗要求,再通過A/D轉(zhuǎn)換來實現(xiàn)輸出電壓值的顯示。顯示A/D轉(zhuǎn)換 MSP430F149鍵 盤穩(wěn)壓限流電路顯 示輸出 圖3 方案二電路框圖3、 方案比較 分析以上兩個方案,發(fā)現(xiàn)其各有優(yōu)點,但是顯然方案二具有更加的優(yōu)越性。不僅外部電路簡單,而且可以方便實現(xiàn)人性化很強的人機界面(鍵盤輸入和數(shù)碼管輸出)。與方案一相比,方案二在實現(xiàn)設計要求上有著很大的優(yōu)越性:不需要外接D/A轉(zhuǎn)換芯片;不需要復雜的參考電壓產(chǎn)生電路;不需要外接總線驅(qū)動就可以方便實現(xiàn)鍵盤和數(shù)碼管顯示;MSP430F149內(nèi)部有足夠的存儲空間,足以存儲程序和顯示所需要的漢字字模,不需要擴展存儲;MSP430F149有多種低功耗工作模式,通過合理的程序控制可以方便實現(xiàn)低功耗運行。MSP430F149內(nèi)部有16位的硬件乘法器,可以快速實現(xiàn)乘法運算;MSP430F149使用的指令簡單,只有27條指令,指令周期短,數(shù)值計算能力強大。鑒于以上種種優(yōu)點,我們最終選擇了MSP430F1494單片機作為我們的控制中心,并且采用了第二種方案來實現(xiàn)設計的要求。2、 工作原理及電路設計1、 工作原理PWM信號是一種具有固定周期不定占空比的數(shù)字信號,占空比可調(diào)的數(shù)字信號(如圖所示)。如果PWM 信號的占空比隨時間變化,那么通過濾波之后的輸出信號將是幅度變化的模擬信號。因此通過控制PWM 信號的占空比就可以產(chǎn)生不同的模擬信號。如圖4所示:不同的占空比 圖4 PWM波形示例 MSP430F149 的Timer_A和Timer_B工作在比較模式時可以輸出PWM信號。MSP430F149 的Timer_A和Timer_B,有四種工作模式(停止、增計數(shù)、連續(xù)計數(shù)、增減計數(shù)),計數(shù)器的時鐘源可選,有多個可配置輸入端的捕獲/比較寄存器,有多種可選的輸出模式。它們支持同時進行的多種時序控制,多個捕獲/比較功能及多種輸出波形(PWM波形)。Timer各部分的功能選擇通過寄存器(TACTL 控制寄存器、CCTLx捕獲比較控制寄存器、CCRx捕獲/比較寄存器、TAIV中斷向量寄存器)控制。要想讓Timer工作在特定的模式下,只需要在相應的寄存器中寫入相應的控制字。 如果定時器中的計時器工作在增計數(shù)模式,輸出選用7模式(復位/置位模式),則定時器中的寄存器CCR0用來控制輸出PWM波形的周期T, 而與定時器對應的CCRx 寄存器來控制可變占空比。PWM 信號經(jīng)過濾波器后,一個PWM 信號周期 T 對應一個抽樣值,所以輸出信號的頻率Fx與該信號每個周期的采樣數(shù)N及PWM 信號周期T有關。它們之間存在以下關系: Fx=1/(T*N) (1) 其中的 T 與 CCRO、計數(shù)器的計數(shù)頻率 Fs 有關: T= CCRO/ Fs (2) 所以, Fx=1/(CCRO/ Fs) N=Fs/(CCRO*N) (3)2、 電路框圖數(shù)碼管顯示輸出P4M S P 4 3 0 P34*4鍵盤放大、穩(wěn)壓、限流電路濾波電 路TA P1.2圖5 總體電路框圖MSP430F149具有很多的輸入輸出端口,可以外接很多的部件,鍵盤、七段數(shù)碼管可以直接的接在不同的I/O口。利用定時器A輸出PWM波形,只要直接利用放大、穩(wěn)壓、限流電路來對電壓進行放大以及對輸出電流的限制。使最后輸出的電壓能夠滿足在0-9.9V直接穩(wěn)定的變化。3、 單元電路設計1、 鍵盤以及顯示電路 由于對電路要實行清零、置數(shù)、加數(shù)、減數(shù)的控制,因此需要一個4*4的矩陣鍵盤,通過軟件對不同的按鈕設置不同的功能。該鍵盤的電路如圖6所示: 圖6 矩陣鍵盤電路其中“/”鍵實現(xiàn)的是減一;“”鍵實現(xiàn)的是加一;“”鍵實現(xiàn)的是減十;“+”鍵實現(xiàn)的是加十;“=”鍵實現(xiàn)的是置數(shù);“on/c”鍵實現(xiàn)的是清零;數(shù)字鍵用于在置數(shù)的時候使用。七段數(shù)碼管實現(xiàn)的是對鍵盤控制的數(shù)字進行顯示。其電路如7所示: 圖7 氣短數(shù)碼管顯示電路PWM輸出電路是通過程序來控制脈沖的占空比,從而通過電容的充放電來使輸出的電壓為一個連續(xù)變化的模擬量,該電路如圖8所示:圖8 輸出電路2、 放大、穩(wěn)壓以及限流電路由于輸出的電壓只有04.95V,不能滿足實驗的要求,所以需要對輸出的電壓進行放大、穩(wěn)定,在放大的過程中由于輸出的電流很大,則需要進一步對電流的大小進行限定,以防止元器件被燒壞。該電路圖如圖9所示:圖9 放大、穩(wěn)壓以及限流電路4、 軟件設計通過單片機實現(xiàn)對矩陣鍵盤、脈沖寬度以及七段數(shù)碼管的控制,通過鍵盤來控制數(shù)碼管顯示的值以及改變脈沖的占空比,使輸出的電壓發(fā)生變化。其中鍵盤掃描程序的流程圖如附錄1所示,源程序如附錄2所示。仿真的電路圖如附錄3所示。5、 測量結果鍵盤輸入數(shù)碼管顯示穩(wěn)壓電路輸出Uo穩(wěn)壓電路輸出Uo理論值絕對誤差999.99.9 V9.9 V0 V909.09 V9 V0 V808.08.05 V8 V0.05 V707.07.03 V7 V0.03 V606.06.02 V6 V0.02 V505.05 V5 V0 V404.04 V4 V0 V303.03 V3 V0 V202.01.98 V2 V-0.02 V101.00.99 V1 V-0.01 V000.00 .02V0 V0.02 V6、 參考文獻1、 沈建華,楊艷琴 ;MSP430系列16位超低功耗單片機原理與實踐 ; 北京航空航天大學出版社 ;20082、 曹磊 ;MSP430單片機C程序設計與實踐 ;北京航空航天大學出版社 ;2007附錄1:附錄2:#includeunsigned char LineScan4=0xef,0xdf,0xbf,0x7f; /列值列舉unsigned char Seg= /七段數(shù)碼管表 0x00,0x01,0x02,0x03, 0x04,0x05,0x06,0x07, 0x08,0x09,0x0a,0x0b, 0x0c,0x0d,0x0e,0x0f;unsigned int Pwm=0;unsigned int m,n;unsigned int flag_set=0;unsigned int flag_ten=0;void Delay(unsigned int wDelay) /延時子程序 while(wDelay!=0) wDelay-;unsigned int key_check(void) /檢測是否有按鍵按下 unsigned char temp; P3DIR=0xf0; /定義P1.4P1.7為輸出 temp=P3IN & 0x0f; if(temp!=0x0f) return 1; else return 0; void Clear() Pwm=0; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; CCR1=0;void NumSet() /置數(shù)鍵“=”子程序 flag_set=1;void NumAdd1() /加一鍵“”子程序 if(Pwm=99) Pwm=Pwm-1; CCR1=CCR1-2; Pwm=Pwm+1; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; CCR1=CCR1+2; void NumAdd10() /加十鍵“+”子程序 if(Pwm=89) Pwm=Pwm-10; CCR1-=20; Pwm=Pwm+10; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; CCR1=CCR1+20;void NumSub1() /減一鍵“”子程序 if(Pwm=0) Pwm=Pwm+2; CCR1=CCR1+10; Pwm=Pwm-1; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; CCR1=CCR1-2;void NumSub10() /減十鍵“”子程序 if(Pwm=0) Pwm=Pwm+10; CCR1=CCR1+20; Pwm=Pwm-10; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; CCR1=CCR1-20;void Num0() /按鍵“0”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=0*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+0; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num1() /按鍵“1”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=1*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+1; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num2() /按鍵“2”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=2*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+2; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num3() /按鍵“3”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=3*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+3; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num4() /按鍵“4”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=4*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+4; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num5() /按鍵“5”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=5*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+5; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num6() /按鍵“6”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=6*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+6; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_set=0; CCR1=Pwm*2-2; void Num7() /按鍵“7”子程序 if(flag_set=1) flag_ten +=1; if(flag_ten % 2=1) Pwm=7*10+n; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; else Pwm=m*10+7; m=Pwm/10; n=Pwm%10; Delay(65535); P4OUT = Segm*16+Segn; flag_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高校教師提升學業(yè)評價素養(yǎng)的策略及實施路徑
- 2025年移動應用程序開發(fā)與設計考試試題及答案
- 2025年文化產(chǎn)業(yè)管理專業(yè)畢業(yè)生考試試題及答案
- 2025年社會政策與社會保障專業(yè)知識測試卷及答案
- 2025年金融分析師職業(yè)資格考試試卷及答案
- 2025年計算機網(wǎng)絡安全考試試題及答案
- 2025年供應鏈金融與風險控制的綜合能力考試題及答案
- 特價餐具倉庫管理制度
- 特殊手術麻醉管理制度
- 特殊環(huán)節(jié)瓦斯管理制度
- 2024年煙臺市煙臺山醫(yī)院招聘考試真題
- 酒店前臺培訓內(nèi)容
- 國開本科《人文英語3》期末機考總題庫及答案
- 高中數(shù)學復習 導數(shù)壓軸大題歸類 (原卷版)
- 馬詩聽評課記錄范文
- 國家開放大學法律事務??啤睹穹▽W(2)》期末紙質(zhì)考試總題庫2025春期考試版
- 定額〔2025〕3號文-關于發(fā)布2023版西藏地區(qū)電網(wǎng)工程概預算定額價格水平調(diào)整的通知
- 《現(xiàn)場改善案例集》課件
- 醫(yī)院結核感染培訓
- 臨床心內(nèi)科主任競聘稿
- 電動工器具安全使用培訓
評論
0/150
提交評論