實驗5-外部中斷_第1頁
實驗5-外部中斷_第2頁
實驗5-外部中斷_第3頁
實驗5-外部中斷_第4頁
實驗5-外部中斷_第5頁
已閱讀5頁,還剩1頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

CHANGZHOUINSTITUTEOFTECHNOLOGY新型單片機實踐題目:外部中斷二級學院(直屬學部):延陵學院專業:電氣工程及其自動化班級:10電Y2學生姓名:熊群學號:10120827一、實驗目的掌握單片機外部中斷的基本使用方法。了解單片機外部中斷脈沖觸發和電平觸發的不同應用。掌握外部中斷處理程序的編程方法。二、實驗電路元器件編號元器件名稱說明U1AT89C52AT89C52單片機R1~R12RES電阻D1~D12LED-RED紅色LED燈LOGICSTATE脈沖發生器,接單片機外中斷0、1三、實驗流程四、調試和操作主流程P1口接8個LED,實現每次亮一個燈的流水燈,外部中斷0-INT0為下降沿觸發,INT0中斷服務程序使接在P0口的4個燈閃爍3次后返回主程序。外部中斷1-INT1為低電平觸發,INT1中斷服務程序使接在P2口四個燈閃爍6次后返回主程序五、實驗程序#include<intrins.h>#include<REGX52.H>#defineTRUE1#definePORT_OUTP1//定義P1為輸出口voidtime(unsignedintucMs);//延時單位:msvoidmain(void){TCON=0x01;//設置外部中斷0為脈沖觸發方式,設置外部中斷1為低電平觸發方式IE=0x85;//開啟外部中斷0和1PORT_OUT=0xfe;//初始化輸出端口while(TRUE){time(500);//延時0.5秒PORT_OUT=_crol_(PORT_OUT,1);//調用循環座椅函數改變輸出端口的值一循環點亮LED燈}}/*外部中斷0服務程序*/voidextInterrupt0(void)interrupt0{unsignedcharcounter;//循環次數計數EA=0;//關總中斷for(counter=0;counter<3;counter++){P0=0;//點亮P0口LED1time(100);//延時100msP0=0xff;//熄滅P0口LED1time(100);//延時100ms}EA=1;//開總中斷}/*外部中斷1服務程序*/voidextInterrupt1(void)interrupt2{unsignedcharcounter;//循環次數計數EA=0;//關總中斷for(counter=0;counter<3;counter++){P2=0;//點亮P2口LED1time(100);//延時100msP2=0xff;//熄滅P2口LED1time(100);//延時100ms}EA=1;//開總中斷}voiddelay_5us(void)//延時5us,晶振改變時只改變這一個函數{_nop_();_nop_();_nop_();_nop_();}/*delay_50us*/voiddelay_50us(void)//延時50us{unsignedchari;for(i=0;i<4;i++){delay_5us();}}/******************延時100us********************/voiddelay_100us(void)//延時100us{delay_50us();delay_50us();}/*延時單位:ms*/voidtime(unsignedintucMs){

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論