單片機(jī)課程設(shè)計(jì)匯本報(bào)告_第1頁(yè)
單片機(jī)課程設(shè)計(jì)匯本報(bào)告_第2頁(yè)
單片機(jī)課程設(shè)計(jì)匯本報(bào)告_第3頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、摘要本設(shè)計(jì)是基于AT89S52單片機(jī)的多功能函數(shù)信號(hào)發(fā)生器。該設(shè)計(jì)以單片機(jī)作 為控制核心,外圍采用模擬/數(shù)字轉(zhuǎn)換電路DAC0832、運(yùn)放電路LM324、按 鍵和LED顯示燈電路等,可以產(chǎn)生方波、三角波和鋸齒波三種波形。輸出波形的 周期可調(diào),波形的頻率圍為100Hz1kHz;頻率步進(jìn)間隔為25Hz。輸出波形的峰 值可調(diào),波形幅度圍為05V,可按步進(jìn)0.1V峰-峰值調(diào)整。LED數(shù)碼管具有 顯示輸出波形的類型和頻率的功能。其中單片機(jī)通過(guò)軟件對(duì)鍵盤輸入的頻率數(shù)值進(jìn)展處理,處理結(jié)果送與D/A轉(zhuǎn)換局部實(shí)現(xiàn)數(shù)/模轉(zhuǎn)換,輸出的電流再經(jīng)過(guò)電流/電壓轉(zhuǎn)換環(huán)節(jié),進(jìn)而形成模擬 電壓波形,最后經(jīng)過(guò)過(guò)載保護(hù)電路輸出。同時(shí)

2、在LED數(shù)碼管顯示該頻率數(shù)值和所 對(duì)應(yīng)的波形。波形的切換可以通過(guò)按鍵直接實(shí)現(xiàn)。 輸出波形電壓的峰值通過(guò)調(diào)節(jié) DAC0832的參考電壓來(lái)實(shí)現(xiàn)。系統(tǒng)中所需的電源,由獨(dú)立的供電電路實(shí)現(xiàn)。通過(guò) 變壓器將工頻電壓降低,經(jīng)整流、濾波之后,由集成穩(wěn)壓芯片7812和7912將電 壓值穩(wěn)定在+12V和-12V,實(shí)現(xiàn)對(duì)外圍電路的穩(wěn)定供電。通過(guò)對(duì)本設(shè)計(jì)的PROTUE筋真與硬件測(cè)試,分別實(shí)現(xiàn)了三種波形的連續(xù)輸 出,并能夠通過(guò)按鍵實(shí)現(xiàn)不同波形之間的相互切換;波形的頻率可通過(guò)按鍵按 25Hz的步進(jìn)間隔進(jìn)展調(diào)整,并能通過(guò) LED數(shù)碼管實(shí)現(xiàn)波形類型和頻率的顯示。 通過(guò)對(duì)DAC0832參考電壓的調(diào)整,實(shí)現(xiàn)了對(duì)輸出波形峰值的調(diào)整

3、。本設(shè)計(jì)根本 上實(shí)現(xiàn)了系統(tǒng)設(shè)計(jì)所要求的功能。關(guān)鍵詞:AT89S52單片機(jī);信號(hào)發(fā)生器;DAC083219 / 21目錄1概述31.1系統(tǒng)功能概述31.2設(shè)計(jì)原理31.3設(shè)計(jì)思想41.4設(shè)計(jì)功能42系統(tǒng)總體方案及硬件設(shè)計(jì)52.1總體方案說(shuō)明52.2系統(tǒng)各局部硬件電路設(shè)計(jì)5 3軟件設(shè)計(jì)113.1系統(tǒng)總體控制功能圖113.2各波形的產(chǎn)生114 Proteus軟件仿真154.1系統(tǒng)仿真環(huán)境154.2器件參數(shù)選取154.3仿真結(jié)果分析155課程設(shè)計(jì)體會(huì)17參考文獻(xiàn)17附1:源程序代碼18附2:系統(tǒng)原理圖221概述1.1系統(tǒng)功能概述本文是基于AT89S52單片機(jī)的多功能函數(shù)信號(hào)發(fā)生器。這個(gè)單片機(jī)用于產(chǎn)生

4、最初的信號(hào)源,通過(guò)單片機(jī)循環(huán)產(chǎn)生數(shù)據(jù),再將數(shù)據(jù)傳給數(shù)模轉(zhuǎn)換芯片。單片機(jī)通過(guò)部程序控制給出數(shù)據(jù)的頻率,從而控制整個(gè)系統(tǒng)的信號(hào)輸出頻率。單片機(jī)送 給數(shù)模轉(zhuǎn)換芯片DAC0832的數(shù)據(jù)通過(guò)部器件轉(zhuǎn)換成模擬信號(hào)輸出,這是輸出的 是數(shù)字信號(hào),需要通過(guò)運(yùn)算放大器轉(zhuǎn)化為模擬信號(hào),通過(guò)兩級(jí)運(yùn)放轉(zhuǎn)化,得到雙極性的信號(hào)。本系統(tǒng)的設(shè)計(jì)以單片機(jī)作為控制核心,外圍采用模擬/數(shù)字轉(zhuǎn)換電路DAC0832、運(yùn)放電路LM324、按鍵和LED顯示燈電路等,可以產(chǎn)生方波、 三角波和鋸齒波三種波形。輸出波形的周期可調(diào),波形的頻率圍為100Hz1kHz; 頻率步進(jìn)間隔為25Hz。輸出波形的峰值可調(diào),波形幅度圍為 05V,可按步進(jìn) 0.1

5、V峰-峰值調(diào)整。LED數(shù)碼管具有顯示輸出波形的類型和頻率的功能。系統(tǒng)中有四個(gè)按鍵與單片機(jī)的 P1 口相連,分別為方波、三角波、鋸齒波和 頻率調(diào)整,當(dāng)P1.0按鍵按下時(shí),P1.0引腳為低電平,系統(tǒng)的輸出波形為方波, 同樣的道理,當(dāng)P1.1按鍵和P1.2按鍵分別按下時(shí),系統(tǒng)的輸出波形分別對(duì)應(yīng)為 三角波和鋸齒波。而當(dāng)P1.3按鍵按下時(shí),可按25Hz的頻率步進(jìn)間隔對(duì)輸出波形 的頻率進(jìn)展調(diào)整。整個(gè)系統(tǒng)的輸入設(shè)備為與P1 口相連的四個(gè)按鍵,輸出為與按鍵相應(yīng)的波形。1.2設(shè)計(jì)原理數(shù)字信號(hào)可以通過(guò)數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號(hào),因此可通過(guò)產(chǎn)生數(shù)字信號(hào) 再轉(zhuǎn)換成模擬信號(hào)的方法來(lái)獲得所需要的波形。AT89S52單片機(jī)

6、本身就是一個(gè)完 整的微型計(jì)算機(jī),具有組成微型計(jì)算機(jī)的各局部部件:中央處理器CPU隨機(jī)存取存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、I/O接口電路、定時(shí)器/計(jì)數(shù)器以及串行通訊 接口等,只要將AT89S52再配置鍵盤及其接口、顯示器及其接口、數(shù)模轉(zhuǎn)換及波 形輸出、指示燈及其接口等四局部,即可構(gòu)成所需的波形發(fā)生器,其信號(hào)發(fā)生器 構(gòu)成原理框圖如圖1.1所示。圖1.1信號(hào)發(fā)生器系統(tǒng)原理框圖AT89S52單片機(jī)是整個(gè)波形發(fā)生器的核心局部,通過(guò)程序的編寫和執(zhí)行,產(chǎn) 生各種各樣的信號(hào),并從鍵盤接收數(shù)據(jù),進(jìn)展各種功能的轉(zhuǎn)換和信號(hào)頻率的調(diào)節(jié)。 當(dāng)數(shù)字信號(hào)經(jīng)過(guò)接口電路到達(dá)轉(zhuǎn)換電路, 將其轉(zhuǎn)換成模擬信號(hào)也就是所需要的輸 出波形

7、。1.3設(shè)計(jì)思想1利用單片機(jī)產(chǎn)生方波、正弦波、三角波和鋸齒波等信號(hào)波形,信號(hào)的 頻率和幅度可變。2將一個(gè)周期的信號(hào)別離成256個(gè)點(diǎn)按X軸等分,三角波為512個(gè)點(diǎn), 每?jī)牲c(diǎn)之間的時(shí)間間隔為 T,用單片機(jī)的定時(shí)器產(chǎn)生,其表示式為:T=T/512其中三角波T=T/512。如果單片機(jī)的晶振為12MHz,采用定時(shí)器方式1, 那么定時(shí)器的初值為:定時(shí)時(shí)間常數(shù)為:MOD32表示除32取余數(shù)。3一個(gè)周期被別離成256512個(gè)點(diǎn),由單片機(jī)程序產(chǎn)生波形數(shù)據(jù),通 過(guò)D/A進(jìn)展數(shù)模轉(zhuǎn)換輸出模擬波形。4頻率的調(diào)整通過(guò)程序進(jìn)展。由初值計(jì)算公式導(dǎo)出頻率調(diào)整公式:其中N為信號(hào)被別離的點(diǎn)數(shù)對(duì)于方波和鋸齒波N為512,對(duì)于三角波

8、N為256, FREQ為波形的頻率。通過(guò)按鍵修改FREQ的值來(lái)改變裝入定時(shí)器的計(jì)數(shù)初值,從 而改變波形的頻率。1.4設(shè)計(jì)功能1本設(shè)計(jì)利用P1 口接4個(gè)獨(dú)立式按鍵,1個(gè)LED顯示器。其中“ P1.0" 鍵代表方波輸出,“P1.1"鍵代表三角波輸出,“P1.2"鍵代表鋸齒波輸出,“P1.3" 鍵進(jìn)展頻率調(diào)整。2輸出波形的頻率圍為100Hz1kHz;頻率步進(jìn)間隔w 100Hz。3輸出波形幅度圍05V,可按步進(jìn)0.1V峰-峰值調(diào)整。2系統(tǒng)總體方案及硬件設(shè)計(jì)2.1總體方案說(shuō)明該智能函數(shù)信號(hào)發(fā)生器由電源電路、晶振電路、復(fù)位電路、下載電路、單片 機(jī)、模擬/數(shù)字轉(zhuǎn)換電路

9、、運(yùn)放電路、按鍵和LED顯示燈電路組成。可以實(shí)現(xiàn)方波、三角波和鋸齒波三種波形的連續(xù)輸出,并能夠通過(guò)按鍵實(shí)現(xiàn)不同波形之間的 相互切換;波形的頻率可通過(guò)按鍵按 25Hz的步進(jìn)間隔進(jìn)展調(diào)整,并能通過(guò) LED 數(shù)碼管實(shí)現(xiàn)波形類型和頻率的顯示。并能通過(guò)對(duì)DAC0832參考電壓的調(diào)整,實(shí)現(xiàn)對(duì)輸出波形峰值的調(diào)整。2.2系統(tǒng)各局部硬件電路設(shè)計(jì) 單片機(jī)簡(jiǎn)介與最小系統(tǒng)設(shè)計(jì)AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。AT89S52使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工 業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上 Flash允許程序存儲(chǔ)器在系統(tǒng)可編程, 亦

10、適于常規(guī)編程器。在單芯片上,AT89S52擁有靈巧的8位CPU和在系統(tǒng)可編 程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決 萬(wàn)案復(fù)位電路設(shè)計(jì)MCS-52單片機(jī)通常采用上電自動(dòng)復(fù)位、按鈕電平復(fù)位、外部脈沖復(fù)位、上 電+按鈕電平復(fù)位、程序運(yùn)行監(jiān)視復(fù)位等方式。AT89S52需要外加復(fù)位電路,本設(shè)計(jì)采用按鍵 +上電復(fù)位,上電復(fù)位是利用 電容充電來(lái)實(shí)現(xiàn)的,即上電瞬間 RST/Vpc端的電位與Vcc樣,隨著充電電流的 減少,最后被嵌位在0V采用10uF的C3和10K的R4可以保證加在引腳上的高 電平持續(xù)2個(gè)機(jī)器周期,即使單片機(jī)有效地復(fù)位。按鍵可以隨時(shí)使電路復(fù)位,當(dāng) 鍵按下

11、時(shí)1K的R1和10K的R2串聯(lián)分壓使RST為高電平,即復(fù)位。圖2.1復(fù)位電路圖時(shí)鐘晶振電路MCS-51部有一個(gè)用于構(gòu)成震蕩器的高增益反向放大器,此放大器的輸入端 和輸出端分別是XTAL1和XTAL2在XTAL1和XTAL2±外接晶振可構(gòu)成時(shí)鐘電路。 時(shí)鐘電路在單片機(jī)系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的根底。晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢。 本次設(shè)計(jì)采用部方式的外部時(shí)鐘接 法。為到達(dá)振蕩周期是12MHZ的要求,這里要采用12MHZ的晶振,電容C1、 C2對(duì)頻率有微調(diào)作用,故外接晶振時(shí),C1和C2在本設(shè)計(jì)中選擇30pF,振蕩頻率取12MHz。晶振的兩個(gè)引腳分別連到 X

12、TAL1和XTAL2振蕩脈沖輸入引腳。如下 列圖所示:圖2.2時(shí)鐘晶振電路圖顯示電路本次設(shè)計(jì)中采用共陰極數(shù)碼管作為顯示器。LED的驅(qū)動(dòng)電路簡(jiǎn)單,使用方便, 具有耗電少、本錢低廉、配置簡(jiǎn)單靈活、安裝方便、耐振動(dòng)、使用壽命長(zhǎng)等優(yōu)點(diǎn)。 LED顯示器與單片機(jī)的接口一般有動(dòng)態(tài)顯示與靜態(tài)顯示接口兩種電路。1、靜態(tài)顯示方式:是指當(dāng)顯示器顯示某一字符時(shí),發(fā)光二極管的位選始終被選中。在這種顯示方式下,每一個(gè)LED數(shù)碼管顯示器都需要一個(gè)8位的輸出口 進(jìn)展控制,顯示穩(wěn)定,提高了 CPU的工作效率。其缺乏之處是占用硬件資源較 多,每個(gè)LED數(shù)碼管需要獨(dú)占8條輸出線。隨著顯示器位數(shù)的增加,需要的I/O 口線也將增加。2

13、、動(dòng)態(tài)顯示方式:動(dòng)態(tài)顯示方式是指一位一位地輪流點(diǎn)亮每位顯示器稱 為掃描,即每個(gè)數(shù)碼管的位選被輪流選中,多個(gè)數(shù)碼管公用一組段選,段選數(shù) 據(jù)僅對(duì)位選選中的數(shù)碼管有效。對(duì)于每一位顯示器來(lái)說(shuō),每隔一段時(shí)間輪流點(diǎn)亮。 顯示器的亮度既與導(dǎo)通電流有關(guān), 也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān),由于掃 描速度極快,顯示效果與靜態(tài)驅(qū)動(dòng)一樣。 通過(guò)調(diào)整電流和時(shí)間參數(shù),可以既保證 亮度,又保證顯示。本次設(shè)計(jì)中,由于單片機(jī)本身提供的I/O 口有限,本次設(shè)計(jì)采用動(dòng)態(tài)顯示, 數(shù)碼管采用的是共陰極接法。用 AT89S52的P0 口作段碼輸出時(shí),驅(qū)動(dòng)能力相當(dāng) 大,但由于輸出極為漏極開路電路,驅(qū)動(dòng)拉電流負(fù)載,引腳上應(yīng)外接上拉電阻。

14、因此,在本次設(shè)計(jì)中我們將數(shù)碼管各段加上拉電阻后接單片機(jī)P0 口。把單片機(jī)的P1.0P1.4管腳直接接到數(shù)碼管的位選端作為位選信號(hào),低電平有效。圖2.3 LED顯示電路圖數(shù)摸轉(zhuǎn)換電路本設(shè)計(jì)采用DAC0832芯片構(gòu)成模數(shù)轉(zhuǎn)換電路。DAC0832系列為美國(guó)國(guó)家半 導(dǎo)體公司生產(chǎn)的具有2個(gè)數(shù)據(jù)存放器的8位分辨率的D/A轉(zhuǎn)換芯片。此芯片與微 處理器完全兼容,可以完全相互代換,并且價(jià)格低廉,接口簡(jiǎn)單,轉(zhuǎn)換控制容易, 在單片機(jī)應(yīng)用系統(tǒng)中得到了廣泛的應(yīng)用。其部由8位輸入鎖存器、8位DAC存放器、8位D/A轉(zhuǎn)換器電路及轉(zhuǎn)換控制電路構(gòu)成,通過(guò)兩個(gè)輸入存放器構(gòu)成兩級(jí)數(shù) 據(jù)輸入鎖存。DAC0832的芯片管腳圖如下列圖所

15、示。1*WMi 71 r訓(xùn)D 313-=沖0號(hào)417i塔即% DllDh61ii -01$?14 DhWlfFJi13 DM? (MSBig1?>flutr-n11圖2.4 DAC0832的管腳圖本設(shè)計(jì)中,讓DAC0832工作在直通工作方式,其片選信號(hào) 接單片機(jī)的P3.0 管腳,由程序?qū)π酒霓D(zhuǎn)換進(jìn)展控制。數(shù)據(jù)位接單片機(jī)的P2 口。寫信號(hào)三、回 及傳送控制信號(hào)國(guó) 的引腳全部接地,允許輸入鎖存信號(hào)ILE引腳+5V時(shí)。其基準(zhǔn)電壓VRE門I腳經(jīng)電位計(jì)接+5V電壓,通過(guò)改變基準(zhǔn)電壓值來(lái)改變輸出信 號(hào)的峰值電壓。在程序的控制下,數(shù)字量一旦輸入,就直接進(jìn)入DAC存放器,進(jìn)展D/A轉(zhuǎn)換。燈匚匚IL三&

16、#163;汀乍口!庫(kù) CJ zzIIJrLL E FU2G D D D D V R G、二!MTDI4D-5DI6DI7I0UT2I0UT1V1H匚叫15 D54 ru2 *廠:訂;圖2.5數(shù)模轉(zhuǎn)換電路原理圖運(yùn)放電路本設(shè)計(jì)中使用LM324芯片構(gòu)成運(yùn)放電路,實(shí)現(xiàn)對(duì)DAC0832輸出的小信號(hào)的 放大,并進(jìn)展電流/電壓的轉(zhuǎn)換。LM324系列運(yùn)算放大器是價(jià)格廉價(jià)的帶差動(dòng)輸 入功能的四運(yùn)算放大器。LM324的特點(diǎn)如下:1. 短跑保護(hù)輸出。2. 真差動(dòng)輸入級(jí)。3. 可單電源工作:3V-32U4. 低偏置電流:最大100nA LM324A。5. 每封裝含四個(gè)運(yùn)算放大器。6. 具有部補(bǔ)償?shù)墓δ堋?. 共模圍擴(kuò)

17、展到負(fù)電源。8. 行業(yè)標(biāo)準(zhǔn)的引腳排列。9. 輸入端具有靜電保護(hù)功能。輸出1 T訥也4"唱SK*YCC區(qū)回 VEE, Gnd|»A3端出2 7管腳連接圖(>1OUT1u144OUT1IN-213j 4IN一1IN + 3124IN +vccC411GND2IN + 5103IN +2IN-693IN-2OUT783OUT圖2.6 LM324的管腳圖設(shè)計(jì)中采用雙極性輸出,所使用的運(yùn)放電路圖如下列圖所示圖2.7 LM324運(yùn)放電路原理圖按鍵電路本設(shè)計(jì)中的按鍵電路由四個(gè)獨(dú)立按鍵構(gòu)成, 分別與單片機(jī)的P1.4P1.7管腳 相連接,并經(jīng)過(guò)74LS00實(shí)現(xiàn)四輸入與門的功能與單片機(jī)的

18、P3.2管腳外部中斷0想接,利用中斷和掃描的方式來(lái)實(shí)現(xiàn)波形的切換和信號(hào)頻率的調(diào)整。其 中P1.4P1.6按鍵分別對(duì)應(yīng)方波、三角波和鋸齒波,而P1.7按鍵用于對(duì)信號(hào)頻率的調(diào)整。按鍵電路如圖2.8所示。圖2.8按鍵電路原理圖電源電路本設(shè)計(jì)的電源電路是通過(guò)變壓器將工頻電壓轉(zhuǎn)換成低壓, 然后通過(guò)整流橋的 整流、電容的濾波以及7812和7912的穩(wěn)壓,形成穩(wěn)定的+12V電壓和-12V電壓, 實(shí)現(xiàn)對(duì)模數(shù)轉(zhuǎn)換電路和運(yùn)放電路的穩(wěn)定供電。系統(tǒng)中所需要的 +5V電壓,均通過(guò) USB直接供電。單片機(jī)外圍電路的供電電路圖如下列圖所示。TR-二二二二D2irJ4ro71ca0T: U41= Cfli -CuD4TRAN

19、-丄is1 C4_L4irnf<i7圖2.9電源電路原理圖3軟件設(shè)計(jì)3.1系統(tǒng)總體控制功能圖圖3.1系統(tǒng)總體控制功能圖3.2各波形的產(chǎn)生方波的產(chǎn)生此波形的實(shí)現(xiàn)只需開場(chǎng)的時(shí)候設(shè)置一個(gè)初值然后直接輸出這個(gè)值就行了,輸出一段時(shí)間后,然后再重新置一個(gè)數(shù)據(jù), 然后再輸出這個(gè)數(shù)據(jù)一段時(shí)間,但是此 時(shí)的時(shí)間一定要等于前面那段時(shí)間。其流程圖如下:322三角波的產(chǎn)生三角波的實(shí)現(xiàn)是設(shè)置一個(gè)初值,然后進(jìn)展加數(shù),加到某個(gè)數(shù)之后再進(jìn)展減數(shù),減到初值之后就再返回到先前的操作。此程序輸入的VREF的電壓是+ 5V,因此對(duì)于一樣的中斷間隔,該波形輸出的最大周期是初值為0和最終值為256,且步數(shù)為1,這樣輸出的波形是最大

20、的。程序流程圖如下列圖所示:323鋸齒波的產(chǎn)生鋸齒波的實(shí)現(xiàn)過(guò)程是首先定義一個(gè)初值然后進(jìn)展加法操作,然后加到某個(gè)數(shù) 之后就再重新設(shè)置為初值,再重復(fù)執(zhí)行剛剛的操作,如此循環(huán)下去。 在本程序中 初值為0最大值為255。開場(chǎng)3.3系統(tǒng)按鍵的實(shí)現(xiàn)過(guò)程波形的切換和頻率的調(diào)整通過(guò)四個(gè)獨(dú)立按鍵來(lái)實(shí)現(xiàn)。按下一個(gè)開關(guān)通過(guò)P1.4 為0那么輸出方波,P1.5為0輸出三角波,P1.6為0輸出鋸齒波,P1.7為0那 么頻率步進(jìn)25Hz。其流程圖如下列圖所示:進(jìn)人外部0斷O按遜業(yè)理鋸刪SfTF4 Proteus軟件仿真4.1系統(tǒng)仿真環(huán)境本設(shè)計(jì)采用 Proteus仿真軟件進(jìn)展仿真, Proteus軟件是英國(guó) Labcent

21、er electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能, 還能仿真單片機(jī)及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。首先在Proteus的元件庫(kù)中找到所需的元件,按照硬件設(shè)計(jì)中的說(shuō)明把各部 件連接起來(lái)組成一個(gè)數(shù)字式溫度計(jì)硬件系統(tǒng)。然后把在Keil環(huán)境調(diào)試下生成的.HEX文件導(dǎo)入到 AT89S52里,點(diǎn)擊運(yùn)行符號(hào)就可以使軟硬件的配套設(shè)施在 Proteus的環(huán)境下仿真實(shí)現(xiàn),以檢查是否存在錯(cuò)誤。4.2器件參數(shù)選取單片機(jī)采用AT89S52時(shí)鐘頻率為12MHz。時(shí)鐘產(chǎn)生電路的晶振為12MHz, 接地電容為30pF。復(fù)位電路的電解電容為10uF,與電容并聯(lián)的

22、電阻為1K,接地 的電阻為10K。系統(tǒng)的仿真原理圖如圖4.1所示:圖4.1系統(tǒng)的仿真原理圖4.3仿真結(jié)果分析R IOO圖422調(diào)頻后的方波圖R ISO圖421方波波形圖425調(diào)頻的三角波圖4.2.3調(diào)幅后的方波4.2.6調(diào)幅后的三角波圖424三角波波形圖427鋸齒波波形圖4.2.8調(diào)頻后的鋸齒波圖4.2.9調(diào)幅后的鋸齒波5課程設(shè)計(jì)體會(huì)課程設(shè)計(jì)是培養(yǎng)我們綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn)、提出、分析和解決實(shí)際問(wèn)題 的能力。通過(guò)這次單片機(jī)課程設(shè)計(jì),使我們對(duì)單片機(jī)的構(gòu)造、根本工作原理、單 片機(jī)應(yīng)用系統(tǒng)開發(fā)有了進(jìn)一步的了解,特別是在硬件設(shè)計(jì)和軟件編程方面有了很 大提高。函數(shù)信號(hào)發(fā)生器的硬件設(shè)計(jì)電路簡(jiǎn)單, 但對(duì)各芯

23、片的性能及工作原理不 是很熟悉;軟件設(shè)計(jì)并不太復(fù)雜,但需要搞清其工作原理,時(shí)序。在設(shè)計(jì)的過(guò)程中,通過(guò)請(qǐng)教教師和同學(xué),上網(wǎng)或上圖書館查資料將這些問(wèn)題 解決。這樣不僅穩(wěn)固了以前所學(xué)過(guò)的知識(shí), 加深了我對(duì)所學(xué)知識(shí)的理解,而且學(xué) 到了很多在書本上未涉及的知識(shí),鍛煉了搜集有用信息的能力。軟件編程過(guò)程中, 由于采用C語(yǔ)言編程,以前雖然有過(guò)接觸,但并不是很熟練,所以參考了別人的 設(shè)計(jì)思路,琢磨研究弄懂后,又試著修改程序。在不滿足要求時(shí)反復(fù)思考,研究 錯(cuò)誤出在哪里,經(jīng)過(guò)不懈努力,最終找出錯(cuò)誤所在,滿足了根本的設(shè)計(jì)要求。在 編譯仿真時(shí)對(duì)軟件 Keiv uVision4.0和Proteus認(rèn)識(shí)更多,發(fā)現(xiàn)了 Pro

24、teus的很多優(yōu) 點(diǎn),同時(shí)也發(fā)現(xiàn)它的缺乏之處,過(guò)于理想化,如果完全依賴,那么硬件有可能無(wú) 法工作。在硬件設(shè)計(jì)過(guò)程中,需要考慮很多問(wèn)題,例如元器件參數(shù)的選取,單片機(jī)的 實(shí)際驅(qū)動(dòng)能力。在實(shí)際電路的設(shè)計(jì)時(shí),必須軟硬件相結(jié)合,使布局合理且軟件設(shè)計(jì)的簡(jiǎn)單。但由于是第一次焊接電路板,焊工不熟練,布線不美觀以至于在實(shí)際焊接時(shí)出現(xiàn)了不少問(wèn)題。不過(guò),這些問(wèn)題最終都被解決。本次設(shè)計(jì)由兩人共同完 成,也培養(yǎng)了我們的團(tuán)隊(duì)合作精神??偟膩?lái)說(shuō),這次課程讓我們收獲很大。參考文獻(xiàn)1 余發(fā)山主編單片機(jī)原理及應(yīng)用技術(shù).:中國(guó)礦業(yè)大學(xué).2003.122 雷發(fā)禹,賓淼林,永枧,等.基于單片機(jī)的信號(hào)發(fā)生器設(shè)計(jì)與仿真.學(xué)院學(xué)報(bào)自然科學(xué)版

25、,2009, 6(3): 39-433 譚浩強(qiáng)著.C語(yǔ)言程序設(shè)計(jì).清華大學(xué).2005.7附1:源程序代碼#in clude<reg52.h>#defi ne uint un sig ned int#defi ne uchar un sig ned charsbit squ=P1A4;sbit tri=P1A5;sbit ser=P1A6;sbit freq=P1A7;sbit cs=P3A0;bit flag;uint qia n,bai,shi,ge;uint FREQ;uchar nu m,cho;uchar TIME0_H=0xff,TIME0_L=0xb1;定時(shí)器的初值設(shè)定

26、 ucharleddata=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39; void in itial()FREQ=100;/初始頻率設(shè)定為100Hzcho=0;cs=0;TMOD=0X01; /定時(shí)器0,模式1TH0=0xff;TL0=0xb1;IT0=1;/外部中斷0,下降沿觸發(fā)EX0=1;ET0=1;EA=1;TR0=1;void squwave()方波,256次連續(xù)構(gòu)成一個(gè)周期。假設(shè)頻率50Hz,即0.02=256*Ts,/那么定時(shí)初值為65536-Ts*10A6;/ 初值計(jì)算公式:65536-10A6

27、/(N*FREQ)if(+nu m<128)P2=0x00;elseP2=0xff;void triwave()/三角波,512次連續(xù)構(gòu)成一個(gè)周期if(!flag)P2=num;nu m+=1;if(num=0)num=255;flag=1;if(flag)P2=num;num-=1;if(num=255)num=0;flag=O;void serwave() /鋸齒波,256次連續(xù)構(gòu)成一個(gè)周期P2=nu m+;/延時(shí)子程序void delay()uint i;for(i=10;i>0;i-)J/頻率調(diào)整void freq_u() _uint temp;if(freq=0)FREQ

28、+=25;if(FREQ=1000) /保證頻率在100Hz到1KHz之間,到達(dá)邊界頻率時(shí),調(diào)/整為初始頻率FREQ=100;if(cho=0|cho=2)temp=65536-3906/FREQ; / 方波和鋸齒波 N=256; 65336-10P(N*FREQ)TIME0_H=temp/256;TIME0_L=temp%256;if(cho=1)temp=65536-1953FREQ; / 三角波 N=512; 65336-10A6/(N*FREQ)TIME0_H=temp/256;TIME0_L=temp%256;/對(duì)顯示的頻率數(shù)據(jù)進(jìn)展處理void datadeal_f() _bai=FREQ/100;shi=FREQ%100/10;ge=FREQ%10;/按鍵中斷處理程序void keydeal() i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論