




已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于單片機的比賽用計時器設(shè)計沈陽航空航天大學2010年6月摘要隨著電子技術(shù)的飛速發(fā)展,基于單片機的控制系統(tǒng)已廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、電力、電子、智能樓宇等行業(yè),微型計算機作為嵌入式控制系統(tǒng)的主體與核心,代替了傳統(tǒng)的控制系統(tǒng)的常規(guī)電子線路。單片機自20世紀70年代問世以來,以其極高的性能價格比,受到人們的重視和關(guān)注。而51單片機是各單片機中最為典型和最有代表性的一種。本次設(shè)計以AT89S51、DS1302芯片為核心,輔以必要的外圍電路,設(shè)計了一個多功能的電子計時器,該系統(tǒng)由5V直流電源供電,采用六位LED數(shù)碼管動態(tài)掃描顯示,并能準確顯示時、分;兩個按鍵實現(xiàn)對時間的設(shè)置。軟件方面采用匯編語言編程。整個電子計時器系統(tǒng)能實現(xiàn)對時間的顯示、調(diào)時、定時報警、計時和復位等功能,具有硬件結(jié)構(gòu)簡單、成本低、工作可靠、流程清晰等優(yōu)點。關(guān)鍵詞AT89S51DS1302計時器ABSTRACTWITHRAPIDDEVELOPMENTOFELECTRONICTECHNOLOGY,CONTROLSYSTEMSBASEDONSINGLECHIPHASBEENWIDELYUSEDININDUSTRY,AGRICULTURE,ELECTRICITY,ELECTRONICS,INTELLIGENTBUILDINGS,ETC,EMBEDDEDMICROCOMPUTERCONTROLSYSTEMASACORESUBJECTAND,INSTEADOFTHETRADITIONALCONTROLSYSTEMOFCONVENTIONALELECTRONICCIRCUITSSCM70YEARSSINCETHEINCEPTIONOFTHE20THCENTURY,WITHITSHIGHPERFORMANCEANDLOWCOST,BYTHEPEOPLESATTENTIONANDCONCERNTHESCM51SCMISTHEMOSTTYPICALANDMOSTREPRESENTATIVEONETHEDESIGNAT89S51,DS1302CHIPASTHECORE,SUPPLEMENTEDBYTHENECESSARYPERIPHERALCIRCUITS,DESIGNEDAMULTIFUNCTIONELECTRONICTIMER,WHICHCONSISTSOF5VDCPOWERSUPPLYITUSEOFSIXLEDDIGITALTUBETOBEDISPLAYEDWITHADYNAMICSCANNING,THROUGHTHELEDCANBEMOREACCURATETIMEINHOURSTWOSIMPLEKEYSTOACHIEVETHEADJUSTMENTOFTHETIMESOFTWAREUSINGASSEMBLYLANGUAGEPROGRAMMINGCOMPLETIONOFTHEENTIREELECTRONICTIMERSYSTEMCANDISPLAYTHETIME,TRANSFERTIME,TIMEALARM,TIMEANDRESETANDOTHERFUNCTIONS,HAVESOMEADVANTAGESABOUTSIMPLEHARDWARECONSTRUCTION,LOWCOST,RUNNINGDEPENDABLE,DISTINCTTECHNOLOGICALPROCESS,ETCKEYWORDSAT89S51DS1302TIMER目錄1緒論111課題背景1111計時器的發(fā)展歷史1112計時器的種類與應(yīng)用212課題任務(wù)及要求313課題內(nèi)容及安排32核心芯片簡介421DS1302時鐘芯片4211DS1302引腳功能與內(nèi)部結(jié)構(gòu)4212DS1302的控制字5213DS1302的復位引腳5214DS1302的數(shù)據(jù)輸入輸出6215DS1302的寄存器622單片機概述723AT89S51系列單片機8231AT89S51芯片的引腳及特點8232AT89S51的主要性能參數(shù)12233AT89S51的新功能133設(shè)計方案1431FPGA設(shè)計方案1432NE555時基電路設(shè)計方案1433單片機設(shè)計方案154軟硬件設(shè)計1741硬件電路設(shè)計17411單片機AT89S51外圍電路設(shè)計17412DS1302與單片機的接口設(shè)計18413顯示電路設(shè)計19414復位電路設(shè)計21415報警電路設(shè)計22416鍵盤電路設(shè)計2342軟件設(shè)計245調(diào)試運行2751系統(tǒng)的調(diào)試2752軟件調(diào)試問題及解決2753焊接的問題及解決296課題總結(jié)30參考文獻32致謝33附錄元件清單34附錄硬件電路圖35附錄程序清單361緒論近年來,隨著科學技術(shù)的迅猛發(fā)展,生活水平的不斷提高,在當今社會競爭如此激烈的大環(huán)境下,時間對與人們來說是越來越重要了,把握住了時間,就相當于把握住了機會,也把握住了自己的命運。怎么才能隨時掌握時間呢當然,計時器的產(chǎn)生解決了這一難題,隨著人類對計時器的不斷探索和改進,使得大家能夠更便捷更準確的掌握時間,計時器慢慢走進了我們生活的各個角落。本文闡述的數(shù)字鐘計時器是日常生活中不可或缺的一個重要元素,廣泛應(yīng)用于家庭、個人以及車站、醫(yī)院、機場、比賽場館等公共場所,在完善服務(wù)的同時也給我們帶來了許多方便。11課題背景進入21世紀以來,社會快速的發(fā)展改變了我們的生活節(jié)奏,在這快節(jié)奏的生活圈里,人們不斷的強迫自己去適應(yīng)并趕上發(fā)展的腳步。計時器的發(fā)展可以說是日新月異,早期的計時器普遍功能單一,性能不穩(wěn)定。隨著單片機的產(chǎn)生與發(fā)展,之前的一些問題將會被一一解決。這對于計時器的發(fā)展來說,將是一次飛躍性的突破。目前,單片機的使用已十分廣泛,如智能儀表、實時工控、通訊設(shè)備、導航系統(tǒng)、家用電器等。選擇單片機作為計時器的控制模塊,將在以往計時器的原有功能上增加一些附加的功能,用途更廣泛,效率更高,而且穩(wěn)定性高,有很好的保障性。111計時器的發(fā)展歷史有關(guān)鐘表計時器的發(fā)展歷史,大致可以分為三個演變階段一、從大型鐘向小型鐘演變;二、從小型鐘向袋表過渡;三、從袋表向腕表發(fā)展。每一階段的發(fā)展都是和當時的技術(shù)發(fā)明分不開的。早在14世紀中期,歐洲的英、法等國的高大建筑物上出現(xiàn)了報時鐘,鐘的動力來源于用繩索懸掛重錘,利用地心引力產(chǎn)生的重力作用。15世紀末、16世紀初出現(xiàn)了鐵制發(fā)條,使鐘有了新的動力來源,也為鐘的小型化創(chuàng)造了條件。1583年,意大利人伽利略建立了著名的等時性理論,也就是鐘擺的理論基礎(chǔ)。1656年,荷蘭的科學家惠更斯應(yīng)用伽利略的理論設(shè)計了鐘擺,第二年,在他的指導下年輕鐘匠科斯勒制造成功了第一個擺鐘。1675年,他又用游絲取代了原始的鐘擺,這樣就形成了以發(fā)條為動力、以游絲為調(diào)速機構(gòu)的小型鐘,同時也為制造便于攜帶的袋表提供了條件。18世紀期間發(fā)明了各種各樣的擒縱機構(gòu),為袋表的進一步產(chǎn)生與發(fā)展奠定了基礎(chǔ)。19世紀后半葉,在一些女性的手鐲上裝上了小袋表,作為裝飾品。那時人們只是把它看成是一件首飾,還沒有完全認識到它的實用價值。直到人類歷史進入20世紀,隨著鐘表制作工藝水平的提高以及科技和文明的巨大變革,才使得腕表地位的確立有了可能。20世紀初,護士為了掌握時間就把小袋表掛在胸前,人們已經(jīng)很注重它的實用性,要求方便、準確、耐用。我國的鐘表的發(fā)展已經(jīng)有三千多年的歷史了,到了十九世紀末期,我國造鐘工藝達到了一個嶄新的水平。1875年由上海“美利華”作坊制造的南京鐘,屏風式樣,鐘面鍍金,鐫刻花紋,以造型古樸典雅、民族風格鮮明和報時清脆、走時準確而聞名于海內(nèi)外,曾于1903年在巴拿馬國際博覽會上獲特別獎。112計時器的種類與應(yīng)用計時器,是利用特定的原理來測量時間的裝置。計時器的種類包括電磁打點計時器、電火花計時器、堅持計時器、停車計時器、反應(yīng)計時器、放大計時器以及等等。其中電磁打點計時器和電火花打點計時器最為常見。電磁打點計時器是一種使用交流電源的計時儀器,其工作電壓是46V,電源的頻率是50HZ,它每隔002S打一次點。電火花計時器是利用火花放電在紙帶上打出小孔而顯示出點跡的計時儀器,使用220V交流電壓,當頻率為50HZ時,它每隔002S打一次點,電火花計時器工作時,指導運動所受到的阻力比較小,試驗誤差比電磁打點計時器的要小。近年來,隨著科學技術(shù)的迅猛發(fā)展,計時器的種類也逐步多樣化,應(yīng)用在城市的各個角落,適用于不同人群的生活和工作需要。無論是個人使用還是在公共場合使用,計時器的產(chǎn)生和發(fā)展都給我們帶來了越來越多的方便。12課題任務(wù)及要求本次設(shè)計要求完成一個基于單片機的比賽用計時器的電路設(shè)計。主要采用AT89S51單片機與時鐘芯片DS1302為核心芯片,利用鍵盤控制LED數(shù)碼管等元件來顯示北京時間,以及一個24秒違例的報警功能。并可以用按鍵來調(diào)試時間,對其進行一定范圍內(nèi)的大小調(diào)控,并能實現(xiàn)啟動、暫停、復位等附加功能。具體要求為(1)分計時能實現(xiàn)099分和059秒任意調(diào)整,具有啟動、暫停和復位功能。(2)秒計時能實現(xiàn)099秒任意調(diào)整,具有復位、啟動、暫停功能。(3)報警24秒違例自動聲、光報警、終場自動聲響。(4)時鐘能顯示北京時間和日期。13課題內(nèi)容及安排本文對比賽用計時器單元的設(shè)計進行了詳細的介紹,共分六章。第1章簡要介紹了整個課題的研究背景、目的、意義及整個任務(wù)的要求安排;第2章是對AT89S51單片機等核心芯片的詳細介紹;第3章具體介紹了本次課題的相關(guān)設(shè)計方案;第4章闡述了本次課題的軟硬件設(shè)計,包括顯示電路設(shè)計,單片機外圍電路設(shè)計以及報警電路設(shè)計。第5章針對硬件調(diào)試、軟件調(diào)試進行了具體的分析和說明。2核心芯片簡介21DS1302時鐘芯片DS1302是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的時鐘芯片,它可以對年、月、日、時、分、秒進行計時,且具有閏年補償功能,工作電壓寬達2555V。時鐘可工作在24小時格式或12小時(AM/PM)格式。DS1302與單片機的接口使用同步串行通信,僅用3條線與之相連接??刹捎靡淮蝹魉鸵粋€字節(jié)或突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個318的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源后備電源雙電源引腳,同時提供了對后背電源進行涓細電流充電的能力。211DS1302引腳功能與內(nèi)部結(jié)構(gòu)DS1302的引腳功能如表21所示,外形及內(nèi)部結(jié)構(gòu)如圖21所示表21DS1302引腳功能表引腳號引腳名稱功能1VCC2主電源2、3X1、X2振蕩源,外接32768HZ晶振4GND地線5RST復位/片選線6I/O串行數(shù)據(jù)輸入/輸出端(雙向)7SCLK串行時鐘輸入端8VCC1后備電源圖21DS1302管腳圖及內(nèi)部結(jié)構(gòu)圖212DS1302的控制字DS1302的控制字節(jié)如圖22所示765432101RAMCKA4A3A2A1A0RAMK圖22DS1302控制字節(jié)的含義控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù)位5至位1指示操作單元的地址最低有效位(位0)如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。213DS1302的復位引腳通過把輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。輸入有兩種功能RSTRST首先,接通控制邏輯,允許地址命令序列送入移位寄存器;其次,提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當為高電平時,所有的數(shù)據(jù)傳送被初RST始化,允許對DS1302進行操作。如果在傳送過程中置為低電平,則會終止此次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在VCC25V之前,必RST須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。214DS1302的數(shù)據(jù)輸入輸出在控制指令字輸入后的下一個SCLK時鐘的上升沿時數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位至高位7,數(shù)據(jù)讀寫時序如圖23所示圖23數(shù)據(jù)讀寫時序215DS1302的寄存器DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式。其日歷、時間寄存器及其控制字見表22。此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器的內(nèi)容。DS1302與RAM相關(guān)的寄存器分為兩類,一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。76541076543210ADTI/OBYE2DTI/OBYERCR/WI/OSTCLK表22DS1302的日歷、時鐘寄存器及其控制字命令字各位內(nèi)容寄存器名寫操作讀操作取值范圍76543210秒寄存器80H81H0059CH10SECSEC分寄存器82H83H0059010MINMIN時寄存器84H85H0112或002312/24010HRHR日寄存器86H87H0128,29,30,310010DATEDATE月寄存器88H89H011200010MMONTH22單片機概述單片機是指一個集成在一塊芯片上的完整計算機系統(tǒng)。盡管它的大部分功能集成在一塊小芯片上,但是它具有一個完整計算機所需要的大部分部件CPU、內(nèi)存、內(nèi)部和外部總線系統(tǒng)。單片機是將中央處理器,隨機存儲器。只讀存儲器,定時器芯片和I/O接口電路集成于一個芯片上的微控制器。單片機是依據(jù)程序指令運行,并且可以通過輔助工具對程序進行修改。通過不同的程序?qū)崿F(xiàn)不同的功能。早期的單片機都是8位或4位的。其中最成功的是INTEL的8031,因為簡單可靠而性能不錯獲得了很大的好評。此后在8031上發(fā)展出了MCS51系列單片機系統(tǒng)?;谶@一系統(tǒng)的單片機系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機,但因為性價比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費電子產(chǎn)品大發(fā)展,單片機技術(shù)得到了巨大的提高。隨著INTELI960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機迅速取代16位單片機的高端地位,并且進入主流市場。而傳統(tǒng)的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機主頻已經(jīng)超過300MHZ,性能直追90年代中期的專用處理器。目前單片機滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領(lǐng)域的機器人、智能儀表、醫(yī)療器械了。因此,單片機的學習、開發(fā)與應(yīng)用將造就一批計算機應(yīng)用與智能化控制的科學家、工程師。單片機廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域。在單片機的發(fā)展和應(yīng)用歷史中,MCS51系列單片機已經(jīng)得到科技界和工業(yè)界廣大用戶最廣泛的認可。目前,許多生產(chǎn)出的單片機產(chǎn)品采用了多種創(chuàng)新技術(shù),產(chǎn)品的性能和可靠性都有了極大地改進和提高,但這些單片機產(chǎn)品大都采用了8051的核心技術(shù)作為其內(nèi)核,例如美國ATMEL公司研發(fā)的AT89系列、ADI公司的ADUC系列、PHILIPS公司研發(fā)的80C51系列、MOTOROLA公司推出的M68HC05系列等。本次設(shè)計采用的是ATMEL公司推出的AT89系列的單片機。23AT89S51系列單片機AT89S51美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機,片內(nèi)含4KBYTESISPINSYSTEMPROGRAMMABLE的可反復擦寫1000次的FLASH只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS51指令系統(tǒng)及AT89C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISPFLASH存儲單元。單片機AT89S51強大的功能可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。231AT89S51芯片的引腳及特點AT89S51芯片的引腳結(jié)構(gòu)如圖24所示圖24AT89S51引腳圖(1)功能特性概括AT89S51提供以下標準功能40個引腳、4KBYTESFLASH片內(nèi)程序存儲器、128BYTES的隨機存取數(shù)據(jù)存儲器(RAM)、32個外部雙向輸入/輸出(I/O)口、5個中斷優(yōu)先級2層中斷嵌套中斷、2個數(shù)據(jù)指針、2個16位可編程定時/計數(shù)器、2個全雙工串行通信口、看門狗(WDT)電路、片內(nèi)振蕩器及時鐘電路。此外,AT89S51可降至0HZ的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e模式下,CPU暫停工作,而RAM、定時/計數(shù)器、串行通信口、外中斷系統(tǒng)可繼續(xù)工作。掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。(2)管腳說明VCC供電電壓。GND接地。P0口P0口為一個8位漏級開路雙向I/O口,也即地址/數(shù)據(jù)總線復用口。作為輸出口用時,能驅(qū)動8個TTL邏輯門電路。對端口寫“1”時,被定義為高阻輸入。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復用,在訪問期間激活內(nèi)部上拉電阻。在FLASH編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。P1口P1口是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1口的輸出緩沖級可驅(qū)動吸收或輸出電流4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流I。IL在FLASH編程和程序校驗期間,P1接收低8位地址。部分端口還有第二功能,如表23所示表23P1口部分引腳第二功能端口引腳第二功能P15MOSI用于ISP編程P16MISO用于ISP編程P17SCK用于ISP編程P2口P2口是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2口的輸出緩沖級可驅(qū)動吸收或輸出電流4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流I。IL在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器例如執(zhí)行MOVXDPTR指令時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)寄存器例如執(zhí)行MOVXRI指令時,P2口線上的內(nèi)容也即特殊功能寄存器SFR區(qū)中P2寄存器的內(nèi)容,在整個訪問期間不改變。在FLASH編程或校驗時,P2亦接收高位地址和其它控制信號。P3口P3口是一個帶有內(nèi)部上拉電阻的雙向8位I/O口,P3口的輸出緩沖級可驅(qū)動吸收或輸出電流4個TTL邏輯門電路。對P3口寫“1”時,它們被內(nèi)部的上拉電阻拉高并可作為輸入端口。作輸入口使用時,被外部信號拉低的P3口將用上拉電阻輸出電流I。ILP3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如表24所示P3口還接收一些用于FLASH閃速存儲器編程和程序校驗的控制信號。表24P3口引腳第二功能端口引腳第二功能P30RXD串行輸入口P31TXD串行輸出口P32外中斷00INTP33外中斷11P34T0定時/計數(shù)器0P35T1定時/計數(shù)器1P36外部數(shù)據(jù)存儲器寫選通WRP37外部數(shù)據(jù)存儲器讀選通DRST復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上的高電平時間將使單片機復位。WDT溢出將使該引腳輸出高電平,設(shè)置SFRAUXR的DISRTO位地址8EH可打開或關(guān)閉該功能。DISRTO位缺省為RESET輸出高電平打開狀態(tài)。ALE/當訪問外部存儲器或數(shù)據(jù)存儲器時,ALE地址鎖存允許輸出脈PROG沖用于鎖存地址的低8位字節(jié)。即使不訪問外部寄存器,ALE仍以時鐘振蕩頻率的1/6輸出固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。值得注意的是每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖。PROG如有必要,可通過對特殊功能寄存器SFR區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只要一條MOVX和MOVC指令才會激活ALE。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應(yīng)設(shè)置ALE無效。程序存儲允許輸出是外部程序存儲器的讀選通信號,當PSENPSENAT89S51由外部程序存儲器取指令或數(shù)據(jù)時,每個機器周期兩次有效,即輸出PSEN兩個脈沖。當訪問外部數(shù)據(jù)存儲器時,沒有兩次有效的信號。PSENEA/VPP外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平接地。需要注意的是如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端保持高電平接VCC端,CPU則執(zhí)行內(nèi)部程序存儲器中的指令。FLASH存儲器編程期間,該引腳用于施加12V編程電壓(VPP)。XTAL1反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入端。XTAL2反向振蕩放大器器的輸出端。(3)晶體振蕩器特性AT89S51中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別為該反向放大器的輸入端和輸出端。這個反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。外接石英晶體或陶瓷諧振器及電容C1、C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容C1、C2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性。如果使用石英晶體,電容應(yīng)該使用30PF10PF。還可以使用外部時鐘。這種情況下,外部時鐘脈沖接XTAL1端,即內(nèi)部時鐘發(fā)生器的輸入端,XTAL2應(yīng)懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。232AT89S51的主要性能參數(shù)(1)與MCS51產(chǎn)品指令系統(tǒng)完全兼容;(2)4K字節(jié)在系統(tǒng)可編程(ISP)FLASH閃速存儲器;(3)1000次擦寫周期;(4)4055V的工作電壓范圍;(5)全靜態(tài)工作模式0HZ33HZ;(6)三級程序加密;(7)128X8字節(jié)的內(nèi)部RAM;(8)32個雙向可編程I/O口線;(9)2個16位可編程定時/計數(shù)器;(10)6個中斷源;(11)全雙工UART串行通道;(12)低功耗空閑和掉電模式;(13)中斷可從空閑模式喚醒系統(tǒng);(14)看門狗(WDT)及雙數(shù)據(jù)指針;(15)掉電標識和快速編程特性;(16)靈活的在系統(tǒng)編程(ISP字節(jié)或頁寫模式)。233AT89S51的新功能AT89S51兼容標準MCS51指令系統(tǒng)及AT89C51引腳結(jié)構(gòu),它相對于AT89C51增加的新功能包括ISP在線編程功能,這個功能的優(yōu)勢在于改寫單片機存儲器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離,是一個強大易用的功能;最高工作頻率為33MHZ,AT89C51的極限工作頻率是24M,所以AT89S51具有更高工作頻率,從而具有了更快的計算速度;具有雙工UART串行通道;內(nèi)部集成看門狗計時器,不再需要像AT89C51那樣外接看門狗計時器單元電路;雙數(shù)據(jù)指示器;電源關(guān)閉標識;全新的加密算法,這使得對于AT89S51的解密變?yōu)椴豢赡?,程序的保密性大大加強,這樣就可以有效的保護知識產(chǎn)權(quán)不被侵犯;兼容性方面向下完全兼容51全部字系列產(chǎn)品。比如8051、AT89C51等早期MCS51產(chǎn)品。3設(shè)計方案電子計時器可以通過純硬件實現(xiàn),也可以通過軟硬件結(jié)合實現(xiàn),根據(jù)電子時鐘里的核心部件秒信號的產(chǎn)生原理,通常有以下三種形式31FPGA設(shè)計方案現(xiàn)場可編程門陣列(FIELDPROGRAMMABLEGATEARRAY,F(xiàn)PGA),是20世紀70年代發(fā)展起來的一種可編程邏輯器件,是目前數(shù)字系統(tǒng)設(shè)計的主要硬件基礎(chǔ)。FPGA在結(jié)構(gòu)上由邏輯功能塊排列為陣列,并由可編程的內(nèi)部連線連接這些功能塊,來實現(xiàn)一定的邏輯功能。可編程邏輯器件的設(shè)計過程是利用EDA開發(fā)軟件和編程工具對器件進行開發(fā)的過程。由于EDA技術(shù)擁有系統(tǒng)的模擬和仿真功能,可讀性、可重復性、可測性非常好,所以利用EDA開發(fā)FPGA是目前比較流行的方式。當然,有時根據(jù)需要,也會應(yīng)用MAXPLUS開發(fā)集成環(huán)境進行設(shè)計。正因為FPGA在設(shè)計過程中方便、快捷,而且FPGA技術(shù)功能強大,能夠應(yīng)用其制作諸如基代碼發(fā)生器、數(shù)字頻率計、電子琴、電梯控制器、自動售貨機控制系統(tǒng)、多功能波形發(fā)生器、步進電機定位控制系統(tǒng)、電子時鐘等。應(yīng)用FPGA能夠?qū)r鐘設(shè)計為為四種類型全局時鐘、門控時鐘、多級邏輯時鐘和波動式時鐘。多時鐘系統(tǒng)能夠包括上述四種時鐘類型的任意組合。32NE555時基電路設(shè)計方案555定時器是美國SIGNETICS公司1972年研制的用于取代機械式定時器的中規(guī)模集成電路,因輸入端設(shè)計有三個5K的電阻而得名。目前,流行的產(chǎn)品主要有4種BJT兩個555,556(含有兩個555);CMOS兩個7555,7556(含有兩個7555)。555定時器是一種數(shù)字與模擬混合型的集成電路,應(yīng)用廣泛。成本較低,外加電阻、電容等元件就可以構(gòu)成多諧振蕩器、單穩(wěn)電路、施密特觸發(fā)器等,常作為定時器廣泛應(yīng)用于儀器儀表、家用電器、電子測量及自動控制等領(lǐng)域。采用NE555時基電路或其他振蕩電路產(chǎn)生秒脈沖信號,作為秒加法電路的時鐘信號或微處理器的外部中斷輸入信號,可構(gòu)成電子鐘。由555構(gòu)成的秒脈沖發(fā)生器電路見圖31。輸出的脈沖信號V0的頻率F為CR2/4311(31)可通過調(diào)節(jié)公式31中的3個參數(shù),使輸出V0的頻率為精確的1HZ。123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE9JUN2008SHEETOFFILEH業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)業(yè)555業(yè)業(yè)業(yè)DDBDRAWNBYRDIS7THR6TRIG2GND1CVOLT5R4VCC8Q3555CCRVCCV012圖31基于的秒脈沖發(fā)生器采用555定時器設(shè)計電子時鐘,成本低,容易實現(xiàn)。但是受芯片引腳數(shù)量和功能限制,不容易實現(xiàn)電子時鐘的多功能性。33單片機設(shè)計方案單片機是微型機的一個主要分支,它在結(jié)構(gòu)上的最大特點使把CPU、存儲器、定時器和多種輸入/輸出接口電路集成在一塊超大規(guī)模集成電路芯片上。就其組成和功能而言,一塊單片機芯片就是一臺計算機。單片機的應(yīng)用非常廣泛,其具有集成度高、體積小、可靠性高、性價比優(yōu)異、控制功能強、低功耗、低電壓以及便于生產(chǎn)等特點。在智能儀表、機電一體化、實時控制、分布式多機系統(tǒng)以及人們的生活中均有用武之地。單片機應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計思路和設(shè)計方法。從前必須由模擬電路或數(shù)字電路實現(xiàn)的大部分功能,現(xiàn)在已能用單片機通過軟件方法來實現(xiàn)了。這種用軟件代替硬件的控制技術(shù),是對生產(chǎn)控制技術(shù)的一次革命。利用單片機的智能性,可方便地實現(xiàn)具有智能的電子鐘設(shè)計。單片機均具有時鐘振蕩系統(tǒng),利用系統(tǒng)時鐘借助微處理器的定時器/計數(shù)器可實現(xiàn)電子鐘功能。然而系統(tǒng)時鐘誤差較大,電子鐘的積累誤差也可能較大,所以可以通過誤差修正軟件加以修正,或者在設(shè)計中加入高精度時鐘日歷芯片,以精確時間。另外很多功能不同的單片機是兼容的,這就更便于實現(xiàn)產(chǎn)品的多功能性。電子鐘計時器具有顯示直觀、讀取方便、精度高等優(yōu)點,在計時中廣泛使用。本設(shè)計用單片機組成電子鐘計時器,力求結(jié)構(gòu)簡單、功能穩(wěn)定為目標。設(shè)計中包括硬件電路的設(shè)計和系統(tǒng)程序的設(shè)計。其硬件電路主要有主控制器,計時與顯示電路和啟動、暫停和復位電路等。主控制器采用單片機AT89S51,顯示電路采用共陰極LED數(shù)碼管顯示計時時間。利用AT89S51單片機的定時器/計數(shù)器定時和計數(shù)的原理,使其能精確計時,利用中斷系統(tǒng)使其能實現(xiàn)開始暫停的功能。本設(shè)計要求顯示北京時間和日期,所以需要用到六位七段數(shù)碼管來顯示。其系統(tǒng)結(jié)構(gòu)圖如圖32所示控制按鈕AT89S51單片機控制器六位數(shù)碼管位驅(qū)動圖32系統(tǒng)結(jié)構(gòu)圖4軟硬件設(shè)計41硬件電路設(shè)計該設(shè)計的硬件電路由主控部分單片機AT89S51、計時部分(實時時鐘芯片DS1302)、顯示部分(八段數(shù)碼管)、等部分組成。各部分之間相互協(xié)作,構(gòu)成一個統(tǒng)一的有機整體,實現(xiàn)數(shù)字時鐘的功能。各部分的硬件電路設(shè)計如下。設(shè)計總電路圖見附錄二。411單片機AT89S51外圍電路設(shè)計單片機AT89S51作為主控芯片,控制整個電路的運行。單片機外圍需要一個復位電路,復位電路的功能是系統(tǒng)上電時提供復位信號,直至系統(tǒng)電源穩(wěn)定后,撤消復位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復位信號,以防電源開關(guān)或電源插頭分合過程中引起的抖動而影響復位。該設(shè)計采用含有二極管的復位電路,復位電路可以有效的解決電源毛刺和電源緩慢下降(電池電壓不足)等引起的問題,在電源電壓瞬間下降時可以使電容迅速放電,一定寬度的電源毛刺也可令系統(tǒng)可靠復位。復位電路的設(shè)計圖如圖41示圖41單片機復位電路圖AT89S51具有在系統(tǒng)可編程功能,可以很方便的改寫單片機存儲器內(nèi)的程序不需要把芯片中從工作環(huán)境中剝離,把AT89S51ISP下載口接入電路,可使電路實現(xiàn)該功能。AT89S51需要接入一個普通12MHZ晶振,為其提供穩(wěn)定的時鐘脈沖。該設(shè)計中有6個八段數(shù)碼顯示管LED,所以,在單片機AT89S51外圍需要接入6個三極管來驅(qū)動數(shù)碼顯示管。此外,單片機外圍需要接入3個開關(guān),用來調(diào)整時鐘。單片機外圍電路的設(shè)計圖如圖42所示圖42AT89S51外圍電路圖412DS1302與單片機的接口設(shè)計時鐘芯片DS1302與單片機AT89S51的接口是由3條線來完成的,單片機AT89S51的P10控制DS1302的復位輸入端,P11用來作為DS1302輸入時鐘SCLK控制端,P12與時鐘芯片的數(shù)據(jù)傳輸端相連。DS1302接標準32768KHZ石英晶振。DS1302與單片機的接口電路如圖43所示圖43DS1302與AT89S51連接圖413顯示電路設(shè)計1LED結(jié)構(gòu)與原理常用的LED顯示器共有7段、8段和“米”字段三種顯示形式,8段比7段多了一個小數(shù)點DP段,如圖44A所示。這種顯示器有共陽極和共陰極兩種結(jié)構(gòu),如圖44B和44C所示。共陰極LED顯示器所有發(fā)光二極管的陰極連在一起,通常此共陰極接地。當某個發(fā)光二極管的陽極為高電平時,發(fā)光二極管點亮,相應(yīng)的段顯示。同樣,共陽極LED顯示器的發(fā)光二極管所有陽極連接在一起,通常此共陽極接正電壓,當某個發(fā)光二極管的陰極接低電平時,發(fā)光二極管被點亮,相應(yīng)的段顯示。由此可以看出,二者原理不同但功能相同。圖44LED顯示原理圖其中圖44B為共陰極結(jié)構(gòu)。即把8個發(fā)光二極管陰極連在一起。這時如果需要點亮AG中的任何一盞燈,則只需要在相應(yīng)端輸入高電平即可;輸入低電平則截止。比如我們現(xiàn)在要顯示數(shù)字“3”,則只要在對應(yīng)的A、B、C、D、G段送入高電平,在其他端送入低電平即可,點亮為“3”。圖44C為共陽極結(jié)構(gòu)。其顯示端輸入低電平有效,高電平截止。本設(shè)計采用共陰極數(shù)碼顯示管做顯示電路,所以只要數(shù)碼管的A、B、C、D、E、F、G、H引腳為高電平,那么其對應(yīng)的二極管就會發(fā)光,使數(shù)碼顯示管顯示09的編碼見表41。表41共陰極數(shù)碼顯示管字型代碼共陰極代碼字型共陰極代碼03FH56DH106H67DH25BH707H34FH87FH466H96FH2LED顯示器顯示方式點亮LED顯示器有兩種方式一是靜態(tài)顯示;二是動態(tài)顯示。所謂靜態(tài)顯示,就是當顯示器顯示某一個字符時,相應(yīng)的發(fā)光二極管恒定地導通或截止。如圖45所示為4位靜態(tài)LED顯示器電路。所謂動態(tài)顯示就是一位一位地輪流點亮各位顯示器掃描,對于顯示器每一位而言,每隔一段時間點亮一次。在同一時刻只有一位數(shù)碼管在工作點亮,利用人眼的視覺暫留效應(yīng)和發(fā)光二極管熄滅時的余輝效應(yīng),看到的卻是多個字符“同時”圖45位靜態(tài)LED顯示器電路顯示。顯示器亮度既與點亮時的導通電流有關(guān),也與點亮時間和間隔時間的比例有關(guān)。調(diào)整電流和時間參數(shù),可實現(xiàn)亮度較高較穩(wěn)定的顯示。動態(tài)顯示器的優(yōu)點是節(jié)省硬件資源,成本較低。但在控制系統(tǒng)運行過程中,要保證數(shù)碼管正常顯示,CPU必需每隔一段時間執(zhí)行一次顯示子程序,占用CPU的大量時間,降低了CPU的工作效率,同時顯示亮度較靜態(tài)顯示器低。本設(shè)計為動態(tài)顯示,時間顯示選用6個共陰八段數(shù)碼管LED,其電路如圖46所示圖46八段共陰數(shù)碼管LED414復位電路設(shè)計單片機的第9腳RST為硬件復位端,只要將該端持續(xù)4個機器周期的高電平即可實現(xiàn)復位,復位后單片機的各狀態(tài)都恢復到初始化狀態(tài),其電路如圖47所示圖47復位電路按鍵以及電解電容C3、電阻R2構(gòu)成按鍵及上電復位電路。由于單片機是高電平復位,所以當按鍵RESET1按下時候,單片機的9腳RESET管腳處于高電平,此時單片機處于復位狀態(tài)。當上電后,由于電容的緩慢充電,單片機的9腳電壓逐步由高向低轉(zhuǎn)化,經(jīng)過一段時間后,單片機的9腳處于穩(wěn)定的低電平狀態(tài),此時單片機上電復位完畢,系統(tǒng)程序從0000H開始執(zhí)行。值得注意的是,在設(shè)計當中使用到了硬件復位和軟件復位兩種功能,由上面的硬件復位后的各狀態(tài)可知寄存器及存儲器的值都恢復到了初始值,而前面的功能介紹中提到了倒計時時間的記憶功能,該功能的實現(xiàn)的前提條件就是不能對單片機進行硬件復位,所以設(shè)定了軟復位功能。軟復位實際上就是當程序執(zhí)行完畢之后,將程序指針通過一條跳轉(zhuǎn)指令讓它跳轉(zhuǎn)到程序執(zhí)行的起始地址。415報警電路設(shè)計(一)蜂鳴器的介紹1蜂鳴器的作用。蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設(shè)備、電話機、定時器等電子產(chǎn)品中作發(fā)聲器件。2蜂鳴器的分類。蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。3蜂鳴器的電路圖形符號。蜂鳴器在電路中用字母“H”或“HA”(舊標準用“FM”、“LB”、“JD”等)表示。(二)蜂鳴器的結(jié)構(gòu)原理1壓電式蜂鳴器。壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發(fā)光二極管。多諧振蕩器由晶體管或集成電路構(gòu)成。當接通電源后(1515V直流工作電壓),多諧振蕩器起振,輸出1525KHZ的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。壓電蜂鳴片由鋯鈦酸鉛或鈮鎂酸鉛壓電陶瓷材料制成。在陶瓷片的兩面鍍上銀電極,經(jīng)極化和老化處理后,再與黃銅片或不銹鋼片粘在一起。2電磁式蜂鳴器。電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。接通電源后,振蕩器產(chǎn)生的音頻信號電流通過電磁線圈,使電磁線圈產(chǎn)生磁場。振動膜片在電磁線圈和磁鐵的相互作用下,周期性地振動發(fā)聲。(三)實驗報警電路設(shè)計聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制單片機某個口線的“高”電平或低電平,則在該口線上就能產(chǎn)生一定頻率的矩形波,接上喇叭就能發(fā)出一定頻率的聲音,若再利用延時程序控制“高、低”電平的持續(xù)時間,就能改變輸出頻率,從而改變音調(diào),使喇叭發(fā)出不同的聲音。本文設(shè)計如圖48所示。圖中單片機的17腳輸出具有復合功能,此處用到了單片機17腳的IO端口功能,單片機通過內(nèi)部定時器的操作實現(xiàn)交替變換的波形輸出驅(qū)動揚聲器發(fā)聲。圖48報警電路設(shè)計416鍵盤電路設(shè)計鍵盤是人與單片機打交道的主要設(shè)備。關(guān)于鍵盤硬件電路的設(shè)計方法也可以在文獻和書籍中找到,配合各種不同的硬件電路,這些書籍中一般也提供了相應(yīng)的鍵盤掃描程序。站在系統(tǒng)監(jiān)控軟件設(shè)計的立場上來看,僅僅完成鍵盤掃描,讀取當前時刻的鍵盤狀態(tài)是不夠的,還有不少問題需要妥善解決,否則,人們在操作鍵盤就容易引起誤操作和操作失控現(xiàn)象。在單片機應(yīng)用中鍵盤用得最多的形式是獨立鍵盤及矩陣鍵盤。它們各有自己的特點,其中獨立鍵盤硬件電路簡單,而且在程序設(shè)計上也不復雜,一般用在對硬件電路要求不高的簡單電路中;矩陣鍵盤與獨立鍵盤有很大區(qū)別,首先在硬件電路上它要比獨立鍵盤復雜得多,而且在程序算法上比它要煩瑣,但它在節(jié)省端口資源上有優(yōu)勢得多,因此它更適合于多按鍵電路。其次就是消除在按鍵過程中產(chǎn)生的“毛刺”現(xiàn)象。這里采用最常用的方法,即延時重復掃描法,延時法的原理為因為“毛刺”脈沖一般持續(xù)時間短,約為幾MS,而我們按鍵的時間一般遠遠大于這個時間,所以當單片機檢測到有按鍵動靜后再延時一段時間這里我們?nèi)?0MS后再判斷此電平是否保持原狀態(tài),如果是則為有效按鍵,否則無效。在本次設(shè)計中采用了獨立鍵盤的方式,共使用了5個按鍵進行控制,這5個按鍵分別與單片機AT89S51中的P30P34這5個I/O口相連。其中K1為菜單切換鍵,K2為數(shù)字加鍵,K3為數(shù)字減鍵,K4為啟動計時及復位鍵,K5為中斷鍵。具體按鍵設(shè)計如圖49所示圖49搶答按鍵及調(diào)整按鍵按鍵的觸點在閉合和斷開時均會產(chǎn)生抖動,這時觸點的邏輯電平是不穩(wěn)定的,如不妥善處理,將會引起按鍵命令的錯誤執(zhí)行或重復執(zhí)行?,F(xiàn)在一般均用軟件延時的方法來避開抖動階段,這一延時過程一般大于5MS,例如取1020MS。如果監(jiān)控程序中的讀鍵操作安排在主程序(后臺程序)或鍵盤中斷(外部中斷)子程序中,則該延時子程序便可直接插入讀鍵過程中。如果讀鍵過程安排在定時中斷子程序中,就可省去專門的延時子程序,利用兩次定時中斷的時間間隔來完成抖動處理。42軟件設(shè)計軟件任務(wù)分析和硬件電路設(shè)計結(jié)合進行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計基本定型后,也就基本上決定下來了。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計做一個總體規(guī)劃。從軟件的功能來看可分為兩大類一類是執(zhí)行軟件,它能完成各種實質(zhì)性的功能,如測量,計算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當組織調(diào)度角色的軟件。這兩類軟件的設(shè)計方法各有特色,執(zhí)行軟件的設(shè)計偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時,應(yīng)將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進行定義時,將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對來講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問題。軟件任務(wù)分析的另一個內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個系統(tǒng)軟件可分為后臺程序(背景程序)和前臺程序。后臺程序指主程序及其調(diào)用的子程序,這類程序?qū)崟r性要求不是太高,延誤幾十MS甚至幾百MS也沒關(guān)系,故通常將監(jiān)控程序(鍵盤解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺程序中執(zhí)行;而前臺程序安排一些實時性要求較高的內(nèi)容,如定時系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺,后臺程序為“使系統(tǒng)進入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。根據(jù)以上設(shè)計思想,本系統(tǒng)總體結(jié)構(gòu)見圖410所示系統(tǒng)初始化模塊按鍵模塊時間調(diào)節(jié)日期調(diào)節(jié)顯示切換啟動暫停數(shù)碼顯示模塊圖410軟件總體結(jié)構(gòu)1時間調(diào)節(jié)模塊通過按鍵可以控制分計時,可以實現(xiàn)099分和059秒任意調(diào)整。還可以控制秒計時,能實現(xiàn)099秒任意調(diào)整。2日期調(diào)節(jié)模塊通過按鍵可以對顯示的年、月、日、時、分、秒進行調(diào)節(jié)。3顯示切換模塊通過一個按鍵可以任意選擇所要顯示的效果,可以對顯示日期,顯示24秒倒計時以及顯示分秒時間計時任意進行調(diào)換。4啟動暫停模塊第一次按此按鍵的時候,顯示的數(shù)字都停止,再次按下去的時候就又重新啟動了。程序清單見附錄III。5調(diào)試運行51系統(tǒng)的調(diào)試系統(tǒng)調(diào)試包括硬件調(diào)試和軟件調(diào)試,而且兩者是密不可分的。我們設(shè)計好的硬件電路和軟件程序,只有經(jīng)過聯(lián)合調(diào)試,才能驗證其正確性;軟硬件的配人情況以及是否達到設(shè)計任務(wù)的要求,也只有經(jīng)過調(diào)試,才能發(fā)現(xiàn)問題并加以解決、完善,最終開發(fā)成實用產(chǎn)品。硬件調(diào)試分單元電路調(diào)試和聯(lián)機調(diào)試,單元電路試驗在硬件電路設(shè)計時已經(jīng)進行,這里的調(diào)試只是將其制成印刷電路板后試驗電路是否正確,并排除一些加工工藝性錯誤(如錯線、開路、短路等)。這種調(diào)試可單獨模擬進行,也可通過開發(fā)裝置由軟件配合進行。硬件聯(lián)機調(diào)試則必須在系統(tǒng)軟件的配合下進行。軟件調(diào)試一般包括分塊調(diào)試和聯(lián)機調(diào)試兩個階段。程序的分塊調(diào)試一般在單片機開發(fā)裝置上進行,可根據(jù)所調(diào)程序功能塊的入口參量初值編制一個特殊的程序段,并連同被調(diào)程序功能塊一起在開發(fā)裝置上運行;也可配合對應(yīng)硬件電路單獨運行某程序功能塊,然后檢查是否正確,如果執(zhí)行結(jié)果與預想的不一致,可以通過單步運行或設(shè)置斷點的方法,查出原因并加以改正,直到運行結(jié)果正確為止。這時該程序功能塊已調(diào)試完畢,可去掉附加程序段。其它程序功能塊可按此法進行調(diào)試。程序聯(lián)機調(diào)試就是將已調(diào)試好的各程序功能塊按總體結(jié)構(gòu)聯(lián)成一個完整程序,在所研制的硬件電路上運行。從而試驗程序整體運行的完整性、正確性和與硬件電路的配合情況。在聯(lián)調(diào)中可能會有某些支路上的程序、功能塊因受條件制約而得不到相應(yīng)的輸入?yún)?shù),這時,調(diào)試人員應(yīng)創(chuàng)造條件進行模擬調(diào)試。在聯(lián)調(diào)中如發(fā)現(xiàn)硬件問題也應(yīng)及時修正,直到單片機系統(tǒng)的軟件、硬件全部調(diào)試成功為止。系統(tǒng)調(diào)試完成后,還要進行一段時間的試運行,從而檢驗系統(tǒng)的穩(wěn)定性和抗干擾能力,驗證系統(tǒng)功能是否達到設(shè)計要求,是否達到預期的效果。52軟件調(diào)試問題及解決首先對所用軟件及使用方法介紹如下1、KEIL是德國開發(fā)的一個51單片機開發(fā)軟件平臺,最開始只是一個支持C語言和匯編語言的編譯器軟件。后來隨著開發(fā)人員的不斷努力以及版本的不斷升級,使它已經(jīng)成為了一個重要的單片機開發(fā)平臺,不過KEIL的界面并不是非常復雜,操作也不是非常困難,很多工程師的開發(fā)的優(yōu)秀程序都是在KEIL的平臺上編寫出來的。可以說它是一個比較重要的軟件,熟悉他的人很多很多,用戶群極為龐大,要遠遠超過偉福等廠家軟件用戶群,操作有不懂的地方只要找相關(guān)的書看看,到相關(guān)的單片機技術(shù)論壇問問,很快就可以掌握它的基本使用了。2、總調(diào),即應(yīng)用軟件的鏈接調(diào)試,程序固化,軟、硬件結(jié)合的應(yīng)用系統(tǒng)軟硬件聯(lián)合仿真系統(tǒng)由一個硬件執(zhí)行環(huán)境和一個軟件執(zhí)行環(huán)境組成,通常軟件環(huán)境和硬件環(huán)境都有自己的除錯和控制界面,KEIL與PROTEUS的整合調(diào)試可以實現(xiàn)系統(tǒng)的總調(diào),在該系統(tǒng)中,KEIL作為軟件調(diào)試界面,PROTEUS作為硬件仿真和調(diào)試界面,下面說一下如何在KEIL中調(diào)用PROTEUS進行MCU外圍器件的仿真。安裝KEIL與PROTEUS。把安裝PROTEUSMODELS目錄下VDM51DLL文件復制到KEIL安裝目錄的C51BIN目錄中。修改KEIL安裝目錄TOOLSINI文件,在C51字段加入TDRV5BINVDM51DLL“PROTEUSVSMMONITOR51DRIVER“,保存。(注意不一定要用TDRV5,根據(jù)原來字段選用一個不重復的數(shù)值就可以了。引號內(nèi)的名字隨意)3、打開PROTEUS,畫出相應(yīng)電路,在PROTEUS的DEBUG菜單中選中USEREMOTEDEBUGMONITOR。4、在KEIL中編寫程序。5、進入KEIL的PROJECT菜單OPTIONFORTARGET工程名。在DEBUG選項中右欄上部的下拉菜單選中PROTEUSVSMMONITOR51DRIVER。6、在KEIL中進行DEBUG,同時在PROTEUS中查看直觀的結(jié)果(如LCD顯示,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)推廣試題及答案
- 2025年醫(yī)藥物流保溫協(xié)議范本
- 2025年物流配送合作策劃協(xié)議草案
- 2025年員工福利權(quán)益放棄策劃協(xié)議
- 商業(yè)空間節(jié)假日旅游市場調(diào)研規(guī)劃基礎(chǔ)知識點歸納
- 創(chuàng)客教育理念在語文課堂中的實踐與反思
- 理賠業(yè)務(wù)風險培訓成本風險基礎(chǔ)知識點歸納
- 農(nóng)業(yè)生物技術(shù)創(chuàng)新與食品安全保障
- 醫(yī)體融合促進康復醫(yī)療產(chǎn)業(yè)發(fā)展的路徑
- 老舊市政供水管網(wǎng)更新改造項目工程方案
- 【真題】2023年鎮(zhèn)江市中考道德與法治試卷(含答案解析)
- 二級公立醫(yī)院績效考核三級手術(shù)目錄(2020版)
- 《新模式英語4(第二版)》 課件 Unit 7 On the Job
- 設(shè)備采購 投標方案(技術(shù)方案)
- 2023年遼寧省普通高等學校招生錄取普通類本科批(物理學科類)投檔最低分
- 電力行業(yè)安全檢查表(文檔-)(正式版)
- 影視動畫創(chuàng)作研究
- “雙減”與“五項管理”(課件)主題班會
- VDA6.3檢查要求與證據(jù)清單(VDA6.3檢查表)
- 招標代理機構(gòu)入圍服務(wù) 投標方案(技術(shù)標)
- BIM培訓-什么是BIM完整版
評論
0/150
提交評論