【正文】
電路模塊、三端穩(wěn)壓器模塊、LCD1602液晶顯示模塊、獨立鍵盤模塊、數(shù)模轉(zhuǎn)換模塊、電壓同向放大模塊和功率放大模塊組成。關(guān)鍵詞:智能穩(wěn)壓電源 單片機 數(shù)控 連續(xù)可調(diào)步進IIIIntelligent Power Design Based on MCU AbstractPower technology is a very practical, widely used in all walks of engineering, teaching often requires the use of experimental power supply for the circuit to provide energy. In the rapid development of power electronics technology today, we voltage stability and accuracy have put forward higher requirements. This paper presents the hardware design and softwarebased intelligent power supply STC12C5A60S2 simulation debugging, to make up for the shortings of traditional regulated power supply. The design of the transformer module, rectifier module, threeterminal voltage regulator module, LCD1602 LCD module, independent of the keyboard module, digital to analog conversion module, the voltage with the amplifier module and power amplifier module. Voltage range of DC voltage 0V12V, continuously adjustable in steps of 177。 Numerical Control。直流穩(wěn)壓電大多數(shù)應用在研究教學方面,出此之外,還廣泛應用在科研開發(fā)、實驗探究這一系列研究領(lǐng)域,而且直流穩(wěn)壓電源還是電子電路中最基礎(chǔ)的供電元件,同時還是電子技術(shù)中常見的儀表設(shè)備。單片機穩(wěn)壓電源擁有低廉的價格、元件常見性、原料低價格、簡單的功能結(jié)構(gòu)、清晰直觀的顯示信息等特點,基于單片機的穩(wěn)壓源電路采用了先進的數(shù)字顯示技術(shù),具有很牢固的可靠性和穩(wěn)定性。隨著生產(chǎn)力的進一步發(fā)展,電子電源技術(shù)其產(chǎn)品存在缺陷如智能化程度不高、功率密度達不到要求、分辨率太低、可穩(wěn)壓電源的發(fā)展靠性等日益突出。節(jié)能環(huán)保作為21世紀新主題,要求電子電源技術(shù)達到低功耗、高效率的要求,由于電信和數(shù)據(jù)通訊設(shè)備的更新,促進電源產(chǎn)業(yè)向高智能化、高效率方向成長。 研究方法及內(nèi)容本設(shè)計研究的是數(shù)控智能穩(wěn)壓電源,設(shè)計體現(xiàn)出了智能化、模塊化還有數(shù)字化的工作特點。模塊化是由系統(tǒng)各個模塊組合工作,提高了系統(tǒng)整體的可靠性。本系統(tǒng)將采用了LM791LM7815作為系統(tǒng)供電的穩(wěn)壓模塊,為了是確保各個芯片都能在其額定電壓下工作,使輸出更加精確。本文共分五章,第一章主要介紹了該課題研究的背景和意義,國內(nèi)外目前的發(fā)展狀況以及本課題研究的主要內(nèi)容;第二章給出了系統(tǒng)流程框圖,介紹本設(shè)計的設(shè)計原理;第三章將系統(tǒng)的硬件設(shè)計分為七個模塊進行分析;第四章為軟件的編程與調(diào)試;第五章為系統(tǒng)軟件仿真及硬件調(diào)試結(jié)果;最后對畢業(yè)設(shè)計進行總結(jié)。177。運放電路接入的是OPA541AP功率運放芯片,此芯片可以帶較大功率的負載。 系統(tǒng)供電電源介紹從電網(wǎng)處獲得的電壓為50HZ 220V交流電,經(jīng)過變壓器變壓后輸出177。在后期由于輸出電路模塊芯片和STC單片機都需要穩(wěn)定的直流電壓驅(qū)動,因此在濾波電路之后還需要加入穩(wěn)壓電源部分,這樣的直流輸出才能更好的使用在對直流供電要求較高的電路。15V電壓電路,輸出的177。在主控制電路中包括STC12C5A60S2正常工作的基本電路:晶振電路和復位電路,還有4個按鍵,分別為設(shè)置步進177。、時鐘脈沖發(fā)射端和串行數(shù)據(jù)輸入端。由于芯片太小,所以在設(shè)計電路的時候必須對芯片進行管腳擴展,將芯片改裝成DIP封裝形式,方便在電路板上焊接。但單片機一次只能傳輸8位的數(shù)據(jù),所以在一個周期內(nèi),必須要用8個時鐘周期的低電平將數(shù)據(jù)傳輸?shù)紻AC7512。因此也在網(wǎng)上尋找了許多關(guān)于液晶顯示和數(shù)碼管顯示的各個優(yōu)點。但1602有一個致命的弱點就是正常工作的溫度范圍很窄,通常只有055攝氏度。在單片機的系統(tǒng)中使用液晶器件有以下幾個優(yōu)點:顯示的質(zhì)量高,由于液晶顯示的每一個點在接收到信號后會一直保持那種色彩和亮度,不需要一直不斷的刷新,所以也就不會閃爍且畫質(zhì)好。1602LCD主要技術(shù)參數(shù):顯示容量為162個字符芯片的正常工作電壓為:—。第2管腳:VDD接正5V電源,目的是為整個芯片的正常工作提供電壓。當為高電平時進行讀操作,而低電平時進行寫操作。第7~14管腳:D0~D7為8位雙向I/O口數(shù)據(jù)線。15V的開關(guān)電源,因為穩(wěn)壓電源需外帶負載,所以單純依靠穩(wěn)壓電路供電是遠遠不夠的。當按下按鍵的時候,電路導通,電容兩端形成一回路,電容開始放電,RST引腳變?yōu)楦唠娖剑瑔纹瑱C重新運行。 系統(tǒng)運行整體流程圖鍵盤程序的主要任務(wù)是判斷按鍵有無按下,如果按鍵按下則執(zhí)行與之相對應的程序。獨立鍵盤還需要消抖處理,我們使用的按鍵按下都是機械動作,只有在按鍵被按下后被彈起的瞬間電壓才會產(chǎn)生鍵抖動。 系統(tǒng)按鍵程序流程圖 液晶顯示流程在本設(shè)計的顯示電路的軟件設(shè)計中,首先需要對LCD1602液晶進行初始化操作,首先需將LCD屏幕設(shè)置為16X2的顯示方式,點陣的模式為五行七列和八位的數(shù)據(jù)接口的顯示,每寫一句指令都需要對LCD屏幕進行適當?shù)难訒r操作,否則在屏幕會出現(xiàn)亂碼,接在設(shè)置屏幕的光標顯示模式,在本設(shè)計中我們設(shè)置為開顯示,但是不顯示光標,而且也不讓光標閃爍。在液晶屏幕的D7端口即為判忙端口,當D7為一是屏幕忙碌,我們此時不可向?qū)懭霐?shù)據(jù)否則會導致數(shù)據(jù)的丟失,當D7為零時可以寫入數(shù)據(jù)。 系統(tǒng)LCD程序流程圖 DA驅(qū)動和線性化調(diào)整因本設(shè)計中采用的是12位精度的數(shù)模轉(zhuǎn)換器,所以單片機程序中的輸入口參數(shù)必須要小于2^12即4096,其中4096對應著5V電壓的大小。首先設(shè)置輔助傳輸參數(shù)DIN,DIN等于DA與0X80的與運算,這樣可以取出最高位,然后DA進行左移一位,將次高位變成最高位,當一個時鐘高脈沖產(chǎn)生時,會傳輸一位數(shù)據(jù),經(jīng)過多次循環(huán)就可以完成所有數(shù)據(jù)的傳輸。首先用Keil軟件對各個模塊的子程序進行編寫,再對各個模塊的子程序進行修改調(diào)試,在調(diào)試的過程中針對遇到的問題再進行不斷改進完善。圖51 程序下載助手然后在Protues把各部分電路圖連接好。然后考慮到制作PCB板時間較長以及PCB板上所有的元器件的封裝都是貼片式的,焊接起來比較麻煩等等。焊接完了以后,再次用萬用表確認一下你所焊接的電路板有沒有存在短路、斷路以及走線上的錯誤等瑕疵。確認好了以后,單片機開始工作。之所以存在著誤差可能是由于在接線上各個元器件有干擾,數(shù)模轉(zhuǎn)換器的靈敏度不高以及變壓器的輸入不太穩(wěn)定等等,這些都是造成系統(tǒng)穩(wěn)壓源的設(shè)定值與實際值存在誤差的原因。文章對此新型穩(wěn)壓電源方案的硬件電路和軟件設(shè)計部分均做出了詳盡細致的討論和說明。電源的電能轉(zhuǎn)換效率有待提高。uint dac_out=0,set_v_old=10。 /*主函數(shù)*/void main(){ uint i。 key_check()。 } else { DAL=dat%256。 while(i2) { if(i1) { DA=DAH。j)//發(fā)送8位 發(fā)送順序從低到高 { DIN=(DAamp。 //dac7512 時鐘端 SCLK=0。 if(!key_set) { if(EA_SET_TIME==0) { lcd1602_clr()。 } else { if (set_pos==0x47) set_pos=0x49。 } display()。 } } if(!key_add) { delay_1ms(20)。if(set_v1200)set_v=1200。 if(set_v1200)set_v=1200。 delay_1ms(20)。(EA_SET_TIME==1)) { if(set_pos==0x47) {if(set_v=100)set_v=100。 delay_1ms(20)。 if(!key_ent) { lcd1602_clr()。 delay_1ms(20)。//BYTE code wl_dis2[] = {}。 i++) { _nop_()。 } }}/*測試液晶是否忙