




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于AT89S51單片機的秒表設計第十一組組長:韓潤澤組員:黃磊劉軒宇何維楊俊生王順志基于AT89S51單片機的秒表設計1AT89S51單片機簡介單片機最小系統,無論對單片機初學人員還是開發(fā)人員都具有十分重要的意義,可以利用最小系統進行編程實現工業(yè)控制。其靈活的硬件電路的設計和軟件的設計,使單片機得到了廣泛的應用,單片機最小系統結構可謂是具有可編程硬件的一個縮影,對我們學習和研究微機系統具有重大意義。單片機最小系統電路板在單片機開發(fā)市場和大學生電子設計方面十分流行。本次課程設計包括AT89S51單片機最小系統(包括復位和時鐘電路)及供電系統、LED數碼管顯示電路。采用AT89S51單片機實現數字秒表的設計。主要以AT89S51單片機為核心,采用4位LED數碼管顯示以及外部中斷電路來實現數字秒表的基本功能。本文簡單介紹了其系統組成,重點討論了其硬軟件的實現過程,并對其計時精度進行了確定,使其達到1秒,并能實現0~60秒的計時。利用Protel電路設計軟件進行原理圖設計,PCB布線,最后通過對硬件系統的仿真觀察其實際運行情況,給我們以直觀的認識。借此鞏固單片機應用、模擬電路、數字電路課程及學會工程軟件protel的使用AT89S51單片機簡介單片機最小系統,無論對單2隨著電子技術的發(fā)展,電子技術在各個領域的運用也越來越廣泛,人對它的認識也逐步加深。秒表計時器常常用于體育競賽及各種其他要求有較精確時間的各領域中。其中啟/停開關的使用方法與傳統的機械計時器相同,即按一下啟/停開關,啟動計時器開始計時,再按一下啟/停開關計時終止。而復位開關可以在任何情況下使用,即使在計時過程中,只要按一下復位開關,計時應立即終止,并對計時器清零。本設計就是利用所學到的電子元器件將脈沖源用數碼管顯示出來,以制成簡易的秒表。秒表是由單片機的P0口和P2口分別控制兩個數碼管使數碼管工作,循環(huán)顯示從00—59。同時用一個開關控制數碼管的啟動與停止,另外加上一個復位電路使其能正常復位,通常還使用石英晶體振蕩器電路構成整個秒表的結構電路。隨著電子技術的發(fā)展,電子技術在各個領域的運用也越來越廣泛,人3方案設計1.1硬件選擇以及電路的設計應遵循的原則:(1)在性價比滿足應用系統要求的基礎上,選擇更可靠、更熟悉的單片機,縮短研制周期。(2)盡可能選擇較成熟的典型應用電路,以提高系統的可靠性。(3)單片機內部的資源與外部擴展資源應在滿足應用系統設計要求的基礎上留有余地,為進一步升級和擴展其功能提供方便。(4)應充分結合軟件方案統籌考慮硬件結構,通常硬件功能較完善,其相應的軟件就簡單,但硬件成本較高;而硬件功能略低,其相應的軟件就復雜。實際中應盡量以軟件替代硬件來降低成本。(5)整個系統的相關器件應盡可能做到性能匹配,如電平、速度的匹配等。(6)充分考慮整個系統的抗干擾設計,如選擇具有抗干擾設計的單片機并充分篩選芯片與器件,在電路中采取隔離和屏蔽措施等。方案設計1.1硬件選擇以及電路的設計應遵循的原則:41.2秒表計時器的原理圖利用單片機作為主控電路,選用四位共陽極的數碼管作為顯示電路以及位控制和控制開關來組成硬件電路。其基本原理圖
AT89S51單片機控制開關四位數碼管位控制1.2秒表計時器的原理圖控制開關四位數碼管位控制5在硬件電路中,利用AT89S51單片機的定時器作精確的定時,利用數碼管對其進行顯示;控制按鈕利用外部中斷0使其實現啟動、外部中斷1使其實現暫停的功能,設置中斷為邊沿觸發(fā)方式,P0口輸出段碼數據,P2.0~P2.1連上譯碼器作為位選;計時器采用T0中斷實現,定時溢出中斷周期為20ms,當溢出中斷后向CPU發(fā)出溢出中斷請求,每發(fā)出5次中斷請求就對20ms位(即最后一位)加一。
在硬件電路中,利用AT89S51單片機的定時器作精確的定時,6硬件的選擇以及設計本設計在選取單片機時,在充分查閱資料并對各種單片機有一個初步了解的基礎上選用了ATMEL公司的AT89S51。AT89S51是一種低功耗、高性能CMOS8位微控制器,具有8K在系統可編程Flash存儲器。與工業(yè)80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash,使得AT89S51為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。AT89S51具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,p0口定時器,2個數據指針,三個16位定時器/計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,它支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。AT89S51單片機采用40腳的DIP封裝,其引腳圖如下所示:硬件的選擇以及設計本設計在選取單片機時,在充分查閱資料并對各7P1.0VCCP1.1P0.0P1.2P0.1P1.3P0.2P1.4P0.3P1.5P0.4P1.6P0.5P1.7P0.6RST/VPDP0.7P3.0RXDEA/VPPP3.1TXDALE/PROGP3.2INT0PSENP3.3INT1P2.7P3.4T0P2.6P3.5T1P2.5P3.6WRP2.4P3.7RDP2.3P2.2XTAL2XTAL1P2.1VSSP2.0P1.0VCC8顯示電路選擇以及設計
對于數字顯示電路而言,通常采用LCD顯示或LED顯示。對于一般的段式LCD,需要專門的驅動電路,而且可視性差;對于具有驅動電路和單片機接口的LCD顯示模塊,一般多采用并行接口,對單片機的接口要求較高,占用資源多;另外,AT89S51單片機本身沒有專門的LCD驅動接口。而LED數碼管作為一種主動顯示器件,具有結構簡單、亮度高、響應速度快、價格便宜、易于購買等優(yōu)點,而且有遠距離視覺效果,很適合夜間或者遠距離操作。因此在本設計中,我們采用7段數碼管作為顯示介質。數碼管顯示可以分為靜態(tài)顯示和動態(tài)顯示兩種。由于本設計需要采用四位數碼管顯示時間,如果靜態(tài)顯示則占用的口線多,硬件電路復雜,所以采用動態(tài)顯示。動態(tài)顯示是一位一位地輪流點亮各位數碼管,這種逐位點亮顯示器的方式稱為位掃描。通常各位數碼管的段選線相應并聯在一起,由一個8位的I/O口控制;各位的公共陰極位選線由另外的I/O口線控制。動態(tài)方式顯示時,各數碼管輪流選通,要使其穩(wěn)定顯示必須采用掃描方式,即在某一時刻只選通一位數碼管并送出相應的段碼,在另一時刻選通另一數碼管,并送出相應的段碼,依次規(guī)律循環(huán),即可以使各位數碼管顯示將要顯示的字符,雖然這些字符是在不同時刻分別顯示,但由于人眼存在視覺暫留效應,只要每位顯示間隔足夠短就可以給人同時顯示的感覺。顯示電路選擇以及設計
對于數字顯示電路而言,通常采用LCD顯9顯示電路如圖AT89S51段驅動位驅動四位數碼管顯示電路如圖段位驅動10系統總體電路的設計
系統采用AT89S51單片機為主電路的核心部分,各個電路均與單片機相連,由單片機統籌協調各個電路的運行工作。開始鍵和暫停鍵使用了外部中斷,所以需要連到單片機的P3.2和P3.3引腳上,這兩個I/O口的第二功能是單片機的外部中斷0端口和外部中斷1端口。顯示電路由四位數碼管組成,采用動態(tài)顯示方式,因此有8位段控制和4位位控制,8位段控制接P0口,P0.0~P0.7分別控制數碼管的abcdefgdp顯示,位控制接在P2.0和P2.1兩個口,再通過一個2—4譯碼器實現位控制。系統總體電路的設計
系統采用AT89S51單片機為主電路的核11系統總體電路圖系統總體電路圖12系統總體電路PCB圖系統總體電路PCB圖13軟件設計
本系統程序主要模塊由主程序、定時中斷服務程序、外部中斷0服務程序和外部中斷1服務程序組成。其中主程序是整個程序的主體。可以對各個中斷程序進行調用。協調各個子程序之間的關系。主程序主要是設置定時器的工作模式,對定時器賦初值,開總中斷、兩個外部中斷以及定時器溢出中斷。并設置外部中斷為脈沖邊沿觸發(fā)方式。軟件設計
本系統程序主要模塊由主程序、定時中斷服務程序、外部14中斷程序設計
中斷是通過硬件來改變CPU的運行方向的。計算機在執(zhí)行程序的過程中,當出現CPU以外的某種情況時,由服務對象向CPU發(fā)出中斷請求信號,要求CPU暫時中斷當前程序的執(zhí)行而轉去執(zhí)行相應的處理程序,待處理程序執(zhí)行完畢后,再繼續(xù)執(zhí)行原來被中斷的程序。中斷之后所執(zhí)行的相應的處理程序通常稱之為中斷服務或中斷處理子程序,原來正常運行的程序稱為主程序。調用中斷服務程序的過程類似于調用子程序,其區(qū)別在于調用子程序在程序中是事先安排好的,而何時調用中斷服務程序事先卻無法確定,因為中斷的發(fā)生是由外部因素決定的,程序中無法事先安排調用指令,因此,調用中斷服務程序的過程是由硬件自動完成的。本方案中用到了三個中斷:外部中斷0、外部中斷1和定時器T0溢出中斷。按CPU在響應中斷時的處理順序,先處理高級中斷,后處理低級中斷,若有多個同級中斷時,則應按自然優(yōu)先順序處理。中斷程序設計
中斷是通過硬件來改變CPU的運行方向的。計算機15(1)外部中斷0服務程序外部中斷0服務程序結合外部P1.0鍵實現數字秒表的啟動功能。啟動定時器T0,TR0=1外部中斷1入口啟動定時器T0,TR0=1中斷返回(1)外部中斷0服務程序外部中斷1入口啟動定時器T0,TR016(2)外部中斷1服務程序外部中斷1服務程序結合外部P1.0鍵實現數字秒表的停止功能。外部中斷1入口停止計時,TR1=0中斷返回(2)外部中斷1服務程序外部中斷1入口停止計時,TR1=0中17(3)定時器T0中斷服務程序當T0溢出后,向CPU發(fā)出中斷請求信號。CPU跳轉到定時中斷程序執(zhí)行,具體流程圖如圖T0中斷T0中斷保護現場加20ms處理恢復現場,中斷返回(3)定時器T0中斷服務程序T0中斷保護現場加20ms處理18系統調試
(1)輸入源程序
打開keil軟件,輸入源程序,輸入時應以英文方式輸入字母和符號,且中文注釋前要加分號。(2)對源程序進行編譯和糾錯
根據自動編譯提供的錯誤信息逐條糾正錯誤,直至編譯信息提示“錯誤(0)”,編譯結束。(3)確定調試方案
在調試程序前一定要認真分析源程序,明確各功能程序運行的預期結果。然后結合源程序應達到的結果,確定出如何通過某些關鍵參數和實驗現象檢驗程序運行結果正確與否。(4)調試程序
調試程序時首先要明確程序的具體功能,對程序做認真分析。程序運行后,觀察有無顯示,時鐘是否工作,運行結果是否正確。若運行結果不正確,首先應根據程序運行的實際現象分析判斷哪些因素可引起相關故障,再通過調試方法逐一認證和排除。通過反復調試,發(fā)現并排除軟件與硬件存在的各類問題,以滿足系統設計的預期目的。在編譯調試通過以后,生成hex文件以待仿真之用。系統調試
(1)輸入源程序19程序清單:
#include<reg52.h>//包含51單片機寄存器定義的頭文件unsignedcharcodeTab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//數碼管顯示0~9的段碼表unsignedcharint_time;//記錄中斷次數unsignedcharsecond;//儲存秒/***********************************************************************函數功能:快速動態(tài)掃描延時,延時約0.6毫秒************************************************************************/voiddelay(void){unsignedchari;for(i=0;i<200;i++);}/***********************************************************************函數功能:顯示秒入口參數:k出口參數:無************************************************************************/程序清單:
#include<reg52.h>//包20voidDisplaySecond(unsignedchark){P2=0xfd;//P2.1引腳輸出低電平P0=Tab[k/10];//顯示十位delay();delay();delay();delay();delay();delay();delay();delay();P2=0xf7;//P2.0引腳輸出低電平P0=Tab[k%10];//顯示個位delay();delay();voidDisplaySecond(unsignedch21delay();delay();delay();delay();delay();delay();P2=0xff;//關閉所有數碼管P0=0xff;//顯示個位delay();delay();delay();delay();delay();delay();delay();delay();} voidmain(void)//主函數delay();22TMOD=0x01;//使用定時器T0 TH0=(65536-46083)/256;//將定時器計時時間設定為46083×1.085微秒//=50000微秒=50毫秒TL0=(65536-46083)%256; EA=1;//開啟總中斷 ET0=1;//定時器T0中斷允許 TR0=1;//啟動定時器T0開始運行int_time=0;//中斷次數初始化second=0; //秒初始化
while(1){ DisplaySecond(second); //調用秒的顯示子程序 }}//********************************************************//函數功能:定時器T0的中斷服務程序//*******************************************************TMOD=0x01;//23voidinterserve(void)interrupt1using1{TR0=0;//關閉定時器T0int_time++;//每來一次中斷,中斷次數int_time自加1 if(int_time==20)//夠20次中斷,即1秒鐘進行一次檢測結果采樣 {int_time=0;//中斷次數清0second++;//秒加1if(second==60) second=0;//秒等于60就返回0 } TH0=(65536-46083)/256;//重新給計數器T0賦初值TL0=(65536-46083)%256; TR0=1;//啟動定時器T0}voidinterserve(void)interru24
???????
??????
秒表時鐘單片機課件25基于AT89S51單片機的秒表設計第十一組組長:韓潤澤組員:黃磊劉軒宇何維楊俊生王順志基于AT89S51單片機的秒表設計26AT89S51單片機簡介單片機最小系統,無論對單片機初學人員還是開發(fā)人員都具有十分重要的意義,可以利用最小系統進行編程實現工業(yè)控制。其靈活的硬件電路的設計和軟件的設計,使單片機得到了廣泛的應用,單片機最小系統結構可謂是具有可編程硬件的一個縮影,對我們學習和研究微機系統具有重大意義。單片機最小系統電路板在單片機開發(fā)市場和大學生電子設計方面十分流行。本次課程設計包括AT89S51單片機最小系統(包括復位和時鐘電路)及供電系統、LED數碼管顯示電路。采用AT89S51單片機實現數字秒表的設計。主要以AT89S51單片機為核心,采用4位LED數碼管顯示以及外部中斷電路來實現數字秒表的基本功能。本文簡單介紹了其系統組成,重點討論了其硬軟件的實現過程,并對其計時精度進行了確定,使其達到1秒,并能實現0~60秒的計時。利用Protel電路設計軟件進行原理圖設計,PCB布線,最后通過對硬件系統的仿真觀察其實際運行情況,給我們以直觀的認識。借此鞏固單片機應用、模擬電路、數字電路課程及學會工程軟件protel的使用AT89S51單片機簡介單片機最小系統,無論對單27隨著電子技術的發(fā)展,電子技術在各個領域的運用也越來越廣泛,人對它的認識也逐步加深。秒表計時器常常用于體育競賽及各種其他要求有較精確時間的各領域中。其中啟/停開關的使用方法與傳統的機械計時器相同,即按一下啟/停開關,啟動計時器開始計時,再按一下啟/停開關計時終止。而復位開關可以在任何情況下使用,即使在計時過程中,只要按一下復位開關,計時應立即終止,并對計時器清零。本設計就是利用所學到的電子元器件將脈沖源用數碼管顯示出來,以制成簡易的秒表。秒表是由單片機的P0口和P2口分別控制兩個數碼管使數碼管工作,循環(huán)顯示從00—59。同時用一個開關控制數碼管的啟動與停止,另外加上一個復位電路使其能正常復位,通常還使用石英晶體振蕩器電路構成整個秒表的結構電路。隨著電子技術的發(fā)展,電子技術在各個領域的運用也越來越廣泛,人28方案設計1.1硬件選擇以及電路的設計應遵循的原則:(1)在性價比滿足應用系統要求的基礎上,選擇更可靠、更熟悉的單片機,縮短研制周期。(2)盡可能選擇較成熟的典型應用電路,以提高系統的可靠性。(3)單片機內部的資源與外部擴展資源應在滿足應用系統設計要求的基礎上留有余地,為進一步升級和擴展其功能提供方便。(4)應充分結合軟件方案統籌考慮硬件結構,通常硬件功能較完善,其相應的軟件就簡單,但硬件成本較高;而硬件功能略低,其相應的軟件就復雜。實際中應盡量以軟件替代硬件來降低成本。(5)整個系統的相關器件應盡可能做到性能匹配,如電平、速度的匹配等。(6)充分考慮整個系統的抗干擾設計,如選擇具有抗干擾設計的單片機并充分篩選芯片與器件,在電路中采取隔離和屏蔽措施等。方案設計1.1硬件選擇以及電路的設計應遵循的原則:291.2秒表計時器的原理圖利用單片機作為主控電路,選用四位共陽極的數碼管作為顯示電路以及位控制和控制開關來組成硬件電路。其基本原理圖
AT89S51單片機控制開關四位數碼管位控制1.2秒表計時器的原理圖控制開關四位數碼管位控制30在硬件電路中,利用AT89S51單片機的定時器作精確的定時,利用數碼管對其進行顯示;控制按鈕利用外部中斷0使其實現啟動、外部中斷1使其實現暫停的功能,設置中斷為邊沿觸發(fā)方式,P0口輸出段碼數據,P2.0~P2.1連上譯碼器作為位選;計時器采用T0中斷實現,定時溢出中斷周期為20ms,當溢出中斷后向CPU發(fā)出溢出中斷請求,每發(fā)出5次中斷請求就對20ms位(即最后一位)加一。
在硬件電路中,利用AT89S51單片機的定時器作精確的定時,31硬件的選擇以及設計本設計在選取單片機時,在充分查閱資料并對各種單片機有一個初步了解的基礎上選用了ATMEL公司的AT89S51。AT89S51是一種低功耗、高性能CMOS8位微控制器,具有8K在系統可編程Flash存儲器。與工業(yè)80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash,使得AT89S51為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。AT89S51具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,p0口定時器,2個數據指針,三個16位定時器/計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,它支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。AT89S51單片機采用40腳的DIP封裝,其引腳圖如下所示:硬件的選擇以及設計本設計在選取單片機時,在充分查閱資料并對各32P1.0VCCP1.1P0.0P1.2P0.1P1.3P0.2P1.4P0.3P1.5P0.4P1.6P0.5P1.7P0.6RST/VPDP0.7P3.0RXDEA/VPPP3.1TXDALE/PROGP3.2INT0PSENP3.3INT1P2.7P3.4T0P2.6P3.5T1P2.5P3.6WRP2.4P3.7RDP2.3P2.2XTAL2XTAL1P2.1VSSP2.0P1.0VCC33顯示電路選擇以及設計
對于數字顯示電路而言,通常采用LCD顯示或LED顯示。對于一般的段式LCD,需要專門的驅動電路,而且可視性差;對于具有驅動電路和單片機接口的LCD顯示模塊,一般多采用并行接口,對單片機的接口要求較高,占用資源多;另外,AT89S51單片機本身沒有專門的LCD驅動接口。而LED數碼管作為一種主動顯示器件,具有結構簡單、亮度高、響應速度快、價格便宜、易于購買等優(yōu)點,而且有遠距離視覺效果,很適合夜間或者遠距離操作。因此在本設計中,我們采用7段數碼管作為顯示介質。數碼管顯示可以分為靜態(tài)顯示和動態(tài)顯示兩種。由于本設計需要采用四位數碼管顯示時間,如果靜態(tài)顯示則占用的口線多,硬件電路復雜,所以采用動態(tài)顯示。動態(tài)顯示是一位一位地輪流點亮各位數碼管,這種逐位點亮顯示器的方式稱為位掃描。通常各位數碼管的段選線相應并聯在一起,由一個8位的I/O口控制;各位的公共陰極位選線由另外的I/O口線控制。動態(tài)方式顯示時,各數碼管輪流選通,要使其穩(wěn)定顯示必須采用掃描方式,即在某一時刻只選通一位數碼管并送出相應的段碼,在另一時刻選通另一數碼管,并送出相應的段碼,依次規(guī)律循環(huán),即可以使各位數碼管顯示將要顯示的字符,雖然這些字符是在不同時刻分別顯示,但由于人眼存在視覺暫留效應,只要每位顯示間隔足夠短就可以給人同時顯示的感覺。顯示電路選擇以及設計
對于數字顯示電路而言,通常采用LCD顯34顯示電路如圖AT89S51段驅動位驅動四位數碼管顯示電路如圖段位驅動35系統總體電路的設計
系統采用AT89S51單片機為主電路的核心部分,各個電路均與單片機相連,由單片機統籌協調各個電路的運行工作。開始鍵和暫停鍵使用了外部中斷,所以需要連到單片機的P3.2和P3.3引腳上,這兩個I/O口的第二功能是單片機的外部中斷0端口和外部中斷1端口。顯示電路由四位數碼管組成,采用動態(tài)顯示方式,因此有8位段控制和4位位控制,8位段控制接P0口,P0.0~P0.7分別控制數碼管的abcdefgdp顯示,位控制接在P2.0和P2.1兩個口,再通過一個2—4譯碼器實現位控制。系統總體電路的設計
系統采用AT89S51單片機為主電路的核36系統總體電路圖系統總體電路圖37系統總體電路PCB圖系統總體電路PCB圖38軟件設計
本系統程序主要模塊由主程序、定時中斷服務程序、外部中斷0服務程序和外部中斷1服務程序組成。其中主程序是整個程序的主體??梢詫Ω鱾€中斷程序進行調用。協調各個子程序之間的關系。主程序主要是設置定時器的工作模式,對定時器賦初值,開總中斷、兩個外部中斷以及定時器溢出中斷。并設置外部中斷為脈沖邊沿觸發(fā)方式。軟件設計
本系統程序主要模塊由主程序、定時中斷服務程序、外部39中斷程序設計
中斷是通過硬件來改變CPU的運行方向的。計算機在執(zhí)行程序的過程中,當出現CPU以外的某種情況時,由服務對象向CPU發(fā)出中斷請求信號,要求CPU暫時中斷當前程序的執(zhí)行而轉去執(zhí)行相應的處理程序,待處理程序執(zhí)行完畢后,再繼續(xù)執(zhí)行原來被中斷的程序。中斷之后所執(zhí)行的相應的處理程序通常稱之為中斷服務或中斷處理子程序,原來正常運行的程序稱為主程序。調用中斷服務程序的過程類似于調用子程序,其區(qū)別在于調用子程序在程序中是事先安排好的,而何時調用中斷服務程序事先卻無法確定,因為中斷的發(fā)生是由外部因素決定的,程序中無法事先安排調用指令,因此,調用中斷服務程序的過程是由硬件自動完成的。本方案中用到了三個中斷:外部中斷0、外部中斷1和定時器T0溢出中斷。按CPU在響應中斷時的處理順序,先處理高級中斷,后處理低級中斷,若有多個同級中斷時,則應按自然優(yōu)先順序處理。中斷程序設計
中斷是通過硬件來改變CPU的運行方向的。計算機40(1)外部中斷0服務程序外部中斷0服務程序結合外部P1.0鍵實現數字秒表的啟動功能。啟動定時器T0,TR0=1外部中斷1入口啟動定時器T0,TR0=1中斷返回(1)外部中斷0服務程序外部中斷1入口啟動定時器T0,TR041(2)外部中斷1服務程序外部中斷1服務程序結合外部P1.0鍵實現數字秒表的停止功能。外部中斷1入口停止計時,TR1=0中斷返回(2)外部中斷1服務程序外部中斷1入口停止計時,TR1=0中42(3)定時器T0中斷服務程序當T0溢出后,向CPU發(fā)出中斷請求信號。CPU跳轉到定時中斷程序執(zhí)行,具體流程圖如圖T0中斷T0中斷保護現場加20ms處理恢復現場,中斷返回(3)定時器T0中斷服務程序T0中斷保護現場加20ms處理43系統調試
(1)輸入源程序
打開keil軟件,輸入源程序,輸入時應以英文方式輸入字母和符號,且中文注釋前要加分號。(2)對源程序進行編譯和糾錯
根據自動編譯提供的錯誤信息逐條糾正錯誤,直至編譯信息提示“錯誤(0)”,編譯結束。(3)確定調試方案
在調試程序前一定要認真分析源程序,明確各功能程序運行的預期結果。然后結合源程序應達到的結果,確定出如何通過某些關鍵參數和實驗現象檢驗程序運行結果正確與否。(4)調試程序
調試程序時首先要明確程序的具體功能,對程序做認真分析。程序運行后,觀察有無顯示,時鐘是否工作,運行結果是否正確。若運行結果不正確,首先應根據程序運行的實際現象分析判斷哪些因素可引起相關故障,再通過調試方法逐一認證和排除。通過反復調試,發(fā)現并排除軟件與硬件存在的各類問題,以滿足系統設計的預期目的。在編譯調試通過以后,生成hex文件以待仿真之用。系統調試
(1)輸入源程序44程序清單:
#include<reg52.h>//包含51單片機寄存器定義的頭文件unsignedcharcodeTab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//數碼管顯示0~9的段碼表unsignedcharint_time;//記錄中斷次數unsignedcharsecond;//儲存秒/***********************************************************************函數功能:快速動態(tài)掃描延時,延時約0.6毫秒************************************************************************/voiddelay(void){unsignedchari;for(i=0;i<200;i++);}/***********************************************************************函數功能:顯示秒入口參數:k出口參數:無************************************************************************/程序清單:
#include<reg52.h>//包45voidDisplaySecond(unsigned
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國連體椅市場分析及競爭策略研究報告
- 2025至2030年中國網吧桌椅市場分析及競爭策略研究報告
- 2025年角鯧魚項目可行性研究報告
- 拮抗細菌與植物源提取物復配防治馬尾松枯梢病研究
- 某公司改粉色MPCVD合成鉆石的顏色優(yōu)化處理方式對鉆石譜學特征的影響
- 2025年無線門鈴項目可行性研究報告
- 旅游業(yè)機械設備及服務人員投入計劃范文
- 陜旅版六年級英語情境教學計劃
- 小學心理咨詢室創(chuàng)意活動推廣計劃
- 購物中心品牌專柜租賃及品牌戰(zhàn)略咨詢合同
- 宋小寶小品《碰瓷》完整臺詞
- 2023年高速公路收費員面試
- 家長課堂(預防接種)
- 無菌技術操作培訓-課件
- 結合工作實際談如何改進工作作風、提高工作效率、改進工作方法六篇
- 醫(yī)院醫(yī)學倫理委員會相關表格模版(共3個)
- 道德與法治一年級下冊《大家一起來合作》教學設計
- 中國傳統故事英文十二生肖二篇
- ETL認證的工廠審查
- 基本醫(yī)療保險異地就醫(yī)備案個人承諾書
- 中國古代文學史 馬工程課件(下)05第七編明代文學 第四章 《水滸傳》
評論
0/150
提交評論