【課程設(shè)計(jì)】基于STC89C52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)_第1頁
【課程設(shè)計(jì)】基于STC89C52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)_第2頁
【課程設(shè)計(jì)】基于STC89C52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)_第3頁
【課程設(shè)計(jì)】基于STC89C52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)_第4頁
【課程設(shè)計(jì)】基于STC89C52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、洛 陽 理 工 學(xué) 院課 程 設(shè) 計(jì) 報(bào) 告 課程名稱 單片機(jī)原理與應(yīng)用 設(shè)計(jì)題目 基于stc89c52單片機(jī)的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù) 班 級 b110506 學(xué) 號 b11050619 姓 名 劉博 完成日期 2013年6月25日 摘 要stc89c52是stc公司生產(chǎn)的一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash存儲器。stc89c52使用經(jīng)典的mcs-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得stc89c52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的

2、解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)flash,512字節(jié)ram, 32 位i/o 口線,看門狗定時(shí)器,內(nèi)置4kb eeprom,max810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙共串口。另外 stc89c52 可降至0hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35mhz,6t/12t可選。利用stc89c52單片機(jī)作為微

3、控制器開發(fā)一套軟、硬件相結(jié)合的單片機(jī)實(shí)驗(yàn)平臺,在keil c環(huán)境下進(jìn)行軟件設(shè)計(jì),主要包括流水燈、數(shù)碼管顯示以及l(fā)cd顯示模塊,在protues中仿真成功,下載到電路板中驗(yàn)證成功。實(shí)現(xiàn)流水燈的跳轉(zhuǎn)顯示流動(dòng),應(yīng)用中斷實(shí)現(xiàn)數(shù)碼管60之內(nèi)計(jì)數(shù)以及l(fā)cd顯示不同字符的功能。關(guān)鍵詞: stc單片機(jī),實(shí)驗(yàn)平臺,數(shù)碼管,流水燈,串口通信design and development platform based on stc89c52 microcontroller experimentabstractthe stc89c52 is a low power, high performance cmos8 pro

4、duced stc, with 8k in system programmable flash memory. stc89c52 sing classic mcs-51 kernel, but made a lot of improvements make the chip with raditional 51 scm features not available. in a single chip, with 8 cpu dexterous and in-system programmable flash, the stc89c52 offers solutions for high fle

5、xibility, super efficient for many embedded control applications. has the standard features: 8k bytes of flash, 512 bytes of ram, 32 i/o lines, the watchdog timer, built-in 4kb eeprom, max810 reset circuit, 3 16 timer / counter, 4 external interrupts, a 7 vector level 4 interrupt structure, a total

6、of. in addition stc89c52 can be reduced to 0hz static logic operation, support 2 software selectable power saving mode. the idle mode, the cpu stops working, ram, timer / counter, serial port interrupt, continue to work permit.the ower-down mode, the ram content being saved, has been frozen, disabli

7、ng all other chip functions, until the next interrupt or hardware reset. maximum operating requency of 35mhz, 6t/12t optional.scm experiment platform based on stc89c52 mcu development of a soft, combined with hardware, software design in keil c environment, including water lights, digital tube displ

8、ay and lcd display module, the simulation successfully in protues, download to the circuit board test successful. to achieve water lamp jump display flow, using interrupt 60 digital tube counting and lcd display different characters within the function.keywords: stc microcontroller, comprehensive ex

9、perimental board, software and hardware combined with, and the program development design目 錄摘 要i目 錄iii前 言1第1章系統(tǒng)概述21.1設(shè)計(jì)題目21.2系統(tǒng)設(shè)計(jì)目的和內(nèi)容21.2.1設(shè)計(jì)目的21.2.2設(shè)計(jì)內(nèi)容21.2.3設(shè)計(jì)要求31.2.4設(shè)計(jì)步驟3第2章整體設(shè)計(jì)方案42.1開發(fā)板整體外觀42.2整板電路protues仿真電路42.3軟件功能描述52.4仿真軟件protues中的效果圖7第3章硬件電路設(shè)計(jì)93.1兩位一體共陰數(shù)碼管93.1.1數(shù)碼管概述93.1.2數(shù)碼管內(nèi)部結(jié)構(gòu)93.1.3兩位一

10、體共陰數(shù)碼管和74ls374鎖存器接口電路113.2lcd1602液晶123.2.1lcd1602液晶簡介123.2.2lcd1602液晶引腳介紹123.2.3lcd1602液晶外圍接口電路143.3 串口通信143.3.1串口通訊概述143.3.2max232接口電路15第4章軟件設(shè)計(jì)164.1程序整體流程圖164.2程序清單17第5章調(diào)試及故障分析215.1 焊接準(zhǔn)備階段元器件測試、電路原理圖故障分析215.2 電路焊接過程中的故障分析215.3 程序編寫過程中的故障分析215.4 實(shí)物演示效果22結(jié)論24謝辭25參考文獻(xiàn)26附錄27iv前 言隨著電子技術(shù)的發(fā)展,單片機(jī)在電訊技術(shù)、工業(yè)控制

11、、汽車自動(dòng)化、家用電器等領(lǐng)域得到了廣泛的應(yīng)用,而單片機(jī)由于其實(shí)用性好、可靠性高、便于擴(kuò)展等特點(diǎn)得到了廣泛的應(yīng)用。為了更好的學(xué)習(xí)和應(yīng)用單片機(jī),可以將經(jīng)常應(yīng)用到的單片機(jī)外圍電路集成到一個(gè)學(xué)習(xí)/開發(fā)板上以供使用者方便使用。同時(shí)應(yīng)提供常用的移植性較好的模塊代碼(本設(shè)計(jì)選用c作為源代碼的編寫工具)。市場上現(xiàn)存的單片機(jī)開發(fā)板很多,因此,要求設(shè)計(jì)盡量能夠達(dá)到資源豐富、易用性好、設(shè)計(jì)美觀等特點(diǎn)。而stc89c52是stc公司生產(chǎn)的一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash存儲器。stc89c52使用經(jīng)典的mcs-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。

12、在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得stc89c52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。本系統(tǒng)是基于stc89c52單片機(jī)的學(xué)習(xí)開發(fā)板,集成了單片機(jī)應(yīng)用過程中常用到的硬件資源,數(shù)碼管、lcd顯示器、流水燈。為學(xué)習(xí)和開發(fā)單片機(jī)產(chǎn)品提供平臺。第1章 系統(tǒng)概述1.1 設(shè)計(jì)題目基于stc89c52的實(shí)驗(yàn)平臺開發(fā)設(shè)計(jì)1.2 系統(tǒng)設(shè)計(jì)目的和內(nèi)容1.2.1 設(shè)計(jì)目的利用stc89c52作為微控制器開發(fā)一套軟、硬件相結(jié)合的單片機(jī)實(shí)驗(yàn)平臺。實(shí)現(xiàn)對數(shù)碼管、lcd顯示器、流水燈的操作,鍛煉學(xué)生的設(shè)計(jì)思維和動(dòng)手能力,使其具備獨(dú)立完成設(shè)計(jì)的能力,也讓學(xué)生更好的了解課本內(nèi)容

13、。1.2.2 設(shè)計(jì)內(nèi)容² 電路原理圖設(shè)計(jì),主要包括集lcd顯示模塊、串口通信模塊、數(shù)碼管顯示模塊、led發(fā)光二極管、鍵盤等接口電路的設(shè)計(jì);² 學(xué)習(xí)集成電路等芯片的焊接方法與技巧,進(jìn)行實(shí)際元器件的識別,進(jìn)行電路板焊接;² 在keil c環(huán)境下,進(jìn)行軟件設(shè)計(jì)。主要包括流水燈、計(jì)數(shù)器、定時(shí)器、lcd字符顯示、鍵盤的控制等功能程序設(shè)計(jì);² 針對所開發(fā)的實(shí)驗(yàn)板,結(jié)合器件選擇、原理圖設(shè)計(jì)、硬件焊接、軟件編程調(diào)試、軟硬件聯(lián)調(diào)等方面寫出課程設(shè)計(jì)報(bào)告。1.1.1 設(shè)計(jì)要求² 完成綜合實(shí)驗(yàn)平臺的電路結(jié)構(gòu)分析,進(jìn)行模塊分解,掌握各部分電路的工作原理;² 獨(dú)

14、立完成電路板的焊接,掌握故障排除方法,完成實(shí)驗(yàn)平臺的硬件設(shè)計(jì)及開發(fā);² 結(jié)合keil c軟件在焊接無誤的單片機(jī)實(shí)驗(yàn)平臺上開發(fā)出流水燈、lcd顯示模塊,通信模塊等程序設(shè)計(jì);² 按照要求撰寫課程設(shè)計(jì)論文。1.1.2 設(shè)計(jì)步驟² 先對原理圖進(jìn)行分析² 根據(jù)圖示對電路板進(jìn)行焊接² 焊接完成后,在protues上連接仿真電路圖² 再根據(jù)原理圖進(jìn)行編程序,并在keil c上運(yùn)行,檢查是否有誤² 將程序加載在仿真圖上運(yùn)行,截取需要的電路圖² 最后在焊接好的電路板上實(shí)驗(yàn)第2章 整體設(shè)計(jì)方案122.1 開發(fā)板整體外觀圖2-1開發(fā)板外

15、觀圖2.2 整板電路protues仿真電路圖2-2仿真原理圖2.3 軟件功能描述1.keil c51c51工具包的整體結(jié)構(gòu),如圖(1)所示,其中uvision與ishell分別是c51 for windows和for dos的集成開發(fā)環(huán)境(ide),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可用ide本身或其它編輯器編輯c或匯編源文件。然后分別由c51及a51編譯器編譯生成目標(biāo)文件(.obj)。目標(biāo)文件可由lib51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)l51連接定位生成絕對目標(biāo)文件(.abs)。abs文件由oh51轉(zhuǎn)換成標(biāo)準(zhǔn)的hex文件,以供調(diào)試器dscope51或tscop

16、e51使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如eprom中。使用獨(dú)立的keil仿真器時(shí),注意事項(xiàng)* 仿真器標(biāo)配11.0592mhz的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。 * 仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。 * 仿真芯片的31腳(/ea)已接至高電平,所以仿真時(shí)只能使用片內(nèi)rom,不能使用片外rom;但仿真器外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴(kuò)展有外部rom(其cpu的/ea引腳接至低電平)的目標(biāo)系統(tǒng)中使用。2. isis protuesprotues軟件是英國labcente

17、r electronics公司出版的eda工具軟件。它不僅具有其它eda工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。proteus是世界上著名的eda工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到pcb設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。迄今為止是世界上唯一將電路仿真軟件、pcb設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺,其處理器模型支持8051、hc11、pic10/12/16/18/24/30/dspic33、avr、arm、8086和msp430等,2010年即將增加cortex和dsp系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持i

18、ar、keil和matlab等多種編譯支持當(dāng)前的主流單片機(jī),如51系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列、68000系列等。² 提供軟件調(diào)試功能。² 提供豐富的外圍接口器件及其仿真。ram,rom,鍵盤,馬達(dá),led,lcd,ad/da,部分spi器件,部分iic器件。這樣很接近實(shí)際。在訓(xùn)練學(xué)生時(shí),可以選擇不同的方案,這樣更利于培養(yǎng)學(xué)生。² 提供豐富的虛擬儀器,利用虛擬儀器在仿真過程中可以測量外圍電路的特性,培養(yǎng)學(xué)生實(shí)際硬件的調(diào)試能力。² 具有強(qiáng)大的原理圖繪制功能在protues繪制好原理圖后,調(diào)入已編

19、譯好的目標(biāo)代碼文件:*.hex,可以在protues的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過程。protues 是單片機(jī)課堂教學(xué)的先進(jìn)助手。protues不僅可將許多單片機(jī)實(shí)例功能形象化,也可將許多單片機(jī)實(shí)例運(yùn)行過程形象化。前者可在相當(dāng)程度上得到實(shí)物演示實(shí)驗(yàn)的效果,后者則是實(shí)物演示實(shí)驗(yàn)難以達(dá)到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機(jī)實(shí)驗(yàn)硬件高度對應(yīng)。它具有設(shè)計(jì)靈活,結(jié)果、過程的統(tǒng)一的特點(diǎn)。可使設(shè)計(jì)時(shí)間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險(xiǎn)。相信在單片機(jī)開發(fā)應(yīng)用中protues也能茯得愈來愈廣泛的應(yīng)用。可實(shí)現(xiàn)keil c 與 protues連接調(diào)試。在已經(jīng)繪制出了8051驅(qū)動(dòng)原理圖的基

20、礎(chǔ)上,完整地展示一個(gè)protues 與 keil c 相結(jié)合的仿真過程。² 硬件設(shè)計(jì)² 程序設(shè)計(jì)² 仿真實(shí)現(xiàn)步驟2.4 仿真軟件protues中的效果圖圖2-3仿真效果圖1圖2-4仿真效果圖2圖2-5仿真效果圖3第3章 硬件電路設(shè)計(jì)3.1兩位一體共陰數(shù)碼管233.13.1.1 數(shù)碼管概述led數(shù)碼管是由發(fā)光二極管構(gòu)成的,具有顯示亮度高、響應(yīng)速度快的特點(diǎn)。常見的是七段led顯示器為“8”字型,該顯示器內(nèi)部有7個(gè)條形發(fā)光二級管和一個(gè)小圓點(diǎn)發(fā)光二級管,共計(jì)8段 ,每段對應(yīng)一個(gè)發(fā)光二級管。有共陰極和共陽極兩種,共陰極發(fā)光二極管的陰極連在一起,通常公共陰極接地。當(dāng)陽極為高電

21、平時(shí)發(fā)光二級管發(fā)光。共陽極發(fā)光二極管的陽極連在一起,通常公共陽極接正電壓。當(dāng)陰極為低電平時(shí)發(fā)光二級管發(fā)光。3.1.2 數(shù)碼管內(nèi)部結(jié)構(gòu)led數(shù)碼管(led segment displays)是由多個(gè)發(fā)光二極管封裝在一起組成“8”字型的器件,引線已在內(nèi)部連接完成,只需引出它們的各個(gè)筆劃,公共電極。led數(shù)碼管常用段數(shù)一般為7段有的另加一個(gè)小數(shù)點(diǎn),還有一種是類似于3位“+1”型。位數(shù)有半位,1,2,3,4,5,6,8,10位等等,led數(shù)碼管根據(jù)led的接法不同分為共陰和共陽兩類,了解led的這些特性,對編程是很重要的,因?yàn)椴煌愋偷臄?shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。圖2是共陰

22、和共陽極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。顏色有紅,綠,藍(lán),黃等幾種。led數(shù)碼管廣泛用于儀表,時(shí)鐘,車站,家電等場合。選用時(shí)要注意產(chǎn)品尺寸顏色,功耗,亮度,波長等。下面將介紹常用led數(shù)碼管內(nèi)部引腳圖片。  圖3-1 led數(shù)碼管引腳定義 圖3-2 10引腳數(shù)碼管實(shí)物圖8段led數(shù)碼管如圖3-3所示:圖3-3 8段led數(shù)碼管結(jié)構(gòu)及外形led數(shù)碼管通過7個(gè)發(fā)光二極管亮暗的不同組合可以顯示各種數(shù)字,另外一個(gè)圓的型發(fā)光二級管(圖3-1(a)中以dp顯示)顯示小數(shù)點(diǎn)。只要為led數(shù)碼管提供了段碼就可以顯示不同的符號和數(shù)字。led數(shù)碼管共計(jì)8段。正好是一

23、個(gè)字節(jié)。習(xí)慣上是以“a”段對應(yīng)段碼字節(jié)的最低位。各段與字節(jié)中各位對應(yīng)關(guān)系如表3-1所示。表3-1 段碼與字節(jié)中各位對應(yīng)關(guān)系代碼位d7d6d5d4d3d2d1d0顯示段dpgfedcba按照表3-1中的格式,顯示各種字符的8段led數(shù)碼管的段碼如表3-2所示(以共陰極為例)。表3-2 8段led數(shù)碼管段碼顯示字符段符號十六進(jìn)制代碼dpgfedcba共陰極共陽極0001111113fhc0h10000011006hf9h2010110115bha4h3010011114fhb0h40110011066h99h5011011016dh92h6011111017dh82h70000011107hf8h

24、8011111117fh80h9011011116fh90h3.1.3 兩位一體共陰數(shù)碼管和74ls374鎖存器接口電路圖3-4共陰數(shù)碼管和74ls374鎖存器接口電路圖3.2 lcd1602液晶3.2.1 lcd1602液晶簡介工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。(16列2行)1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點(diǎn)陣型液晶模塊。它由若干個(gè)5x7或者5x11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒芎芎玫仫@示圖形(用自定義cgram,顯

25、示效果也不好)。1602lcd是指顯示的內(nèi)容為16x2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。其特性:² 3.3v或5v工作電壓,對比度可調(diào)² 內(nèi)含復(fù)位電路² 提供各種控制命令,如:清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能² 有80字節(jié)顯示數(shù)據(jù)存儲器ddram² 內(nèi)建有192個(gè)5x7點(diǎn)陣的字型的字符發(fā)生器cgrom² 8個(gè)可由用戶自定義的5x7的字符發(fā)生器cgram3.2.2 lcd1602液晶引腳介紹1602采用標(biāo)準(zhǔn)的16腳接口,如圖3-4所示,其中:圖3-5 lcd1602液晶引腳圖第1腳:vss為電源地第

26、2腳:vcc接5v電源正極第3腳:v0為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地電源時(shí)對比度最高(對比度過高時(shí)會 產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10k的電位器調(diào)整對比度)。第4腳:rs為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。第5腳:rw為讀寫信號線,高電平(1)時(shí)進(jìn)行讀操作,低電平(0)時(shí)進(jìn)行寫操作。如表3-3所示:表3-3 讀寫操作選擇rsrw寄存器及操作00指令寄存器寫入01忙信號和地址計(jì)數(shù)器讀出10數(shù)據(jù)寄存器寫入11數(shù)據(jù)寄存器讀出第6腳:e(或en)端為使能(enable)端,高電平(1)時(shí)讀取信息,負(fù)跳變時(shí)執(zhí)行指令。第714腳:d0d7為8位雙向數(shù)

27、據(jù)端。第1516腳:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。3.2.3 lcd1602液晶外圍接口電路 圖3-6 lcd1602液晶外圍接口電路3.3 串口通信3.3.1 串口通訊概述串行通信是指計(jì)算機(jī)主機(jī)與外設(shè)之間以及主機(jī)系統(tǒng)與主機(jī)系統(tǒng)之間數(shù)據(jù)的串行傳送。使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個(gè)固定的時(shí)間長度。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別適用于計(jì)算機(jī)與計(jì)算機(jī)、計(jì)算機(jī)與外設(shè)之間的遠(yuǎn)距離通信。如圖3-5所示:圖3-7 串口通信串口通信時(shí),發(fā)送和接收到的每一個(gè)字符實(shí)際上都是一次一位的傳送的,每一位為1或者為0。串行通信按信息的格式可分為異步通信和同步通

28、信兩種方式;根據(jù)信息傳送的方向,串行通信可以分為單工、半雙工和全雙工3種,如圖3-6所示。圖3-8串行通信的3種傳輸形式同步通信是一種連續(xù)串行傳送數(shù)據(jù)的通信方式,一次通信只傳送一幀信息。異步通信中,在異步通信中有兩個(gè)比較重要的指標(biāo):字符幀格式和波特率。數(shù)據(jù)通常以字符或者字節(jié)為單位組成字符幀傳送。字符幀由發(fā)送端逐幀發(fā)送,通過傳輸線被接收設(shè)備逐幀接收。發(fā)送端和接收端可以由各自的時(shí)鐘來控制數(shù)據(jù)的發(fā)送和接收,這兩個(gè)時(shí)鐘源彼此獨(dú)立,互不同步。3.3.2 max232接口電路圖3-9 max232接口電路第4章 軟件設(shè)計(jì)4.1程序整體流程圖sw2=0?sw3=0?sw4=0?開始調(diào)用yejing函數(shù)給ye

29、jing函數(shù)初始化操作調(diào)用寫數(shù)據(jù)函數(shù),輸入數(shù)據(jù)并延時(shí)調(diào)入寫指令函數(shù),移動(dòng)寫入的數(shù)據(jù)調(diào)用寫數(shù)據(jù)函數(shù),輸入數(shù)據(jù)并延時(shí)清屏操作 再次調(diào)入寫數(shù)據(jù)、寫指令、延時(shí)函數(shù),輸入下條信息結(jié)束yejing函數(shù)開始數(shù)碼管函數(shù)初始化選擇定時(shí)方式,并給高八位低、八位賦值, 開中斷調(diào)用顯示函數(shù),輸出每個(gè)數(shù)碼管的數(shù)值顯示count>59?主函數(shù)結(jié)束數(shù)碼管函數(shù)開始流水燈函數(shù)流水燈一次奇偶數(shù)亮,全開,全熄滅i>=3?中斷結(jié)束流水燈函數(shù)ynyyynysw2=0sw3=0流水燈從上到下亮,全開,一次奇偶數(shù)亮,全熄滅4.2程序清單 #include<reg52.h> #define uint unsigned

30、 int#define uchar unsigned charsbit sw2=p32;sbit sw3=p33;sbit lcdrs=p16;sbit lcdrw=p17;sbit a0=p25;sbit a1=p26;sbit a2=p27;sbit e1=p15;uchar code table="welcom to check!"uchar code table1="b11050619"uchar code table3=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uchar code ta

31、ble2=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0x00,0x00,0x55,0x55,0xaa,0xaa;unsigned char count,num;void delay(uint xms) uint i,j;for(i=xms;i>0;i-) for(j=110;j>0;j-);void write_com(uchar com) lcdrs=0;p0=com;lcdrw=0;/沒有這條語句不行delay(5);p2=0x40;delay(5);p2=0x00;void write_data(uchar date)

32、 lcdrs=1;p0=date;lcdrw=0;/沒有這條語句不行delay(5);p2=0x40;delay(5);p2=0xff;void lcd_init() write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);void liushuideng()uchar i;while(1) if(sw2=0) for(i=0;i<3;i+) p2=0xaa; delay(500); p2=0x55; delay(500); p2=0x00; delay(500); p2=0xff; delay(500); if(s

33、w3=0) for(i=0;i<16;i+) p2=table2i; delay(500); p2=0xff;void yejing() lcd_init();write_com(0x80);for(num=0;num<16;num+) write_data(tablenum); delay(5);write_com(0x80+0x40);for(num=0;num<9;num+) write_data(table1num); delay(5);while(1);void display(unsigned char count) a0=0; a1=0; a2=0; e1=1;

34、 p0=table3count%10; delay(100); a0=1; a1=0; a2=0; e1=1; p0=table3count/10; delay(100);void init() tmod=0x01;th0=(65536-50000)/256;/賦初值tl0=(65536-50000)%256;ea=1;/開總中斷et0=1;tr0=1;void t0_time() interrupt 1 th0=(65536-50000)/256;/賦初值tl0=(65536-50000)%256;void shumaguan()init();p0=0xff;for(count=0;coun

35、t<60;count+) display(count);delay(500); void main() while(1) switch(p3) case 0xfb:yejing();break;case 0xf7:shumaguan();break;case 0xef:liushuideng();break;case 0xdf:;break;第5章 調(diào)試及故障分析5.1 焊接準(zhǔn)備階段元器件測試、電路原理圖故障分析Ø 檢測各器件是否完好,包括二極管、數(shù)碼管、單片機(jī)、led、電容等Ø 將一定值的器件擺放在應(yīng)在的位置Ø 按照所給的電路圖正確焊接Ø 利用萬

36、用表進(jìn)行測試,找到短路、短路的地方進(jìn)行修改5.2 電路焊接過程中的故障分析Ø 焊接過程中焊接不完善,導(dǎo)致斷路,不能導(dǎo)通Ø 電容、led正負(fù)極接反,導(dǎo)致燈不會亮,也影響整體電路Ø 芯片插槽接反,將導(dǎo)致整體電路不能執(zhí)行功能Ø 焊接過程中造成短路,將導(dǎo)致整體電路不能執(zhí)行功能Ø 將電阻排接反,也不能得到預(yù)期的效果5.3 程序編寫過程中的故障分析在編寫程序的時(shí)候,總會出現(xiàn)一些這樣那樣的錯(cuò)誤,例如:在編寫完成后,不能完成預(yù)期的功能,那么就需要對其進(jìn)一步的修改直到可以實(shí)現(xiàn)功能為止,完成后,流水燈不會亮,經(jīng)過檢查后,原來是設(shè)置值的時(shí)候沒有設(shè)置對。5.4 實(shí)物演

37、示效果圖5-1 液晶顯示效果圖 圖5-2 流水燈效果顯示圖5-3 數(shù)碼管效果顯示1圖5-3 數(shù)碼管效果顯示2結(jié)論這次的課程設(shè)計(jì),雖然時(shí)間不長,但是卻學(xué)到了很多東西。首先,我們花費(fèi)了一天的時(shí)間對電路板進(jìn)行焊接,焊接的過程中也會出現(xiàn)一些不必要的錯(cuò)誤,例如:把器件的位置焊接錯(cuò)誤,但是經(jīng)過檢測還是可以發(fā)現(xiàn)的。并且學(xué)到在焊接的時(shí)候團(tuán)隊(duì)合作是必要的,只有調(diào)動(dòng)幾個(gè)人的積極性,共同參與,才能更好的完成任務(wù)。因此在我們的配合下很快就完成了任務(wù),并且一次性的通過,沒有錯(cuò)誤,雖然焊接的不是很美觀。通過對電路板的焊接,我學(xué)到了干什么事都要認(rèn)真,只要認(rèn)真做,沒有什么事是做不好的,并且不會出現(xiàn)太多的錯(cuò)誤,還有就是團(tuán)隊(duì)合作

38、的重要性,只有合作,才能雙贏,這是自古不變的真理。接下來的工作就是按照原理圖進(jìn)行編程了,剛開始的時(shí)候,什么也不會寫,感覺無從下手。但是,在經(jīng)過共同的努力、討論下終于找到思路,進(jìn)行編程,可是在編寫完成后,不能實(shí)現(xiàn)預(yù)期的功能,最后在經(jīng)過不斷的修改、實(shí)驗(yàn)下,可以運(yùn)行了。通過編程,對課本的內(nèi)容更加的了解,尤其對其流水燈的控制,中斷、定時(shí)的設(shè)置。也對單片機(jī)更加的了解,對stc系列的單片機(jī)的各個(gè)端口更加的熟練,清楚的知道每個(gè)端口的功能、作用等。在此過程中,也了解到萬事開頭難,因?yàn)樵陂_始的時(shí)候總是不知道該怎樣做,只要開一個(gè)頭,其余的就好做了,很快就可以順利的結(jié)束。就像這次的編程,在剛開始的時(shí)候無從下手,但是一旦開一個(gè)頭,以后的就水到渠成了??傊@次的單片機(jī)實(shí)習(xí),我學(xué)到了許多的東西,有許多是課本上不能學(xué)到的。首先,學(xué)到了團(tuán)隊(duì)合作的重要性,在面對問題時(shí),同時(shí)發(fā)動(dòng)幾個(gè)人的大腦會更

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論