按鍵控制單片機(jī)PWM輸出設(shè)計_第1頁
按鍵控制單片機(jī)PWM輸出設(shè)計_第2頁
按鍵控制單片機(jī)PWM輸出設(shè)計_第3頁
按鍵控制單片機(jī)PWM輸出設(shè)計_第4頁
按鍵控制單片機(jī)PWM輸出設(shè)計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、學(xué)號1322010110天津城建大學(xué)單片機(jī)原理及應(yīng)用A課程按鍵控制單片機(jī)PWM輸出設(shè)計起止日期:2016年05月30日至2016年6月10日學(xué)生姓名班級成績指導(dǎo)教師(簽字)控制與機(jī)械工程學(xué)院2016年6月10日第一章系統(tǒng)方案設(shè)計11.1 PWM11.2 STC12C5A60S2IW介11.3 仿真工具介紹21.3.1 Protues簡介21.3.2 KeiluVision3簡介4第二章硬件電路設(shè)計52.1 復(fù)位電路52.2 時鐘電路52.3 按鍵中斷52.4 顯示電路6第三章程序設(shè)計流程圖7第四章系統(tǒng)仿真84.1 仿真圖84.2 程序84.3 PCB錯誤!未定義書簽。參考資料錯誤!未定義書簽。

2、第一章系統(tǒng)方案設(shè)計1.1 PWMPWM勺全稱是PulseWidthModulation(脈沖寬度調(diào)制),它是通過改變輸出方波的占空比來改變等效的輸出電壓。1.2 STC12C5A60S2簡介STC12C5A60S混STC生產(chǎn)的單時鐘/機(jī)器周期(1T)的單片機(jī),是高速、低功耗、超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810用復(fù)位電路,2路PWM8路高速10位A/D轉(zhuǎn)換,針對電機(jī)控制,強(qiáng)干擾場合。1.3 腳說明:1、P0.0P0.7P0:P0口既可以作為輸入/輸出口,也可以作為地址/數(shù)據(jù)復(fù)用總線使用。當(dāng)P0口作為輸入/輸出口時,P0是一個8

3、位準(zhǔn)雙向口,內(nèi)部有弱上拉電阻,無需外接上拉電阻。當(dāng)P0作為地址/數(shù)據(jù)復(fù)用總線使用時,是低8位地址線A0A7,數(shù)據(jù)線D0D72、P1.0/ADC0/CLKOUT2標(biāo)準(zhǔn)IO口、ADC俞入通道0、獨立波特率發(fā)生器的時鐘輸出3、P1.1/ADC14、P1.2/ADC2/ECI/RxD2標(biāo)準(zhǔn)IO口、ADC俞入通道2、PCA計數(shù)器的外部脈沖輸入腳,第二串口數(shù)據(jù)接收端5、P1.3/ADC3/CCP0/TxD2外部信號捕獲,高速脈沖輸出及脈寬調(diào)制輸出、第二串口數(shù)據(jù)發(fā)送端6、P1.4/ADC4/CCP1/SS非SPI同步串行接口的從機(jī)選擇信號7、P1.5/ADC5/MOSISPI同步串行接口的主出從入(主器件的

4、輸入和從器件的輸出)8、P1.6/ADC7/SCLKSPI同步串行接口的主入從出9、P2.0P2.710、P2口內(nèi)部有上拉電阻,既可作為輸入輸出口(8位準(zhǔn)雙向口),也可作為高8位地址總線使用。11、P3.0/RxD標(biāo)準(zhǔn)IO口、串口1數(shù)據(jù)接收端12、P3.1/INT0非外部中斷0,下降沿中斷或低電平中斷13、P3.3/INT114、P3.4/T0/INT非/CLKOUT0定時器計數(shù)器0外部輸入、定時器0下降沿中斷、定時計數(shù)器0的時鐘輸出2)A/D轉(zhuǎn)換器的結(jié)構(gòu):STC12C5A60AD/S源歹U帶A/D轉(zhuǎn)換的單片機(jī)的A/D轉(zhuǎn)換口在P1口,有8路10位高速A/D轉(zhuǎn)換器,速度可達(dá)到250KHz(25萬

5、次/秒)。8路電壓車入型A/D,可做溫度檢測、電池電壓檢測、按鍵掃描、頻譜檢測等。上電復(fù)位后P1口為弱上拉型IO口,用戶可以通過軟件設(shè)置將8路中的任何一路設(shè)置為A/D轉(zhuǎn)換,不須作為A/D使用的口可繼續(xù)作為IO口使用。單片機(jī)ADC由多路開關(guān)、比較器、逐次比較寄存器、10位DAC轉(zhuǎn)換結(jié)果寄存器以及ADC_CONTER構(gòu)成。該單片機(jī)的ADC是逐次比較型ADC主次比較型ADC由一個比較器和D/A轉(zhuǎn)換器構(gòu)成,通過逐次比較邏輯,從最高位(MSB)開始,順序地對每一輸入電壓與內(nèi)置D/A轉(zhuǎn)換器輸出進(jìn)行比較,經(jīng)過多次比較,使轉(zhuǎn)換所得的數(shù)字量逐次逼近輸入模擬量對應(yīng)值。逐次比較型A/D轉(zhuǎn)換器具有速度高,功耗低等優(yōu)點

6、。需作為AD使用的口先將P1ASF特殊功能寄存器中的相應(yīng)位置為'1',將相應(yīng)的口設(shè)置為模擬功能。STC12C5A60S2I腳圖如圖1所示。CLKDUT2/ADC0.PI0二ADCl?lICZRxDH<rAIX'?lTxDlCTPQ/ADC3?P13=SiCPPl/ADC4Pl41MOSI/ADC5PI5匚MISO/ADC6/P1.6EZSCLK/ADC71.7匚P4.7RS匚二iNrrRiBmo匚TxD陰1匚INT0.P3.2ErJffrrip$,r"fTxnirmffNTyTWP4iClXOLim-PTiPJEU阪內(nèi)e匚RDP37=XTALlUXTAL

7、1UGfid1-093765431-10997654321433333333311-2TI一一,H1,J2二1宣ZZIPODOP0111Pfl7一JV.一Z3P03二)年4POS二1加6ZZ1P07IE!fLVD,T4*RST2ALETJ5ZZ1NA74.4二27AISZZIP2.6A14二JP25八13ZZI?2.4A12二門歹4n二IP22A10二門IA5ZZIP20AB圖1STC12C5A60引腳圖1.3仿真工具介紹1.3.1 Protues簡介Protues軟件是英國Labcenterelectronics公司出版的EDA工具軟件。它不僅具有其它EDAX具軟件的仿真功能,還能仿真單片機(jī)

8、及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國內(nèi)推廣剛起步,但已受到單片機(jī)愛好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開發(fā)應(yīng)用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、PC酸計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVRARM8086和MSP43湃,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處

9、理器模型。在編譯方面,它也支持IAR、Keil和MPLA旁多種編譯。Protues軟件具有其它EDAX具軟件(例:multisim)的功能。這些功能是:(1)原理布圖(2) PCB自動或人工布線(3) SPICE電路仿真革命性的特點:(1)互動的電路仿真。用戶甚至可以實時采用諸如RAMROM鍵盤,馬達(dá),LED,LCDAD/DA部分SPI器件,部分IIC器件。(2)仿真處理器及其外圍電路??梢苑抡?1系列、AVRPIC、ARM等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Protues建立了完備的電

10、子設(shè)計開發(fā)環(huán)境。Protues具有4大功能模塊:1)智能原理圖設(shè)計(ISIS)豐富的器件庫:超過27000種元器件,可方便地創(chuàng)建新元件;智能的器件搜索:通過模糊搜索可以快速定位所需要的器件;智能化的連線功能:自動連線功能使連接導(dǎo)線簡單快捷,大大縮短繪圖時間;支持總線結(jié)構(gòu):使用總線器件和總線布線使電路設(shè)計簡明清晰;可輸出高質(zhì)量圖紙:通過個性化設(shè)置,可以生成印刷質(zhì)量的BMP©紙,可以方便地供WORDPOWERPOINT多種文檔使用。2)完善的電路仿真功能(Prospice)ProSPICE混合仿真:基于工業(yè)標(biāo)準(zhǔn)SPICE3F5,實現(xiàn)數(shù)字/模擬電路的混合仿真;超過27000個仿真器件:可以

11、通過內(nèi)部原型或使用廠家的SPICE文件自行設(shè)計仿真器件,Labcenter也在不斷地發(fā)布新的仿真器件,還可導(dǎo)入第三方發(fā)布的仿真器件;多樣的激勵源:包括直流、正弦、脈沖、分段線性脈沖、音頻(使用wav文件)、指數(shù)信號、單頻FM數(shù)字時鐘和碼流,還支持文件形式的信號輸入;豐富的虛擬儀器:13種虛擬儀器,面板操作逼真,如示波器、邏輯分析儀、信號發(fā)生器、直流電壓/電流表、交流電壓/電流表、數(shù)字圖案發(fā)生器、頻率計/計數(shù)器、邏輯探頭、虛擬終端、SPI調(diào)試器、I2C調(diào)試器等;生動的仿真顯示:用色點顯示引腳的數(shù)字電平,導(dǎo)線以不同顏色表示其對地電壓大小,結(jié)合動態(tài)器件(如電機(jī)、顯示器件、按鈕)的使用可以使仿真更加直

12、觀、生動;高級圖形仿真功能(ASF):基于圖標(biāo)的分析可以精確分析電路的多項指標(biāo),包括工作點、瞬態(tài)特性、頻率特性、傳輸特性、噪聲、失真、傅立葉頻譜分析等,還可以進(jìn)行一致性分析。3)獨特的單片機(jī)協(xié)同仿真功能(VSM支持主流的CPU型:如ARM78051/52、AVRPIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11BasicStamp、8086、MSP430=?,CPU1型隨著版本升級還在繼續(xù)增加,如即將支持CORTEXDSP處理器;支持通用外設(shè)模型:如字符LCD模塊、圖形LCD模塊、LED點陣、LED七段顯示模塊、鍵盤/按鍵、直流/步進(jìn)/伺服電機(jī)、RS232虛擬終端、

13、電子溫度計等等,其COMPIM(COMH物理接口模型)還可以使仿真電路通過PC機(jī)串口和外部電路實現(xiàn)雙向異步串行通信;實時仿真:支持UART/USART/EUSARTs仿真、中斷仿真、SPI/I2C仿真、MSSFPM、PSP仿真、RTC仿真、ADC仿真、CCP/ECC肪真。冰編譯及調(diào)試:支持單片機(jī)匯編語言的編輯/編譯/源碼級仿真,內(nèi)帶8051、AVRPIC的匯編編譯器,也可以與第三方集成編譯環(huán)境(如IAR、Keil和Hitech)結(jié)合,進(jìn)行高級語言的源碼級仿真和調(diào)試。4)實用的PC酸計平臺原理圖到PCB的快速通道:原理圖設(shè)計完成后,一鍵便可進(jìn)入ARES勺PCB設(shè)計環(huán)境,實現(xiàn)從概念到產(chǎn)品的完整設(shè)計

14、;派先進(jìn)的自動布局/布線功能:支持器件的自動/人工布局;支持無網(wǎng)格自動布線或人工布線;支持引腳交換/門交換功能使PCB設(shè)計更為合理;完整的PCB設(shè)計功能:最多可設(shè)計16個銅箔層,2個絲印層,4個機(jī)械層(含板邊),靈活的布線策略供用戶設(shè)置,自動設(shè)計規(guī)則檢查,3D可視化預(yù)覽;X多種輸出格式的支持:可以輸出多種格式文件,包才Gerber文件的導(dǎo)入或?qū)С?,便利與其它PC酸計工具的互轉(zhuǎn)(如protel)和PC時的設(shè)計和加工。5)Protues提供了豐富的資源30(1) Protues可提供的仿真元器件資源:仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,有多個元件庫。(2) Protues可提供的仿真儀表資源

15、:示波器、邏輯分析儀、虛擬終端、SPI調(diào)試器、I2C調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、交直流電流表。理論上同一種儀器可以在一個電路中隨意的調(diào)用。(3)除了現(xiàn)實存在的儀器外,Protues還提供了一個圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來,其作用與示波器相似,但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能減少了儀器對測量結(jié)果的影響。(4)Protues可提供的調(diào)試手段Protues提供了比較豐富的測試信號用于電路的測試。這些測試信號包括模擬信號和數(shù)字信號。Protues電路功能仿真:在PROTUE繪制好原理圖

16、后,調(diào)入已編譯好的目標(biāo)代碼文件:*.HEX,可以在PROTUESJ原理圖中看到模擬的實物運行狀態(tài)和過程。PROTUE曜單片機(jī)課堂教學(xué)的先進(jìn)助手。PROTUE杯僅可將許多單片機(jī)實例功能形象化,也可將許多單片機(jī)實例運行過程形象化。前者可在相當(dāng)程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達(dá)到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機(jī)實驗硬件高度對應(yīng)。這在相當(dāng)程度上替代了傳統(tǒng)的單片機(jī)實驗教學(xué)的功能,例:元器件選擇、電路連接、電路檢測、電路修改、軟件調(diào)試、運行結(jié)果等。課程設(shè)計、畢業(yè)設(shè)計是學(xué)生走向就業(yè)的重要實踐環(huán)節(jié)。由于PROTUE提供了實驗室無法相比的大量的元器件庫,提供了修改電路設(shè)計的靈

17、活性、提供了實驗室在數(shù)量、質(zhì)量上難以相比的虛擬儀器、儀表,因而也提供了培養(yǎng)學(xué)生實踐精神、創(chuàng)造精神的平臺。隨著科技的發(fā)展“計算機(jī)仿真技術(shù)”已成為許多設(shè)計部門重要的前期設(shè)計手段。它具有設(shè)計靈活,結(jié)果、過程的統(tǒng)一的特點??墒乖O(shè)計時間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險。相信在單片機(jī)開發(fā)應(yīng)用中PROTUE電能茯得愈來愈廣泛的應(yīng)用。1.3.2KeiluVision3簡介KeiluVision3是德國KeilSoftware公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),使用接近于傳統(tǒng)c語言的語法來開發(fā),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用,而且大大的

18、提高了工作效率和項目開發(fā)周期,他還能嵌入?yún)R編,您可以在關(guān)鍵的位置嵌入,使程序達(dá)到接近于匯編的工作效率。KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時保留了匯編代碼高效,快速的特點。C51編譯器的功能不斷增強(qiáng),使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開發(fā)環(huán)境中,這個集成開發(fā)環(huán)境包含:編譯器,匯編器,實時操作系統(tǒng),項目管理器,調(diào)試器。uVision2IDE可為它們提供單一而靈活的開發(fā)環(huán)境。KeilC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面,能在很短的時間內(nèi)就能學(xué)會使用keilc51來開發(fā)

19、單片機(jī)應(yīng)用程序。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。第二章硬件電路設(shè)計2.1 復(fù)位電路復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防電源開關(guān)或電源插頭分-合過程中引起的抖動而影響復(fù)位。STC12C5A60勺復(fù)位是靠外電路實現(xiàn)的,RST引腳是單片機(jī)的復(fù)位輸入端。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。,在時鐘電路工作后,只要在單片機(jī)的R

20、ST引腳上出現(xiàn)24個時鐘振蕩脈沖(2個機(jī)器周期)以上的高電平,單片機(jī)便實現(xiàn)初始化狀態(tài)復(fù)位。當(dāng)單片機(jī)的時鐘f=12MHz時,1個機(jī)器周期為1科S,復(fù)位信號至少需保持2科So為了保證應(yīng)用系統(tǒng)可靠地復(fù)位,通常是RST弓I腳彳軻寺10ms以上的高電平。復(fù)位電路連接如圖2所示2.2 時鐘電路STC12C5A60中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖2。外接石英晶體及電容01,C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。時鐘電路和復(fù)位電路如下圖:圖2時鐘、復(fù)

21、位電路2.3 按鍵中斷STC1205A6或有2個外部中斷,INT0和INT1為兩天外部中斷請求輸入線,都允許外部中斷源以低電平或下降沿觸發(fā)。為了能在線修改參數(shù)而不影響PWMt出,我們選用優(yōu)先級低的INT1。按鍵中斷的電路如圖3。工作原理:上電后對P1.0、P1.1置高位,持續(xù)掃描,如果有按鍵按下,如P1.0對應(yīng)的按鍵按下,則P1.0接地,檢測到低電壓,P1.1仍懸空,認(rèn)為還是高電平,因而能判斷哪個按鍵按下。R1-1k;;:訂EXTI:R2:??;<TEKT-至3'-4一6.7P10/T2pi.irr2EXP1.2P1.3P1.4P-1.5P1.8P1.7:S15EXT,一圖3按鍵中

22、斷2.4 顯示電路圖4顯示電路第三章程序設(shè)計流程圖按照程序要求,設(shè)計如下的程序設(shè)計流程圖。4.1仿真圖圖5設(shè)計流程圖第四章系統(tǒng)仿真圖6仿真圖4.2程序#include<reg51.h>/模才PPW喻出控制燈的亮度#defineucharunsignedchar#defineuintunsignedintunsignedintscale;uchardata_L,data_H;uchartab尸0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;sbitK1=P1A0;/增加鍵sbitK2=P1A1;/減少鍵sbitP10=P0A0;sb

23、itP11=P0A1;sbitP12=P0A2;sbitP13=P0A3;sbitP14=P0A4;sbitP15=P0A5;sbitP16=P0A6;sbitP17=P0A7;unsignedcharPWM=50;/賦初值/占空比控制變量voiddisplay();voiddata_in();voiddelayms(unsignedcharms);voiddisplay(void)P3=0x04;P2=tabdata_H;delayms(1);P3=0x08;P2=tabdata_L;delayms(1);voiddata_in(void)data_L=scale%10;data_H=scale/10;/延時子程序定時器0中斷服務(wù)程序用來保存當(dāng)前時間在一秒中的比例位置voiddelayms(unsignedcharms)unsignedchari;while(ms-)

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論