2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目錄</b></p><p><b>  引言3</b></p><p>  汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)的研究背景及現(xiàn)狀3</p><p>  搶答器目前存在的主要問題及課題意義3</p><p>  課題研究內(nèi)容及要求3</p><p>

2、  一.汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)設(shè)計(jì)方案及工作原理4 </p><p>  1.1 設(shè)計(jì)方案4 </p><p>  1.2 汽車轉(zhuǎn)彎燈工作原理4</p><p>  1.3 單片機(jī)系統(tǒng)的工作原理及設(shè)計(jì)5</p><p>  1.3.1 開關(guān)

3、狀態(tài)檢測(cè)5</p><p>  1.3.2 輸出控制5</p><p>  1.3.3 定時(shí)器和計(jì)數(shù)器5</p><p>  1.3.4 定時(shí)初始化7</p><p>  1.3.5 汽車轉(zhuǎn)彎燈顯示8</p><p>  1.3.6 汽車轉(zhuǎn)彎燈控制8</p><p>  1

4、.3.7 中斷系統(tǒng)8</p><p>  二.控制系統(tǒng)的硬件設(shè)計(jì)9</p><p>  2.1 單片機(jī)控制系統(tǒng)電路圖9</p><p>  2.1.1 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)框圖9</p><p>  2.1.2 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路PCB圖9</p><p>  2.1.3 汽車轉(zhuǎn)彎燈單

5、片機(jī)控制系統(tǒng)電路原理圖9</p><p>  2.1.4 直流穩(wěn)壓電源電路原理圖10</p><p>  2.2 單片機(jī)控制系統(tǒng)功能模塊的設(shè)計(jì)10</p><p>  2.2.1 電源電路10</p><p>  2.2.2 時(shí)鐘電路11</p><p>  2.2.3 復(fù)位電路12</p&

6、gt;<p>  2.2.4 鍵盤接口電路的設(shè)計(jì)13</p><p>  2.2.5 信號(hào)燈電路14</p><p>  2.2.6 故障監(jiān)控電路14</p><p>  2.2.7 報(bào)警電路15</p><p>  2.3 元器件清單15</p><p>  2.4 主要芯片介紹

7、17</p><p>  2.4.1 單片機(jī)特點(diǎn)17</p><p>  2.4.2 單片機(jī)各引腳介紹17</p><p>  2.4.3 單片機(jī)的功能介紹18</p><p>  三.汽車轉(zhuǎn)彎燈控制系統(tǒng)軟件設(shè)計(jì)20</p><p>  3.1 汽車轉(zhuǎn)彎燈控制系統(tǒng)流程圖20</p>&l

8、t;p>  3.1.1 汽車轉(zhuǎn)彎燈控制系統(tǒng)主程序流程圖20</p><p>  3.1.2 中斷服務(wù)程序流程圖21</p><p>  3.1.3控制系統(tǒng)鍵功能流程圖21</p><p>  3.2 軟件和程序設(shè)計(jì)22</p><p>  3.2.1 軟件設(shè)計(jì)22</p><p>  3.2.2

9、 程序說明22</p><p><b>  四.總結(jié)23</b></p><p>  4.1 軟件調(diào)試總結(jié)23</p><p>  4.2 單片機(jī)硬件功能實(shí)現(xiàn)的總結(jié)23</p><p>  4.3 仿真操作說明及現(xiàn)象的總結(jié)24</p><p><b>  參考文獻(xiàn)25

10、</b></p><p>  附 錄26-31(圖)</p><p><b>  引 言</b></p><p>  隨著單片機(jī)的日益發(fā)展,其應(yīng)用也越來越廣泛,通過對(duì)“汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)”設(shè)計(jì),可以對(duì)單片機(jī)的知識(shí)得到鞏固和擴(kuò)張。本設(shè)計(jì)是設(shè)計(jì)一個(gè)單片機(jī)控制系統(tǒng)。在汽車進(jìn)行左轉(zhuǎn)彎、右轉(zhuǎn)彎、剎車、合緊急開關(guān)、??康炔僮鲿r(shí),實(shí)現(xiàn)

11、對(duì)各種信號(hào)指示燈的控制。本設(shè)計(jì)主要是對(duì)單片機(jī)的并行輸入/輸出口電路的應(yīng)用,通過I/O口控制發(fā)光二極管的亮﹑滅﹑閃爍,加上一些復(fù)位電路﹑按鍵電路﹑驅(qū)動(dòng)電路來模擬汽車尾燈的功能。</p><p>  汽車在駕駛時(shí)有左轉(zhuǎn)彎、右轉(zhuǎn)彎、剎車、合緊急開關(guān)、停靠等操作。在左轉(zhuǎn)彎或右轉(zhuǎn)彎時(shí),通過轉(zhuǎn)彎操作桿應(yīng)使左轉(zhuǎn)開關(guān)或右轉(zhuǎn)開關(guān)合上,從而使左頭燈、儀表板左轉(zhuǎn)彎燈、左尾燈或右頭燈、儀表板右轉(zhuǎn)彎燈、右尾燈閃爍;合緊急開關(guān)時(shí)要求前面所述

12、的6個(gè)信號(hào)燈全部閃爍;汽車剎車時(shí),兩個(gè)尾燈點(diǎn)亮;如正當(dāng)轉(zhuǎn)彎時(shí)剎車,則轉(zhuǎn)彎時(shí)原應(yīng)閃爍的信號(hào)燈仍應(yīng)閃爍。以上閃爍,都是頻率為1Hz的低頻閃爍;在汽車??慷?块_關(guān)合上時(shí),左頭燈、右頭燈、左尾燈、右尾燈按頻率為10Hz的高頻閃爍。通過做實(shí)物,編寫程序,完成了設(shè)計(jì)的要求。通過該設(shè)計(jì),對(duì)單片機(jī)的認(rèn)識(shí)有了更進(jìn)一步的了解,對(duì)單片機(jī)的各個(gè)口的功能作用了解加深,對(duì)Protel的應(yīng)用更加熟練,對(duì)設(shè)計(jì)系統(tǒng)有了了解,掌握了一些設(shè)計(jì)方法,受益不少。</p&

13、gt;<p>  一.汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)設(shè)計(jì)方案及工作原理</p><p><b>  1.1 設(shè)計(jì)方案</b></p><p>  本次單片機(jī)的控制系統(tǒng)以AT89S52為控制器;鍵盤為輸入信號(hào),由于AT89S52本身的功能強(qiáng)大,汽車轉(zhuǎn)彎燈的驅(qū)動(dòng)用單片機(jī)的驅(qū)動(dòng)功能來完成。使得單片機(jī)的功能得到了充分的運(yùn)用;并且顯示電路從并行I/O口輸出,由限流電阻和

14、發(fā)光二極管組成,低電平使發(fā)光二極管導(dǎo)通,顯示出相應(yīng)的轉(zhuǎn)彎信號(hào);為提升了系統(tǒng)的可靠性,本方案中有故障檢測(cè)電路和報(bào)警電路,能對(duì)每條顯示電路進(jìn)行現(xiàn)場監(jiān)控,若有故障,發(fā)出報(bào)警信號(hào),具有一定的檢測(cè)功能。</p><p>  進(jìn)行仿真后,能清晰的看到在控制輸入信號(hào)的狀態(tài)下,相應(yīng)的信號(hào)燈發(fā)出轉(zhuǎn)彎的指示信號(hào)。本次設(shè)計(jì)對(duì)汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)地分析與設(shè)計(jì),對(duì)單片機(jī)控制系統(tǒng)進(jìn)行了仿真調(diào)試,達(dá)到了設(shè)計(jì)預(yù)期目的。</p>

15、<p>  1.2 汽車轉(zhuǎn)彎燈工作原理</p><p>  由定時(shí)器/計(jì)數(shù)器與中斷系統(tǒng)的聯(lián)合組成控制系統(tǒng)的工作原理。如汽車上有一個(gè)轉(zhuǎn)彎控制桿,其中有三個(gè)位置:中間位置,汽車不轉(zhuǎn)彎;向上,汽車左轉(zhuǎn);向下汽車右轉(zhuǎn)。轉(zhuǎn)彎時(shí),規(guī)定左右尾燈、左右頭燈儀表板上2個(gè)指示燈相應(yīng)地發(fā)出閃爍信號(hào)。應(yīng)急開關(guān)合上時(shí), 6個(gè)信號(hào)燈都應(yīng)閃爍。汽車剎車時(shí),2個(gè)尾燈發(fā)出不閃爍信號(hào)。如正當(dāng)轉(zhuǎn)彎時(shí)剎車,轉(zhuǎn)彎時(shí)原應(yīng)閃爍的信號(hào)仍應(yīng)閃爍。它

16、們都是頻率為1Hz低頻閃爍,在汽車??慷?块_關(guān)合上時(shí),左頭燈、右頭燈、左尾燈、右尾燈按頻率為10Hz的高頻閃爍。由上所述,各種情況作操作時(shí),信號(hào)燈應(yīng)輸出信號(hào)列于表1.1。</p><p>  表1.1 汽車駕駛操縱與信號(hào)</p><p>  1.3 單片機(jī)系統(tǒng)的工作原理及設(shè)計(jì)</p><p>  1.3.1 開關(guān)狀態(tài)檢測(cè)</p><p&g

17、t;  開關(guān)狀態(tài)檢測(cè),對(duì)AT89S52來說是輸入關(guān)系,可輪流檢測(cè)每個(gè)開關(guān)狀態(tài),以每個(gè)開關(guān)的狀態(tài)讓相應(yīng)的發(fā)光二極管指示,采用JNB P1.X,REL 指令來完成;也可以一次性檢測(cè)五路開關(guān)狀態(tài),讓它指示,可以用MOV A,P1 指令一次把P1 端口的狀態(tài)全部讀入,取低5位的狀態(tài)來指示。</p><p>  1.3.2 輸出控制</p><p>  以發(fā)光二極管D1—D6 來指示,此設(shè)計(jì)用

18、SETB P0.X 和CLR P0.X 指令來完成,也可以用指令MOV P0,#111XXXXXB 方法來實(shí)現(xiàn)。</p><p>  1.3.3 定時(shí)器和計(jì)數(shù)器</p><p>  根據(jù)任務(wù)設(shè)計(jì)要求:會(huì)用到定時(shí)器。信號(hào)的控制是定時(shí)器與中斷系統(tǒng)的聯(lián)合使用得以實(shí)現(xiàn)。單片機(jī)的控制系統(tǒng)應(yīng)用中,定時(shí)器是必需的,在汽車轉(zhuǎn)彎燈的控制中也是必不可少。定時(shí)有三種選擇方法。</p><

19、;p><b>  (1)軟件的定時(shí)</b></p><p>  它是靠執(zhí)行一個(gè)循環(huán)程序以進(jìn)行時(shí)間的延遲。軟件定時(shí)的優(yōu)點(diǎn)是時(shí)間精確,且不需外加硬件電路。但它要增加CPU開銷,因此軟件定時(shí)的時(shí)間不能太長。此外,軟件定時(shí)方法有時(shí)候無法使用。</p><p><b>  (2)硬件的定時(shí)</b></p><p>  時(shí)間較長

20、的定時(shí),常使用硬件電路完成。硬件定時(shí)方法的優(yōu)點(diǎn)是定時(shí)功能全部由硬件電路完成,不需要占CPU的時(shí)間。用元件參數(shù)來調(diào)節(jié)定時(shí)時(shí)間,這方面使用上不夠靈活方便。</p><p>  (3)可編程定時(shí)器的定時(shí)</p><p>  它是通過對(duì)系統(tǒng)時(shí)鐘脈沖的計(jì)數(shù)來實(shí)現(xiàn)的。計(jì)數(shù)值由程序設(shè)定,改變計(jì)數(shù)值,同時(shí)也改變了定時(shí)時(shí)間,用起來既靈活且方便。此外,采用計(jì)數(shù)方法實(shí)現(xiàn)定時(shí),可編程定時(shí)器都兼有計(jì)數(shù)功能,能對(duì)外來

21、脈沖進(jìn)行計(jì)數(shù)。</p><p>  在AT89S52內(nèi)部除了有并行和串行I/O接口外,在單片機(jī)內(nèi)部共有2個(gè)可編程的定時(shí)器和計(jì)數(shù)器,稱定時(shí)器/計(jì)數(shù)器0和定時(shí)器/計(jì)數(shù)器1,這兩個(gè)計(jì)數(shù)器由TH0,TL0,TH1,TL1兩個(gè)8位的RAM單元組成,即每個(gè)計(jì)數(shù)器都是16位的計(jì)數(shù)器,最大的計(jì)數(shù)量時(shí)65536。</p><p>  定時(shí)器/計(jì)數(shù)器計(jì)數(shù)功能和定時(shí)功能:</p><p>

22、;<b>  (1)計(jì)數(shù)器功能</b></p><p>  記數(shù)是指對(duì)外部事件進(jìn)行計(jì)數(shù)。它的發(fā)生以輸入脈沖表示,計(jì)數(shù)功能的實(shí)質(zhì)就是對(duì)外來的脈沖進(jìn)行計(jì)數(shù)。AT89S52芯片有T0(P3.4)和T1(P3.5)兩個(gè)信號(hào)引腳,是這兩個(gè)計(jì)數(shù)器的計(jì)數(shù)輸入端。外部輸入的脈沖在負(fù)跳變時(shí)有效,進(jìn)行計(jì)數(shù)器加1(加法計(jì)數(shù))。</p><p>  AT89S52在每個(gè)機(jī)器周期的S5P2拍節(jié)

23、對(duì)外部計(jì)數(shù)脈沖進(jìn)行采樣。前一個(gè)機(jī)器周期采用為高電平,后一個(gè)機(jī)器周期采樣為低電平,是一個(gè)有效的計(jì)數(shù)脈沖。在下一機(jī)器周期的S3P1進(jìn)行計(jì)數(shù)。采樣計(jì)數(shù)脈沖是在2個(gè)機(jī)器周期進(jìn)行的。計(jì)數(shù)脈沖頻率不能高于振蕩脈沖頻率的1/24。</p><p><b>  (2)定時(shí)器功能</b></p><p>  實(shí)際也是通過計(jì)數(shù)器來實(shí)現(xiàn)的,但此時(shí)的計(jì)數(shù)脈沖來自單片機(jī)的內(nèi)部,也每個(gè)機(jī)器周期計(jì)

24、數(shù)器加1。一個(gè)機(jī)器周期等于12個(gè)振蕩脈沖周期,因此計(jì)數(shù)頻率為振蕩頻率的1/12。單片機(jī)采用12MHz晶體,計(jì)數(shù)頻率為1MHz。每微妙計(jì)數(shù)器加1。根據(jù)計(jì)數(shù)值計(jì)算出定時(shí)時(shí)間,也可以反過來按定時(shí)時(shí)間的要求計(jì)算出計(jì)數(shù)器的預(yù)置值。</p><p>  它是一個(gè)二進(jìn)制的加1計(jì)數(shù)器。在計(jì)數(shù)器計(jì)滿回零時(shí)能自動(dòng)產(chǎn)生溢出中斷請(qǐng)求。則已經(jīng)完成。T1、T2的最大計(jì)數(shù)值65536-1,需65535個(gè)脈沖才能把它們從全“0”狀態(tài)變?yōu)槿?”

25、狀態(tài)。</p><p>  輸一個(gè)脈沖,計(jì)數(shù)器加1,當(dāng)加到計(jì)數(shù)器各位全為1時(shí),再去輸一個(gè)脈沖,計(jì)數(shù)器各位就變?yōu)槿?,發(fā)出溢出信號(hào),使標(biāo)志置1,此時(shí)向CPU申請(qǐng)中斷。具體結(jié)構(gòu)如圖1.2所示:</p><p>  圖1.2 定時(shí)器/記數(shù)器的結(jié)構(gòu)</p><p>  1.3.4 定時(shí)初始化</p><p>  定時(shí)主要與編程有關(guān)。編程對(duì)定時(shí)器控

26、制寄存器(TCON)、工作方式控制寄存器(TMOD)和中斷允許控制寄存器(IE)進(jìn)行操作。</p><p>  (1)定時(shí)器控制寄存器(TCON)</p><p>  TCON寄存器既參與中斷控制又參與定時(shí)控制。其中有關(guān)定時(shí)的控制位共有4位:</p><p>  TF0和TF1----記數(shù)溢出標(biāo)志位</p><p>  TR0和TR1----

27、定時(shí)器運(yùn)行控制位</p><p>  TR0(TR1)=0----停止定時(shí)器/計(jì)數(shù)器工作</p><p>  TR0(TR1)=1----啟動(dòng)定時(shí)器/計(jì)數(shù)器工作</p><p>  該位根據(jù)需要以軟件方法使其置“1”或清“0”。</p><p>  (2)中斷允許控制寄存器</p><p>  IE寄存器中與定時(shí)器/計(jì)

28、數(shù)器有關(guān)的位置介紹:</p><p>  EA----中斷允許總控制位</p><p>  ET0和ET1----定時(shí)/計(jì)數(shù)中斷允許控制位</p><p>  ET0(ET1)=0 禁止定時(shí)/記數(shù)中斷</p><p>  ET0(ET1)=1 允許定時(shí)/記數(shù)中斷</p><p>  利用MCS-51系列單片機(jī)的可

29、編程定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)來實(shí)現(xiàn)燈閃爍的延時(shí)和故障檢測(cè)。</p><p>  (3)工作方式控制寄存器(TMOD)</p><p>  TMOD寄存器專用寄存器,設(shè)定兩個(gè)定時(shí)器/計(jì)數(shù)器的工作方式。它的低半字節(jié)定義定時(shí)器/計(jì)數(shù)器0,高半字節(jié)定義定時(shí)器/計(jì)數(shù)器1。各位定義如表1.3所示:</p><p>  表1.3 TMOD各位定義</p><p

30、>  其中:GATE----門控位</p><p>  GATE=0 以運(yùn)行控制位TR啟動(dòng)定時(shí)器</p><p>  GATE=1 以外中斷請(qǐng)求信號(hào)(INT1或INT0)啟動(dòng)定時(shí)器</p><p>  C/----定時(shí)方式或計(jì)數(shù)方式選擇位</p><p>  C/=0 定時(shí)工作方式</p><p>  C/

31、=1 計(jì)數(shù)工作方式</p><p>  M1M0----工作方式選擇位</p><p>  M1M0=00 方式0</p><p>  M1M0=01 方式1</p><p>  M1M0=10 方式2</p><p>  M1M0=11 方式3</p><p><b>  初值計(jì)算

32、:</b></p><p>  (1)設(shè)為工作方式0,定時(shí)時(shí)間為10ms,使燈延時(shí)閃爍。</p><p>  若使用定時(shí)器T0,方式1,10ms定時(shí),fosc=12MHz。</p><p>  則初值X滿足(216-X)×1=10000</p><p>  X=35536→1000101011010000→8AD0H&l

33、t;/p><p>  (2設(shè)計(jì)中利用定時(shí)器/計(jì)數(shù)器0,一個(gè)軟件計(jì)數(shù)器產(chǎn)生低頻(1HZ)閃爍功能。</p><p>  (3)利用定時(shí)器/計(jì)數(shù)器0來產(chǎn)生為時(shí)10ms的定時(shí)信號(hào),以實(shí)現(xiàn)高頻(10HZ)閃爍功能。</p><p>  (4)注意在用工作方式1時(shí),我們必須要重新裝載初值。</p><p>  1.3.5 汽車轉(zhuǎn)彎燈顯示</p>

34、;<p>  在汽車轉(zhuǎn)彎或應(yīng)急狀態(tài)下,外部信號(hào)燈和儀表板它們指示燈的閃爍頻率為1HZ,稱低頻信號(hào)。當(dāng)??块_關(guān)合上時(shí),外部信號(hào)燈以10HZ頻率閃爍此時(shí)為高頻信號(hào)。</p><p>  1.3.6 汽車轉(zhuǎn)彎燈控制</p><p>  汽車轉(zhuǎn)彎燈設(shè)計(jì)5個(gè)按鍵控制信號(hào)燈的轉(zhuǎn)向、???、應(yīng)急等。按鍵安排見下:</p><p><b>  S1鍵為剎車開

35、關(guān);</b></p><p><b>  S2鍵為緊急開關(guān);</b></p><p><b>  S3鍵為??块_關(guān);</b></p><p>  S4鍵為左轉(zhuǎn)彎開關(guān);</p><p>  S5鍵為右轉(zhuǎn)彎開關(guān);</p><p>  1.3.7 中斷系統(tǒng)</p

36、><p>  單片機(jī)中斷技術(shù)主要用于實(shí)時(shí)控制,在單片機(jī)上有兩個(gè)引腳,即INT0、INT1。外部的中斷信號(hào)通過這兩個(gè)引腳輸入到單片機(jī),和單片機(jī)的定時(shí)器一樣,對(duì)中斷系統(tǒng)的處理需要通過C51的軟件編程實(shí)現(xiàn)。利用MCS-51系列單片機(jī)的可編程定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)來實(shí)現(xiàn)燈閃爍的延時(shí)和故障檢測(cè)。</p><p>  它的重要作用有如下四點(diǎn):</p><p>  第一,高速CPU和

37、低速外設(shè)之間的配合。利用中斷方式進(jìn)行的I/O口操作,在宏觀上可以看成CPU和外設(shè)的并行工作。</p><p>  第二,實(shí)現(xiàn)故障的緊急處理。當(dāng)外設(shè)發(fā)生故障時(shí),可以利用中斷系統(tǒng)請(qǐng)求CPU及時(shí)處理這些故障。</p><p>  第三,可以實(shí)現(xiàn)實(shí)時(shí)控制。</p><p>  第四,便于人機(jī)聯(lián)系。操作人員可以利用鍵盤等實(shí)現(xiàn)中斷,完成人工介入。</p><

38、p>  二.控制系統(tǒng)的硬件設(shè)計(jì)</p><p>  2.1 單片機(jī)控制系統(tǒng)電路圖</p><p>  2.1.1 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)框圖</p><p>  汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路是由單片機(jī)AT89S52、復(fù)位、電源、時(shí)鐘、LED顯示電路、故障檢測(cè)電路、按鍵電路構(gòu)成。電源電路給控制相關(guān)電路提供所需電源;復(fù)位電路供上電或按鍵時(shí)復(fù)位用。當(dāng)要求重新啟

39、動(dòng)單片機(jī)或者單片機(jī)處于死循環(huán)時(shí),都可以由此電路來實(shí)現(xiàn);時(shí)鐘電路用來產(chǎn)生時(shí)鐘脈沖信號(hào),供工作使用;通過并行I/O口構(gòu)成鍵盤和顯示電路,輸入程序,即可實(shí)現(xiàn)汽車轉(zhuǎn)彎燈中各信號(hào)燈的功能操作;系統(tǒng)的可靠性有所提高。汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)框圖如圖2.1所示。</p><p>  圖2.1 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)框圖</p><p>  2.1.2 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路PCB圖</

40、p><p>  汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路PCB圖見附錄2。</p><p>  2.1.3 汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路原理圖</p><p>  汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路原理圖見附錄3。</p><p>  2.1.4 直流穩(wěn)壓電源電路原理圖</p><p>  直流穩(wěn)壓電源電路原理圖見附錄4。</p&

41、gt;<p>  2.2 單片機(jī)控制系統(tǒng)功能模塊的設(shè)計(jì)</p><p>  2.2.1 電源電路</p><p>  在所學(xué)的電源中的整元件類型可分為電子管穩(wěn)壓電路、三極管穩(wěn)壓電路、可控硅穩(wěn)壓電路,集成穩(wěn)壓電路等;根據(jù)調(diào)整元件與向載連接方法,可分為并聯(lián)型和串聯(lián)型;根據(jù)調(diào)整元件工作狀態(tài)不同,可分為線性和開關(guān)穩(wěn)壓電路。單片機(jī)系統(tǒng)中使用的集成電路器件大多數(shù)在5V電源電壓工作。隨

42、著集成制造技術(shù)的發(fā)展以及數(shù)字式電子元器件的微小型化,集成電路元器件采用更先進(jìn)精細(xì)的制造工藝,在減小集成芯片幾何尺寸的同時(shí),降低工作電壓。我們學(xué)習(xí)的小功率直流穩(wěn)壓電源電路由電源變壓器、整流電路、濾波電路、穩(wěn)壓電路等</p><p>  四部分組成,如圖2.2所示。 </p><p>  圖2.2 直流穩(wěn)壓電源基本電路框圖</p><p>  直流穩(wěn)壓電源的各基本電路

43、如下:</p><p><b>  (1)變壓器</b></p><p>  它的作用是將電網(wǎng)220V的交流電壓V1變換成整流濾波電路所需要的交流電壓V2。變壓器副邊與原邊的功率比如式(2.1)所示。</p><p><b>  (2.1)</b></p><p>  式(4.1)中,η為變壓器的效

44、率。</p><p><b>  (2)穩(wěn)壓電路</b></p><p>  常見的集成穩(wěn)壓器有固定式三端穩(wěn)壓器與可調(diào)式三端穩(wěn)壓器。此電路部分采用集成穩(wěn)壓器。固定式三端穩(wěn)壓器的常見產(chǎn)品有兩種:CW78**系列穩(wěn)壓器輸出固定的正點(diǎn)壓,如7805輸出為+5V,7812輸出為+12V; CW79**系列穩(wěn)壓器輸出固定的負(fù)電壓,如7905輸出為-5V,7912輸出為-12V。

45、輸出端接電容C2進(jìn)一步濾去紋波,輸出端接電容C3能改善負(fù)載的瞬態(tài)影響,使電路穩(wěn)定工作。</p><p><b>  (3)整流濾波電路</b></p><p>  整流二極管D1—D4組成單向橋式整流電路,將交流電壓V2變成脈動(dòng)的直流電壓,再經(jīng)過濾波電容C1,C2濾去紋波,輸出直流電壓Vi。Vi與交流電壓V2的有效值的關(guān)系如式(2.2)所示。</p>&

46、lt;p><b>  (2.2)</b></p><p>  每只整流二極管承受的最大反向電壓如式所示。</p><p><b>  (2.3)</b></p><p>  按課題設(shè)計(jì)要求,我們需要的能輸出5V—12V的直流電源,其原理圖如圖2.3所示。</p><p>  圖2.3 直流穩(wěn)

47、壓電源電路圖</p><p>  2.2.2 時(shí)鐘電路</p><p>  采用單片機(jī)內(nèi)部晶振。如圖2.4所示。在MCS-51系列單片機(jī)內(nèi)部有一個(gè)高增益反向放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。而在芯片外部XTAL1和 XTAL2之間跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。外接晶體(石英或陶瓷,陶瓷的精度不高,但價(jià)格便宜)振蕩器以及電

48、容C1和C2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中, C1和C2的大小會(huì)對(duì)振蕩器頻率的高低、振蕩器的穩(wěn)定性、起振的快速性和溫度特性有一定的影響。因此建議在采用石英晶體振蕩器時(shí)C=10+/-10pF,陶瓷振蕩器時(shí),C=40+/-10pF,典型值為40pF。在設(shè)計(jì)電路板時(shí),振蕩器和電容應(yīng)盡量安裝得與單片機(jī)靠近,以減小寄生電容的存在更好的保障振蕩器穩(wěn)定、可靠的工作。</p><p>  圖2.4 時(shí)鐘振蕩電路&l

49、t;/p><p>  由多片單片機(jī)組成的系統(tǒng)中,為了各單片機(jī)間時(shí)鐘信號(hào)的同步,常引入統(tǒng)一的外部脈沖信號(hào)作為各單片機(jī)的振蕩脈沖。將外部震蕩器的信號(hào)接至XTAL2內(nèi)部時(shí)鐘發(fā)生器的輸入端,而內(nèi)部反向發(fā)大器的輸入端XTAL1應(yīng)接地, XTAL2的邏輯電平不是TTL電平,所以需要外接一個(gè)上拉電阻。因?yàn)檎麄€(gè)電子鐘只用一塊單片機(jī),不涉及時(shí)刻信號(hào)同步問題,所以此種電路我們不選用。如圖2.5所示。</p><p&g

50、t;  圖2.5 外部時(shí)鐘源接法</p><p>  2.2.3 復(fù)位電路</p><p>  上電復(fù)位電路如圖2.6所示,是利用外部復(fù)位電路實(shí)現(xiàn)。 振蕩器啟動(dòng)時(shí)間不超過10ms。在加電情況下,這個(gè)電可以使單片機(jī)復(fù)位。按鍵手動(dòng)復(fù)位又分按鍵脈沖電平復(fù)位和按鍵電平復(fù)位,如圖2.7,2.8。電平復(fù)位將復(fù)位端通過電阻與Vcc相連,按鍵脈沖復(fù)位是利用RC分電路產(chǎn)生正脈沖來達(dá)到復(fù)位的。在按鍵電平復(fù)

51、位和按鍵脈沖復(fù)位兩種簡單的復(fù)位電路中,干擾易串入復(fù)位端,在大多數(shù)情況下,不會(huì)造成單片機(jī)的錯(cuò)誤復(fù)位,但會(huì)引起內(nèi)部寄存器錯(cuò)誤復(fù)位,這里可在復(fù)位端引腳上接一個(gè)去藕電容。</p><p>  電阻、電容參數(shù)適宜于6MHz晶振,能保證復(fù)位信號(hào)與電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。我們采用按鍵電平復(fù)位的方法,電路如圖2.8。</p><p>  圖2.6上電復(fù)位電路

52、 </p><p>  圖2.7 按鍵脈沖復(fù)位電路</p><p>  圖2.8 按鍵電平復(fù)位電路 </p><p>  2.2.4 鍵盤接口電路的設(shè)計(jì)</p><p>  根據(jù)設(shè)計(jì)的要求,本設(shè)計(jì)選用獨(dú)立式鍵盤。其工作原理為,單片機(jī)引腳作為輸入使用,首先置“1”。當(dāng)鍵沒有被按下時(shí)

53、,單片機(jī)引腳上為高電平;而當(dāng)鍵被按下去后,引腳接地,單片機(jī)引腳上為低電平。是否有鍵按下,以及被按下的是哪一個(gè)組成鍵盤的按鍵有觸點(diǎn)式和非觸點(diǎn)式倆種。如圖2.9所示。當(dāng)開關(guān)D斷開時(shí),P1.0輸入為高電平;D閉合后,P1.0輸入為低電平。如圖2.10所示是電路板上按鍵的接法,5個(gè)按鍵分別接到P1.0、P1.1、P1.2、P1.3和P1.4。對(duì)于這種接法,各程序可以采用不斷查詢的方法,其功能就是:檢測(cè)是否有鍵閉合,判斷鍵號(hào)并轉(zhuǎn)入相應(yīng)的鍵處理。&

54、lt;/p><p>  圖2.9 獨(dú)立式鍵盤原理圖</p><p>  圖2.10 電路板上按鍵的接法</p><p>  2.2.5 信號(hào)燈電路</p><p>  LED具有二極管的特性,但在導(dǎo)通之后會(huì)發(fā)光,稱之為發(fā)光二極管。與普通的燈泡一樣,LED導(dǎo)通后,隨著其倆端電壓的增加,電流急劇增加,所以,必須給LED串聯(lián)一個(gè)限流電阻,否則一旦

55、通電,LED會(huì)被燒壞。要用89S52單片機(jī)來控制LED,顯然這個(gè)LED必須要與89S52單片機(jī)的某個(gè)腳相連。89S52單片機(jī)上除了基本連線必須用</p><p>  到的6個(gè)腳,還有34個(gè)引腳。這里把LED與89S52單片機(jī)的P0腳相連。本次設(shè)計(jì)中按照?qǐng)D2.11的接法,當(dāng)AT89S52單片機(jī)的第1腳是高電平時(shí),LED不亮,當(dāng)?shù)?腳是低電平時(shí),LED亮。但是在汽車轉(zhuǎn)彎燈里要根據(jù)汽車方向來控制信號(hào)燈,而實(shí)現(xiàn)LED的亮

56、與滅。</p><p>  圖2.11 信號(hào)燈電路</p><p>  2.2.6 故障監(jiān)控電路</p><p>  如圖2.12所示。是這類故障監(jiān)控電路的方案之一,它利用T0作檢測(cè)輸入,只增加1個(gè)晶體管和幾個(gè)電阻。假定其中一個(gè)信號(hào)燈是受控?cái)嚅_的(輸出口線送高電平),而其余信號(hào)燈皆受控接通。這時(shí)晶體管Q1的6個(gè)輸入端中有5個(gè)是低電平。</p>&l

57、t;p>  圖2.12 故障監(jiān)控電路</p><p>  讓單片機(jī)發(fā)出控制使所有信號(hào)燈都接通,則Q1應(yīng)截止,測(cè)試T0應(yīng)呈高電平。如果這時(shí)存在控制線與+5伏電源短路或驅(qū)動(dòng)晶體管斷路等故障,則Q1仍導(dǎo)通,T0仍呈低電平,表示線路中存在著另一類故障。這種故障監(jiān)控功能很容易靠軟件來實(shí)現(xiàn)。</p><p>  2.2.7 報(bào)警電路</p><p>  當(dāng)故障監(jiān)控電路

58、檢測(cè)到有故障時(shí),系統(tǒng)設(shè)有報(bào)警電路中的蜂鳴器會(huì)發(fā)出響聲。報(bào)警電路如圖2.13所示。</p><p>  圖2.13 報(bào)警電路</p><p>  2.3 元器件清單</p><p>  汽車轉(zhuǎn)彎燈元器件清單如表2.1。</p><p>  表2.1 汽車轉(zhuǎn)彎燈元器件清單</p><p>  電源電路元器件清單如表2

59、.2。</p><p>  表2.2 電源電路元器件清單</p><p>  2.4 主要芯片介紹</p><p>  2.4.1 單片機(jī)特點(diǎn) </p><p>  AT89S52單片機(jī)特點(diǎn)如表2.4.1所示。</p><p>  表2.4.1 AT89S52單片機(jī)特點(diǎn)</p><p>

60、  AT89S52有40引腳雙列直插式填和44引腳封裝方式。方型封裝有4個(gè)引腳(標(biāo)有NC)是不連線的,故在連接時(shí)應(yīng)注意。它在一塊小芯片上,有CPU、存儲(chǔ)器、I/O口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等。</p><p>  2.4.2 單片機(jī)各引腳介紹</p><p>  (1) VCC:電源。</p><p>  (2) GND:接地。</p><p

61、>  (3) P0口:是一個(gè)8位漏極開路的雙向I/O口。</p><p>  (4) P1口:是一個(gè)具有內(nèi)部上拉電路的8位雙向I/O口。</p><p>  (5) P2口:是一個(gè)具有內(nèi)部上拉電路的8位雙向I/O口,P2口輸出緩沖器能吸入/放出4個(gè)TTL輸入。訪問外部程序存儲(chǔ)器及使用16位地址的是數(shù)據(jù)存儲(chǔ)器(MOVX@DPTR)時(shí),P2口輸出高8位地址。這種情況下,當(dāng)不置“1”時(shí),P

62、2口使用強(qiáng)大的內(nèi)部上拉電路。訪問使用8位地址的外部存儲(chǔ)器(MOVX @RI)時(shí),P2口輸出P2口鎖存器的內(nèi)容。</p><p>  (6) P3口:是一個(gè)具有內(nèi)部上拉電路的8位雙向I/O口,P3輸出緩沖器能吸入/放出4個(gè)TTL輸入。Flash編程及檢驗(yàn)時(shí),P3口也接收一些控制信號(hào)。</p><p>  表2.4.2 AT89S52的P3口各種專用功能表</p><p

63、>  (7) RST:復(fù)位端。當(dāng)振蕩器工作時(shí),此時(shí)高電平將系統(tǒng)復(fù)位。</p><p>  (8) ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),ALE(允許地址鎖存)是一個(gè)用于鎖存地址的低8位字節(jié)的輸出脈沖。</p><p>  (9) PSEN:外部程序存儲(chǔ)器讀選取通信號(hào)。</p><p> ?。?0) EA/Vpp:訪問外部程序存儲(chǔ)器允許端。 </p>

64、<p>  (11) XTAL1:振蕩器反向放大器輸入端和內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器輸出端。</p><p>  2.4.3 單片機(jī)的功能介紹</p><p>  AT89S52與89C51相比新增加很多功能,性能有了較大提升,價(jià)格基本不變化,甚至比89C51更低。新功能主要有:</p><p>  (1) ISP在線編程功

65、能,是一個(gè)強(qiáng)大易用的功能。 </p><p>  (2) 最高工作頻率為33MHz,從而具有了更快的計(jì)算速度。</p><p>  (3) 有雙工UART串行通道。</p><p>  (4) 內(nèi)部集成看門狗計(jì)時(shí)器。</p><p>  (5) 雙數(shù)據(jù)指示器。 </p><p>  (6) 電源關(guān)閉標(biāo)識(shí)。 </p

66、><p>  (7) 全新的加密算法,這就可以有效的保護(hù)不被侵犯。</p><p>  兼容性方面,AT89S52向下完全兼容51全部字系列產(chǎn)品。比如8051、89C51等等早期MCS-51兼容產(chǎn)品。網(wǎng)絡(luò)教程上的程序在89S52上一樣可以照常運(yùn)行,是所謂的向下兼容。AT89S52與89C51相比,具體優(yōu)勢(shì)如下:</p><p>  (1) 序存儲(chǔ)器寫入方式</p&

67、gt;<p>  寫入程序方式不同,89C51只支持并行寫入。需要VPP燒寫高壓。AT89S52則支持ISP在線可編程寫入技術(shù)!串行寫入、速度相當(dāng)快、穩(wěn)定性好,燒寫電壓也僅僅需要4~5V即可。</p><p><b>  (2) 范圍</b></p><p>  AT89S52電源范圍寬達(dá)4.0~5.0V。</p><p><

68、;b>  (3) 性能</b></p><p>  AT89S52的性能遠(yuǎn)高于89C5*,89S5*系列支持最高高達(dá)33MHz的工作率。而89C51工作頻率范圍最高只支持到24MHz。</p><p><b>  (4) 功能</b></p><p>  89S5*系列的加密算法,使對(duì)于89S52的解密變的不可能。程序不易外漏

69、,這樣就可以有效的保護(hù)知識(shí)產(chǎn)權(quán)。</p><p><b>  (5) 兼容性</b></p><p>  用89S5*可以代89C5*使用,相同的程序,運(yùn)行結(jié)果一樣。89S5*兼容性很好。</p><p><b>  (6) 干擾性</b></p><p>  由于S5*內(nèi)部集成看門狗計(jì)時(shí)器,比89

70、C51那樣外接看門狗單元電路要好。 </p><p>  三.汽車轉(zhuǎn)彎燈控制系統(tǒng)軟件設(shè)計(jì)</p><p>  3.1 汽車轉(zhuǎn)彎燈控制系統(tǒng)流程圖</p><p>  3.1.1 汽車轉(zhuǎn)彎燈控制系統(tǒng)主程序流程圖</p><p>  控制系統(tǒng)主程序流程圖如圖3.1所示。</p><p>  圖3.1 控制系統(tǒng)主程序流程

71、圖</p><p>  3.1.2 中斷服務(wù)程序流程圖</p><p>  中斷服務(wù)的程序流程圖如圖3.2所示。</p><p>  圖3.2 中斷服務(wù)的程序流程圖</p><p>  3.1.3控制系統(tǒng)鍵功能流程圖</p><p>  鍵的功能程序流程圖如圖3.3所示。</p><p> 

72、 圖3.3 鍵的功能程序流程圖</p><p>  3.2 軟件和程序設(shè)計(jì)</p><p>  3.2.1 軟件設(shè)計(jì)</p><p>  單片機(jī)的應(yīng)用開發(fā),除了保證硬件電路的正確連接以外,更重要的工作是進(jìn)行軟件的開發(fā)。單片機(jī)與其他微型計(jì)算機(jī)一樣,若沒有軟件的支持,所設(shè)計(jì)產(chǎn)品就沒有什么用途。在開發(fā)時(shí),要掌握一定的程序設(shè)計(jì)和開發(fā)方法。 </p>

73、<p>  3.2.2 程序說明</p><p><b>  原理圖按鍵連線:</b></p><p><b>  P1.0=剎車;</b></p><p><b>  P1.1=緊急;</b></p><p><b>  P1.2=???;</b&g

74、t;</p><p><b>  P1.3=左轉(zhuǎn);</b></p><p><b>  P1.4=右轉(zhuǎn);</b></p><p>  說明:鍵值是根據(jù)P1的狀態(tài)來確定的。</p><p>  例P1=00011110,表明剎車鍵按下,它的鍵值是0x1e(只看后面五位),程序清單見附錄1。</p

75、><p><b>  四.總結(jié)</b></p><p>  4.1 軟件調(diào)試總結(jié)</p><p>  對(duì)應(yīng)用程序進(jìn)行排錯(cuò)調(diào)試就是對(duì)已經(jīng)進(jìn)行過硬件檢查的試驗(yàn)板和翻譯成機(jī)器碼的應(yīng)用程序,還要進(jìn)行聯(lián)合排錯(cuò)和調(diào)試檢查。目前常用的排錯(cuò)、調(diào)試方法有兩種,一是用單片機(jī)仿真開發(fā)裝置與試驗(yàn)板聯(lián)機(jī)提供排錯(cuò)、調(diào)試手段,具體的方法有單步運(yùn)行、斷點(diǎn)運(yùn)行、跟蹤運(yùn)行、全速運(yùn)行

76、等。其中單步運(yùn)行方法是使所編制的程序指令僅執(zhí)行一條就停止下來,檢查試驗(yàn)板和應(yīng)用程序中的錯(cuò)誤,然后再單步執(zhí)行下一條指令;斷點(diǎn)運(yùn)行方法是在程序中設(shè)置斷點(diǎn),使得當(dāng)程序執(zhí)行到斷點(diǎn)處時(shí)停止,供設(shè)計(jì)者檢查試驗(yàn)板和應(yīng)用程序中的錯(cuò)誤;跟蹤運(yùn)行方法是應(yīng)用程序指令一條一條地執(zhí)行,開發(fā)裝置攝取運(yùn)行每一條指令的地址、單片機(jī)各部分?jǐn)?shù)據(jù)、I/O端口等處信息,供調(diào)試者隨時(shí)停止程序,對(duì)各種信息進(jìn)行檢查和修改;全速運(yùn)行方法是實(shí)時(shí)地運(yùn)行用戶程序,可以檢查用戶程序最終執(zhí)行結(jié)

77、果,也可用μVision2軟件進(jìn)行程序的調(diào)試。</p><p>  在這次硬件仿真中,應(yīng)用到了Proteus 軟件。先打開軟件,找到所需元器件,把元器件調(diào)入,連線,下載程序到AT89S52芯片中,運(yùn)行,根據(jù)不同的按鍵按下的情況的不同,可直觀的看到相應(yīng)的信號(hào)燈亮或閃爍。在此,我們可以先把方案在軟件中調(diào)試,確定方案的可行性以及需要改進(jìn)的地方,同時(shí),在硬件仿真中,可以很直觀、形象地看到現(xiàn)象。</p>&l

78、t;p>  4.2 單片機(jī)硬件功能實(shí)現(xiàn)的總結(jié)</p><p>  單片機(jī)硬件功能實(shí)現(xiàn)說明如下:</p><p>  1、利用單片機(jī)的P0口連接6個(gè)LED作為數(shù)據(jù)線輸出使用;</p><p>  2、利用單片機(jī)的P1口連接5個(gè)開關(guān)作為數(shù)據(jù)線輸入使用;</p><p>  3、定時(shí)器/計(jì)數(shù)器的使用</p><p>

79、  定時(shí)器/計(jì)數(shù)器0,定時(shí)功能,工作方式1,提供10ms的定時(shí)時(shí)間。</p><p><b>  4、中斷源的使用</b></p><p>  定時(shí)器/計(jì)數(shù)器中斷0。</p><p><b>  5、按鍵設(shè)定</b></p><p>  P1.0=剎車;P1.1=緊急;P1.2=???;P1.3=左轉(zhuǎn)

80、;P1.4=右轉(zhuǎn)</p><p><b>  6、顯示設(shè)定</b></p><p>  P0.0-P0.5控制線,接LED顯示,信號(hào)燈順序點(diǎn)亮是左前燈、右前燈、左儀表板、右儀表板、左后燈、右后燈。</p><p>  4.3 仿真操作說明及現(xiàn)象的總結(jié)</p><p>  Proteus軟件,找到不同元器件,調(diào)入后,連線

81、,下載程序到AT89S52芯片中,運(yùn)行可看到相應(yīng)的信號(hào)燈亮或閃爍,具體仿真圖見附錄6圖。</p><p><b>  操作說明如下:</b></p><p> ?。?) 按S1剎車鍵,D5、D6相應(yīng)信號(hào)燈亮;</p><p> ?。?) 按S2緊急鍵,D1、D2、D3、D4、D5、D6相應(yīng)信號(hào)燈以1Hz頻率閃爍;</p><

82、p> ?。?) 按S3停靠鍵,D1、D2、 D5、D6相應(yīng)信號(hào)燈以10Hz高頻率閃爍;</p><p> ?。?) 按S4左轉(zhuǎn)彎鍵,D1、D3、D5相應(yīng)信號(hào)以1Hz頻率燈亮;</p><p> ?。?) 按S5右轉(zhuǎn)彎鍵,D2、D4、D6相應(yīng)信號(hào)燈以1Hz頻率閃爍;</p><p> ?。?) 按S1剎車、S2緊急鍵,D1、D2、D3、D4相應(yīng)信號(hào)燈以1Hz頻率

83、閃爍;D5、D6信號(hào)燈亮;</p><p>  (7) 按S4左轉(zhuǎn)彎、S1剎車鍵,D1、D3、D5相應(yīng)信號(hào)燈以1Hz頻率閃爍; D6信號(hào)燈亮;</p><p> ?。?) 按S5右轉(zhuǎn)彎、S1剎車鍵,D2、D4、D6相應(yīng)信號(hào)燈以1Hz頻率閃爍;D5信號(hào)燈亮;</p><p> ?。?) 按S4左轉(zhuǎn)彎、S1剎車、S2緊急鍵,D1、D2、D3、D4、D5相應(yīng)信號(hào)燈以1 H

84、z頻率閃爍;D6信號(hào)燈亮;</p><p>  (10)按S5右轉(zhuǎn)彎、S1剎車、S2緊急鍵,D1、D2、D3、D4、D6相應(yīng)信號(hào)燈以1Hz頻率閃爍,D5信號(hào)燈亮。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]李廣弟,朱月秀,王秀山.單片機(jī)基礎(chǔ)[M].北京:航空航天大學(xué)出版社,2000.147~156</p>

85、;<p>  [2]康華光,陳大欽.電子技術(shù)基礎(chǔ)模擬部分[M].武漢:高等教育出版社,1998.57~116</p><p>  [3]謝自美.電子線路設(shè)計(jì)·實(shí)驗(yàn)·測(cè)試(第二版).武漢:華中理工出版社,2000</p><p>  [4]戴佳,戴衛(wèi)恒.51單片機(jī)C 語言應(yīng)用程序設(shè)計(jì)實(shí)例精講[M].北京:電子工業(yè)出版社,2006.25~31</p>

86、;<p>  [5]徐愛鈞,彭秀華。Keil Cx51 V7.0單片機(jī)高級(jí)語言編程與μVision2應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2006.133~187</p><p><b>  附 錄</b></p><p><b>  附錄1:程序清單</b></p><p><b>  ORG

87、0000H</b></p><p>  LJMP BEGAIN</p><p>  BEGAIN: MOV P3,0FFH ;P3口置“1”,為輸入做準(zhǔn)備</p><p><b>  MOV A,P3</b></p><p>  ANL A,#1FH ;讀如開關(guān)狀態(tài)</p&

88、gt;<p>  MOV DPTR,#TABLE</p><p>  RL A ;累加器乘2</p><p>  JMP @A+DPTR</p><p>  TABLE: AJMP RUN0 ;同時(shí)打開</p><p>  AJMP RUN1 ;S1合上,S2打開</p>

89、<p>  AJMP RUN2 ;S2合上S1打開</p><p>  AJMP RUN3 ;S1,S2同時(shí)合上</p><p>  AJMP RUN4 ;S3合上</p><p>  AJMP RUN5 ;S1,S3合上</p><p>  AJMP RUN6 ;S2,S3合上<

90、;/p><p>  AJMP RUN7 ;S1,S2,S3合上</p><p>  AJMP RUN8 ;S4合上</p><p>  AJMP RUN9 ;S1,S4合上</p><p>  AJMP RUN10 ;S2,S4合上</p><p>  AJMP RUN11 ;

91、S1,S2,S4合上</p><p>  AJMP RUN12 ;S3,S4合上</p><p>  AJMP RUN13 ;S1,S3,S4合上</p><p>  AJMP RUN14 ;S2,S3,S4合上</p><p>  AJMP RUN15 ;S1,S2,S3,S4合上

92、</p><p>  AJMP RUN16 ;S5合上</p><p>  RUN0: MOV P1,#00 ;所有開關(guān)同時(shí)打開,所有燈都熄滅</p><p>  LJMP BEGAIN</p><p>  RUN1: MOV P1,#00000101B ;S1合上,其余打開,L1、

93、L3亮</p><p><b>  ;表示左邊轉(zhuǎn)彎</b></p><p>  LOOP: LCALL DELAY ;延時(shí)1S</p><p>  MOV P1,#00H </p><p>  LCALL DELAY ;延時(shí)1S</p>

94、<p>  LJMP BEGAIN</p><p>  RUN2: MOV P1,#00001010B ;S2合上,其余打開,表示右邊轉(zhuǎn)彎</p><p>  LJMP LOOP ;調(diào)用延時(shí)程序</p><p>  RUN3: LJMP RUN0 ;S1,S2同時(shí)合上,所有燈熄

95、滅</p><p>  RUN4: MOV P1,#00111111B ;S4合上,剎車,所有燈閃爍</p><p><b>  LJMP LOOP</b></p><p>  LJMP BEGAIN</p><p>  RUN5: LJMP RUN0 ;所有燈熄滅&

96、lt;/p><p>  RUN6: LJMP RUN0 ;所有燈熄滅</p><p>  RUN7: LJMP RUN0 ;所有燈熄滅</p><p>  RUN8: MOV P1,#00110000B ;S5合上,???,L5L6閃爍</p><p>  LJM

97、P LOOP</p><p>  RUN9: MOV P1,#00001101B ;S1,S4合上,左轉(zhuǎn)彎并剎車</p><p>  CPL P1.0 ;L1閃爍</p><p>  CPL P1.2 ;L3閃爍</p><p>  LCALL DELAY

98、 ;調(diào)用延時(shí)程序</p><p>  CPL P1.3 ;L4長亮</p><p>  LJMP BEGAIN</p><p>  RUN10: CPL P1.1 ;L2閃爍</p><p>  CPL P1.3 ;L4閃爍&

99、lt;/p><p>  LCALL DELAY</p><p>  CPL P1.5 ;L6長亮</p><p>  LJMP BEGAIN</p><p>  RUN11: LJMP RUN0 ;所有燈熄滅</p><p>  RUN12

100、: CPL P1.0 ;L1—L4閃爍</p><p>  CPL P1.1</p><p>  CPL P1.2</p><p>  CPL P1.3</p><p>  LCALL DELAY</p><p>  SETB P1.4

101、 ;L5長亮</p><p>  SETB P1.5 ;L6長亮</p><p>  LJMP BEGAIN</p><p>  RUN13: MOV P1,#00001111B ;L1—L4閃爍</p><p>  LJMP LOOP</p><

102、p>  LJMP BEGAIN</p><p>  RUN14: LJMP RUN13</p><p>  RUN15: LJMP RUN0</p><p>  RUN16: MOV P1,#00111100B ;L3、L4、L5、L6閃爍</p><p>  LJMP LOOP</p&g

103、t;<p>  LJMP BEGAIN</p><p>  DELAY: MOV R5,#2 ;延時(shí)子程序</p><p>  DEL0: MOV R6,#255</p><p>  DEL1: MOV R7,#98</p><p>  DEL2: DJNZ R7,

104、DEL2</p><p>  DJNZ R6,DEL1</p><p>  DJNZ R5,DEL0</p><p><b>  RET</b></p><p><b>  END</b></p><p>  附錄2:汽車轉(zhuǎn)彎燈單片機(jī)控制系統(tǒng)電路原理圖</p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論