版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 1.前 言</b></p><p> 在生活和生產(chǎn)的各領(lǐng)域中,凡是有自動(dòng)控制要求的地方都會(huì)有單片機(jī)的身影出現(xiàn);從簡(jiǎn)單到復(fù)雜,從空中、地面到地下,凡是能想像到的地方幾乎都有使用單片的需求?,F(xiàn)在盡管單片機(jī)的應(yīng)用已經(jīng)很普遍了,但仍有許多可以用單片機(jī)控制而尚未實(shí)現(xiàn)的項(xiàng)目,因此,單片機(jī)的應(yīng)用大有想像和拓展空間。 單片機(jī)的應(yīng)用有利于產(chǎn)品的小型化、多功能化和智能化,有助于提
2、高勞動(dòng)效率,減輕勞動(dòng)強(qiáng)度,提高產(chǎn)品質(zhì)量,改善勞動(dòng)環(huán)境,減少能源和材料消耗,保證安全等。 但是,單片機(jī)應(yīng)用的意義絕不僅限于它的廣闊范圍以及所帶來(lái)的經(jīng)濟(jì)效益上,更重要的意義還在于:?jiǎn)纹瑱C(jī)的應(yīng)用正從根本上改變著傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須有模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能使用單片機(jī)通過(guò)軟件(編程序)方法實(shí)現(xiàn)了。這種以軟件取代硬件并提高系統(tǒng)性能的控制系統(tǒng)“軟化”技術(shù),稱之為微控制技術(shù)。微控制技術(shù)是一種全新的概念,是對(duì)傳
3、統(tǒng)控制技術(shù)的一次革命。隨著單片機(jī)應(yīng)用的推廣普及,微控制技術(shù)必將不斷發(fā)展、日益完善和更加充實(shí)。</p><p> 近年來(lái)隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透, 單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)日新月益更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來(lái)使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,以作完善。 模擬多通道壓力系統(tǒng)是利用壓力
4、傳感器采集當(dāng)前壓力并反映在顯示器上,它可以分析壓力過(guò)量程,并發(fā)出報(bào)警。并采用電子秤原理可根據(jù)輸入單價(jià)準(zhǔn)確的計(jì)算出物體的金額。</p><p><b> 2.總體方案設(shè)計(jì)</b></p><p><b> 2.1 方案論證</b></p><p><b> 1.目的</b></p>
5、<p> 課程設(shè)計(jì)是單片機(jī)課程教學(xué)的最后一個(gè)環(huán)節(jié),是對(duì)學(xué)生進(jìn)行全面的系統(tǒng)的訓(xùn)練。進(jìn)行課程設(shè)計(jì)可以讓學(xué)生把學(xué)過(guò)的比較零碎的知識(shí)系統(tǒng)化,真正的能夠把學(xué)過(guò)的知識(shí)落到實(shí)處,能夠開發(fā)簡(jiǎn)單的系統(tǒng),也進(jìn)一步激發(fā)了學(xué)生再深一步學(xué)習(xí)的熱情,因此課程設(shè)計(jì)是必不可少的,是非常必要的。</p><p> 課程設(shè)計(jì)是提高學(xué)生單片機(jī)技術(shù)應(yīng)用能力以及文字總結(jié)能力的綜合訓(xùn)練環(huán)節(jié),是配合單片機(jī)課程內(nèi)容掌握、應(yīng)用得的專門性實(shí)踐類課程。
6、通過(guò)典型實(shí)際問(wèn)題的實(shí)際,訓(xùn)練學(xué)生的軟硬件的綜合設(shè)計(jì)、調(diào)試能力以及文字組織能力,建立系統(tǒng)設(shè)計(jì)概念,加強(qiáng)工程應(yīng)用思維方式的訓(xùn)練,同時(shí)對(duì)教學(xué)內(nèi)容做一定的擴(kuò)充。</p><p><b> 2.要求</b></p><p> 單片機(jī)控制的60s倒計(jì)時(shí)</p><p> ?。?)用單片機(jī)AT89C51的定時(shí)器實(shí)現(xiàn)60s倒計(jì)時(shí)。本例中用兩位數(shù)碼管靜態(tài)顯示
7、倒計(jì)時(shí)秒值。</p><p> ?。?)用PROTEUS設(shè)計(jì),仿真基于AT89c51單片機(jī)的60s倒計(jì)時(shí)實(shí)驗(yàn)。</p><p><b> 3. 目標(biāo)</b></p><p> 通過(guò)課程設(shè)計(jì),使自己深刻理解并掌握基本概念,掌握單片機(jī)的基本應(yīng)用程序設(shè)計(jì)及綜合應(yīng)用程序設(shè)計(jì)的方法。通過(guò)做一個(gè)綜合性訓(xùn)練題目,達(dá)到對(duì)內(nèi)容的消化、理解并提高解決問(wèn)題的能力
8、的目的。</p><p><b> 2.2方案選擇</b></p><p> 圖2.1:60秒倒計(jì)時(shí)總體電路設(shè)計(jì)</p><p> 本設(shè)計(jì)由硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分組成,總電路框圖如圖2.1所示??傠娐穲D見附錄一,硬件設(shè)計(jì)主要包括單片機(jī)芯片選擇,數(shù)碼管選擇及晶振,電容,電阻等元器件的選擇及其參數(shù)的確定;軟件設(shè)計(jì)主要是實(shí)現(xiàn)60秒倒計(jì)時(shí)程序的
9、編寫,包括利用中斷實(shí)現(xiàn)1秒的定時(shí)及60秒的倒計(jì)時(shí)。</p><p> 具體設(shè)計(jì):通過(guò)AT89C51型號(hào)單片機(jī),由P1和P2兩組I/O引腳分別控制兩個(gè)7SEG–COM –ANODE型號(hào)數(shù)碼管,分十位控制和個(gè)位控制,達(dá)到顯示60秒倒計(jì)時(shí)的目的。通過(guò)復(fù)位電路,在仿真過(guò)程中點(diǎn)擊開關(guān)實(shí)現(xiàn)60復(fù)位。</p><p><b> 3.硬件設(shè)計(jì)</b></p><
10、;p> 3.1 AT89C51的芯片概述</p><p> AT89C51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元
11、,功能強(qiáng)大的微型計(jì)算機(jī)的AT89C51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。 其工作電壓在4.5-5V,一般我們選用+5V電壓。外形及引腳排列如圖3.1所示 </p><p> 圖3.1:89C51的核心電路框圖</p><p><b> 主要特性</b></p><
12、;p> ·與MCS-51 兼容 </p><p> ·4K字節(jié)可編程閃爍存儲(chǔ)器 </p><p> ·壽命:1000寫/擦循環(huán)</p><p> ·數(shù)據(jù)保留時(shí)間:10年</p><p> ·全靜態(tài)工作:0Hz-24MHz</p><p> ·
13、三級(jí)程序存儲(chǔ)器鎖定</p><p> ·128×8位內(nèi)部RAM</p><p> ·32可編程I/O線</p><p> ·兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b> ·5個(gè)中斷源 </b></p><p><b> &
14、#183;可編程串行通道</b></p><p> ·低功耗的閑置和掉電模式</p><p> ·片內(nèi)振蕩器和時(shí)鐘電路 </p><p><b> 管腳說(shuō)明</b></p><p> (1)電源及時(shí)鐘引腳(4個(gè))</p><p> Vcc: 電源接入引腳&
15、lt;/p><p><b> Vss:接地引腳</b></p><p> XTAL1:晶振震蕩器接入的一個(gè)引腳(采用外部振蕩器時(shí),此引腳接地);</p><p> XTAL2:晶體振蕩器的另一個(gè)引腳(采用外部振蕩器時(shí),此引腳作為外部振蕩器信號(hào)的輸入端)。</p><p> ?。?)控制線引腳(4個(gè))</p>
16、<p> RST/Vpd:復(fù)位信號(hào)輸入引腳/備用電源輸入引腳;</p><p> ALE:地址鎖存允許信號(hào)輸出引腳/編程脈沖輸入引腳:</p><p> EA:內(nèi)外存儲(chǔ)器選擇引腳/片外EPROM編程電壓輸入引腳;</p><p> PSEN:外部程序存儲(chǔ)器選通信號(hào)輸出引腳。</p><p> ?。?)并行I/O引腳<
17、;/p><p> P0.0-P0.7:一般I/O口引腳或數(shù)據(jù)/低位地址總線復(fù)用引腳;</p><p> P1.0-P1.7:一般I/O口引腳;</p><p> P2.0-P2.7:一般I/O口引腳或高位地址總線引腳;</p><p> P3.0-P3.7:一般I/O口引腳或第二功能引腳</p><p><b
18、> 振蕩器特性:</b></p><p> XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。 </p><p> 3.2 LED數(shù)碼管顯示器
19、概述</p><p> 本設(shè)計(jì)中采用的是7SEG–COM –ANODE型號(hào)數(shù)碼管,它是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。實(shí)物如圖3.2所示:</p><p> 圖3.2:7SEG–COM –ANODE型號(hào)數(shù)碼管</p><p><b> 數(shù)碼管的分類 </b></p><p> 數(shù)碼管按段數(shù)分為七段數(shù)
20、碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè)“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽(yáng)極數(shù)碼管和共陰極數(shù)碼管。共陽(yáng)數(shù)碼管是指將所有發(fā)光二極管的陽(yáng)極接到一起形成公共陽(yáng)極(COM)的數(shù)碼管。共陽(yáng)數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。。共陰數(shù)碼管是指將所有發(fā)光二
21、極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽(yáng)極為高電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陽(yáng)極為低電平時(shí),相應(yīng)字段就不亮。</p><p> LED數(shù)碼管有兩種連接方法如下:</p><p> 共陽(yáng)極接法。把發(fā)光二極管的陽(yáng)極連在一起構(gòu)成公共陽(yáng)極,使用時(shí)公共陽(yáng)極接+5V,每個(gè)發(fā)光二極管的陰極通過(guò)電阻與輸入端相連
22、。 </p><p> 共陰極接法。把發(fā)光二極管的陰極連在一起構(gòu)成公共陰極,使用時(shí)公共陰極接地。每個(gè)發(fā)光二極管的陽(yáng)極通過(guò)電阻與輸入端相連。 </p><p> 圖3.3:常見LED數(shù)碼管</p><p> LED數(shù)碼顯示器的顯示段碼。 為了顯示字符,要為L(zhǎng)ED顯示器段碼(或稱字</p><p> 形代碼),組成一個(gè)8字形字符的7段,再
23、加上1個(gè)小數(shù)點(diǎn)位,共計(jì)8段,因此提供給LED顯示器的顯示段碼為1個(gè)字節(jié)。各段碼位的對(duì)應(yīng)關(guān)系如下表所示.十六進(jìn)制數(shù)及空白字符與P的顯示段碼。</p><p><b> 表3.1</b></p><p><b> 數(shù)碼管的驅(qū)動(dòng)方式</b></p><p> 數(shù)碼管要正常顯示,就要用驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)數(shù)碼管的各個(gè)段碼,從而顯示
24、出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動(dòng)方式的不同,可以分為靜態(tài)式和動(dòng)態(tài)式兩類。</p><p> ?、?靜態(tài)顯示驅(qū)動(dòng):靜態(tài)驅(qū)動(dòng)也稱直流驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的I/O端口進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二-十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡(jiǎn)單,顯示亮度高,缺點(diǎn)是占用I/O端口多,如驅(qū)動(dòng)5個(gè)數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O端口來(lái)驅(qū)動(dòng),要知道一個(gè)89S51單片機(jī)
25、可用的I/O端口才32個(gè)呢:),實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。</p><p> ② 動(dòng)態(tài)顯示驅(qū)動(dòng):數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼
26、管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過(guò)分時(shí)輪流控制各個(gè)數(shù)碼管的的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過(guò)程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一
27、組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。</p><p><b> 數(shù)碼管參數(shù) </b></p><p> 8字高度:8字上沿與下沿的距離。比外型高度小。通常用英寸來(lái)表示。范圍一般為0.25-20英寸。</p><p> 長(zhǎng)*寬*高:長(zhǎng)——數(shù)碼管正放時(shí),水平方向的長(zhǎng)度;寬
28、——數(shù)碼管正放時(shí),垂直方向上的長(zhǎng)度;高——數(shù)碼管的厚度。</p><p> 時(shí)鐘點(diǎn):四位數(shù)碼管中,第二位8與第三位8字中間的二個(gè)點(diǎn)。一般用于顯示時(shí)鐘中的秒。</p><p><b> 數(shù)碼管應(yīng)用</b></p><p> 數(shù)碼管是一類顯示屏 通過(guò)對(duì)其不同的管腳輸入相對(duì)的電流 會(huì)使其發(fā)亮 從而顯示出 數(shù)字 </p><p
29、> 能夠顯示 時(shí)間 日期 溫度 等所有可用數(shù)字表示的參數(shù) </p><p> 由于它的價(jià)格便宜 使用簡(jiǎn)單 在電器 特別是家電領(lǐng)域應(yīng)用極為廣泛 空調(diào) 熱水器 冰箱 等等 </p><p> 絕大多數(shù) 熱水器用的都是數(shù)碼管 其他家電 也用液晶屏與 熒光屏 </p><p> 數(shù)碼管使用的電流與電壓</p><p> 電流:靜態(tài)時(shí),
30、推薦使用10-15mA;動(dòng)態(tài)時(shí),16/1動(dòng)態(tài)掃描時(shí),平均電流為4-5mA,峰值電流50-60mA。</p><p> 電壓:查引腳排布圖,看一下每段的芯片數(shù)量是多少?當(dāng)紅色時(shí),使用1.9V乘以每段的芯片串聯(lián)的個(gè)數(shù);當(dāng)綠色時(shí),使用2.1V乘以每段的芯片串聯(lián)的個(gè)數(shù)。</p><p> 怎樣測(cè)量數(shù)碼管引腳,分共陰和共陽(yáng)?</p><p> 找公共共陰和公共共陽(yáng):首先
31、,我們找個(gè)電源(3到5伏)和1個(gè)1K(幾百歐的也行)的電阻,VCC串接個(gè)電阻后和GND接在任意2個(gè)腳上,組合有很多,但總有一個(gè)LED會(huì)發(fā)光的,找到一個(gè)就夠了,然后GND不動(dòng),VCC(串電阻)逐個(gè)碰剩下的腳,如果有多個(gè)LED(一般是8個(gè)),那它就是共陰的了。相反用VCC不動(dòng),GND逐個(gè)碰剩下的腳,如果有多個(gè)LED(一般是8個(gè)),那它就是共陽(yáng)的。也可以直接用數(shù)字萬(wàn)用表,紅表筆是電源的正極,黑表筆是電源的負(fù)極。</p><
32、p> 3.3 其他元器件介紹及參數(shù)選擇</p><p> 本設(shè)計(jì)中還用到其他一些元器件,例如:晶振,電容,電阻排,電解電容,開關(guān)等等。</p><p> 晶振采用頻率為12MHZ,連接的兩個(gè)電容為30pF;電阻排為470*8,能夠?qū)崿F(xiàn)8個(gè)470歐電阻的等效替換;電解電容為10u;開關(guān)功能是在仿真過(guò)程中,按下開關(guān)便能實(shí)現(xiàn)60秒復(fù)位。</p><p><
33、;b> 4. 軟件設(shè)計(jì)</b></p><p> 4.1定時(shí)/計(jì)數(shù)器初值計(jì)算</p><p> ?。?)本電路應(yīng)用TIMER0 MODE 16位計(jì)數(shù)器的計(jì)時(shí)中斷法。 </p><p> ?。?)1秒等于1000000微秒,而每一計(jì)時(shí)脈沖是1微秒,因此需輸入100000個(gè)計(jì)時(shí)脈沖,方可達(dá)到1秒的時(shí)間。本設(shè)計(jì)中,設(shè)定中斷每次溢出時(shí)間50ms。<
34、;/p><p> ?。?)由上式得知,循環(huán)20次即可達(dá)到1秒定時(shí),即: </p><p> N=t/Tcy=0.05s/0.000001=5000</p><p> X=65536-5000=15536=3CB0H</p><p> (4)由上式得知5000個(gè)脈沖,首先需設(shè)定TL0=3CH,TH0=0B0H,此時(shí)第1次只要輸入5000個(gè)脈沖
35、輸入,就會(huì)溢出;第2次至第20次,則需每1000000個(gè)計(jì)時(shí)脈沖,定時(shí)1秒。</p><p> ?。?)上電時(shí),顯示60,開始倒數(shù)計(jì)時(shí)按下開關(guān)實(shí)現(xiàn)復(fù)位。</p><p> 4.2 軟件部分程序</p><p><b> …</b></p><p> MAIN: MOV R2,#60 ;
36、計(jì)數(shù)初值</p><p> LOOP1: MOV A,R2 </p><p><b> MOV B,#10</b></p><p> DIV AB </p><p> MOV DPTR,#TABLE </p><p>
37、 MOVC A,@A+DPTR ;查表</p><p> MOV P1,A ;十位顯示</p><p><b> MOV A,B</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,A ;個(gè)位顯
38、示</p><p> MOV R7,#20</p><p> LOOP0: MOV TMOD,#01H ;置T0工作于方式0</p><p> MOV TH0,#3CH ;裝入計(jì)數(shù)初值</p><p> MOV TL0,#0B0H</p><p> SETB T
39、R0 ;啟動(dòng)定時(shí)器T0</p><p> JNB TF0,$ ;TF0=0,等待</p><p> CLR TF0 ;清TF0</p><p> DJNZ R7,LOOP0 ;循環(huán)20次</p><p> DEC
40、R2 ;減一</p><p> CJNE R2,#0FFH,LOOP1 ;倒計(jì)時(shí)</p><p> AJMP MAIN ;復(fù)位回到60秒初始</p><p><b> …</b></p><p><b> 5.軟件調(diào)試&l
41、t;/b></p><p> Keil C51 仿真器是一款利用KEIL C51 的IDE 集成開發(fā)環(huán)境作為仿真環(huán)境的廉價(jià)仿真器,是利用SST公司具有IAP功能的單片機(jī)SST89C58制作而成,主要是利用了SST89C58的IAP功能,所謂IAP功能是In application program 的英文縮寫,是在應(yīng)用編程的意思,通俗一點(diǎn)講就是:它可以通過(guò)串口將用戶的程序下載到單片機(jī)中,可以通過(guò)串口對(duì)單片機(jī)
42、進(jìn)行編程。它之所以具有這種功能,實(shí)際上它有兩塊程序flash區(qū),其中一塊flash中運(yùn)行的程序可以更改另外的一塊程序flash區(qū)中的程序,正是利用這一特性才用它作成了仿真器,我們把仿真器的監(jiān)控程序事先燒入SST89C58,監(jiān)控程序通過(guò)SST89C58的串口和PC通訊,當(dāng)使用KEIL C51的IDE環(huán)境仿真時(shí),用戶的程序通過(guò)串口被監(jiān)控程序?qū)懭雈lash程序區(qū)中,當(dāng)用戶設(shè)置斷點(diǎn)等操作仿真程序時(shí),flash程序中的用戶程序也在相應(yīng)的更改,從而
43、實(shí)現(xiàn)了仿真功能 。</p><p><b> 調(diào)試的主要方法 :</b></p><p> 1. 啟動(dòng)Keil c51 </p><p> 2. 新建一個(gè)工程。Project菜單——〉New project ,選擇好我們要保存的文件夾后,鍵入Frist 保存。接著彈出CPU類型選擇框,我們選擇最常用的AT89C51,按確定。</p&
44、gt;<p> 3. 在工程中加入文件。新建一個(gè)文件,文件菜單File——〉New,我們?cè)龠x擇:文件菜單File——〉Save As? (另存為)彈出 對(duì)話框后,我們文件名框中鍵入First.c(注意文件后綴名是 .c)保存。C文件建好啦。現(xiàn)在我們把文件加入到工程中去。 點(diǎn)擊Target 1前面的+號(hào),右鍵單擊Source Group 1——〉選擇Add Files to Group ,Source Group 1,選
45、擇添加 Add。編譯運(yùn)行,檢查程序是否有錯(cuò)誤。</p><p> 4.2 PROTEUS</p><p> Proteus是一款EDA軟件,該軟件具有模擬電路仿真,數(shù)字電路仿真,單片機(jī)以及外圍電路組成的系統(tǒng)的仿真,RS-232動(dòng)態(tài)仿真,I2C調(diào)試器,SPI調(diào)試器,鍵盤和LCD系統(tǒng)的仿真,以及各種虛擬儀器,如示波器,邏輯分析儀,信號(hào)發(fā)生器等。該軟件目前支持的單片機(jī)類型有:68000系列、
46、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM以及各種外圍芯片。該軟件還支持大量的存儲(chǔ)器和外圍芯片,所以,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件。</p><p> 調(diào)試方法:首先用Keil軟件將C編譯成HEX文件,打開Keil軟件,新建一個(gè)文檔,輸入C程序,保存成C格式文件,然后新建工程,連接單片機(jī)為AT89C51,選擇Options
47、for target,選擇OUTPUT子菜單,在Create HEX Fi前打鉤,DeBug子菜單中,Settings選擇ProteusVSM Simulator,USE前打鉤,再次運(yùn)行文件,成功后在目錄下會(huì)生成HEX文件,打開Proteus軟件,或直接點(diǎn)擊DSN文件,雙擊單片機(jī)模板,點(diǎn)擊文件夾式樣的圖標(biāo)選擇對(duì)應(yīng)的HEX驅(qū)動(dòng)文件,然后點(diǎn)擊開始,進(jìn)行調(diào)試</p><p><b> 6.總結(jié)與體會(huì)<
48、/b></p><p> 本次課程設(shè)計(jì)實(shí)現(xiàn)了用單片機(jī)AT89C51的定時(shí)器實(shí)現(xiàn)60s倒計(jì)時(shí)。為了簡(jiǎn)化線路、降低成本,采用以軟件為主的接口方法,即不使用專門的硬件譯碼器,而采用軟件程序進(jìn)行譯碼。對(duì)實(shí)驗(yàn)的結(jié)果我們得到了認(rèn)證,這種方法是可行的。</p><p> 在這次單片機(jī)課程設(shè)計(jì)中,我覺得最大的收獲就是提高了自己的動(dòng)手及思考解決問(wèn)題的能力,把平時(shí)學(xué)習(xí)的只是融會(huì)貫通,相互聯(lián)系,最后才
49、做出一個(gè)完整的課程設(shè)計(jì)。在仿真過(guò)程中卻發(fā)現(xiàn)并不是想象的那么簡(jiǎn)單,設(shè)計(jì)的過(guò)程中失敗了很多次,但通過(guò)自己的不懈努力最終獲得設(shè)計(jì)的成</p><p><b> 參考文獻(xiàn):</b></p><p> [1] 曹承志.微型計(jì)算機(jī)控制技術(shù).化學(xué)工業(yè)出版社. </p><p> [2] 李全利.單片機(jī)原理及應(yīng)用技術(shù).高等教育出版社</p>
50、<p> [3] 吳金榮. 8051單片機(jī)實(shí)踐與應(yīng)用. 清華大學(xué)出版社.</p><p> [4] 張迎輝 貢雪梅. 單片機(jī)實(shí)訓(xùn)教程. 北京大學(xué)出版社</p><p><b> [5] 校圖書館</b></p><p> 萬(wàn)方標(biāo)準(zhǔn)全文庫(kù);中國(guó)期刊網(wǎng)(CNKI);中文科技期刊數(shù)據(jù)庫(kù)[維普]</p><p&g
51、t; 附錄一 單片機(jī)60秒倒計(jì)時(shí)仿真電路</p><p><b> 附錄二 主程序</b></p><p> ORG 0000H14</p><p> AJMP MAIN</p><p> ORG 0030H</p><p> MAIN: MOV R2,#60
52、 ;計(jì)數(shù)初值</p><p> LOOP1: MOV A,R2 </p><p><b> MOV B,#10</b></p><p> DIV AB </p><p> MOV DPTR,#TABLE </p>
53、<p> MOVC A,@A+DPTR ;查表</p><p> MOV P1,A ;十位顯示</p><p><b> MOV A,B</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,A
54、 ;個(gè)位顯示</p><p> MOV R7,#20</p><p> LOOP0: MOV TMOD,#01H ;置T0工作于方式0</p><p> MOV TH0,#3CH ;裝入計(jì)數(shù)初值</p><p> MOV TL0,#0B0H</p><p&g
55、t; SETB TR0 ;啟動(dòng)定時(shí)器T0</p><p> JNB TF0,$ ;TF0=0,等待</p><p> CLR TF0 ;清TF0</p><p> DJNZ R7,LOOP0 ;循環(huán)20次</p><p
56、> DEC R2 ;減一</p><p> CJNE R2,#0FFH,LOOP1 ;倒計(jì)時(shí)</p><p> AJMP MAIN ;復(fù)位回到60秒初始</p><p> TABLE: DB 0C0H,0F9H,0A4H,0B0H</p><p&g
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)--基于at89c51的60秒倒計(jì)時(shí)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---基于at89c51的60秒倒計(jì)時(shí)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-基于at89c51的60秒倒計(jì)時(shí)設(shè)計(jì)
- 基于at89c51單片機(jī)的led數(shù)字倒計(jì)時(shí)器設(shè)計(jì)
- 單片機(jī)60s倒計(jì)時(shí)匯編語(yǔ)言
- 單片機(jī)60倒計(jì)時(shí)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)基于89c51的倒計(jì)時(shí)牌設(shè)計(jì)
- 課程設(shè)計(jì)--基于at89c51的99秒倒計(jì)時(shí)器設(shè)計(jì)
- 課程設(shè)計(jì)--基于at89c51的99秒倒計(jì)時(shí)器設(shè)計(jì)
- 60秒倒計(jì)時(shí)器-單片機(jī)課程設(shè)計(jì)
- 課程設(shè)計(jì)--基于AT89C51的99秒倒計(jì)時(shí)器設(shè)計(jì).doc
- 單片機(jī)課程設(shè)計(jì)--倒計(jì)時(shí)
- 60秒倒計(jì)時(shí)器-單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)-30s倒計(jì)時(shí)
- 單片機(jī)99s倒計(jì)時(shí)課程設(shè)計(jì)
- 電子倒計(jì)時(shí)定時(shí)器設(shè)計(jì)
- at89c51單片機(jī)課程設(shè)計(jì)-----搶答器
- 基于at89c51單片機(jī)定時(shí)鬧鐘設(shè)計(jì)
- 單片機(jī)【倒計(jì)時(shí)音樂鬧鐘】課程設(shè)計(jì)
- 單片機(jī)答辯倒計(jì)時(shí)器課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論