標(biāo)題: 單片機(jī)外部中斷實(shí)驗(yàn)報(bào)告 單片機(jī)原理及應(yīng)用 [打印本頁(yè)]

作者: 51ren    時(shí)間: 2017-1-14 02:16
標(biāo)題: 單片機(jī)外部中斷實(shí)驗(yàn)報(bào)告 單片機(jī)原理及應(yīng)用
完整的實(shí)驗(yàn)報(bào)告下載:
單片機(jī)外部中斷實(shí)驗(yàn)報(bào)告.doc (293 KB, 下載次數(shù): 55)


-------------部分內(nèi)容預(yù)覽-----------------------
重 慶 交 通 大 學(xué)
學(xué)生實(shí)驗(yàn)報(bào)告

實(shí)驗(yàn)課程名稱單片機(jī)原理及應(yīng)用
開(kāi)課實(shí)驗(yàn)室  信息技術(shù)實(shí)踐中心
學(xué)      院 信息科學(xué)與工程學(xué)院年級(jí)2014級(jí)專業(yè)班通信3班
學(xué) 生 姓 名 劉凱學(xué)  號(hào)    63140680111
開(kāi) 課 時(shí) 間   20152016學(xué)年第學(xué)期

總 成 績(jī)

教師簽名

注:實(shí)驗(yàn)成果考核方式采用非實(shí)驗(yàn)報(bào)告形式的,可自行制定封面。

單片機(jī)原理及應(yīng)用 實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)項(xiàng)目名稱:外部中斷實(shí)驗(yàn)  
實(shí)驗(yàn)日期:第四次課      實(shí)驗(yàn)成績(jī):
    1、掌握單片機(jī)外部中斷的原理及使用方法;
    2、掌握中斷處理程序的編程方法。
2、實(shí)驗(yàn)器材            
  (1)AT89C52:?jiǎn)纹瑱C(jī);(2)7SEG-COM-CAT-GRN:數(shù)碼管;(3)CAP、CAP-ELE:電容與電解電容;(4)CRYSTAL:晶振;(5)BUTTON:按鍵;(6)RES:電阻。
     用AT89C52單片機(jī)外部中斷功能改變數(shù)碼管的顯示狀態(tài),當(dāng)無(wú)外部中斷0中斷請(qǐng)求時(shí),主程序運(yùn)行狀態(tài)為數(shù)碼管的a~g段依次點(diǎn)亮循環(huán)顯示;當(dāng)有外中斷0輸入時(shí),立即產(chǎn)生中斷,轉(zhuǎn)而執(zhí)行中斷服務(wù)程序,數(shù)碼管顯示狀態(tài)改為閃爍顯示“8”,閃爍顯示“8”8次后,返回主程序斷點(diǎn)處繼續(xù)執(zhí)行主程序,繼續(xù)把a(bǔ)~g依次點(diǎn)亮循環(huán)顯示。
1、根據(jù)外部中斷實(shí)驗(yàn)的原理圖在protues軟件上找到相應(yīng)器件并連接好線路;
2、在keil軟件上編寫(xiě)外部中斷的源程序;
3、調(diào)試程序并生成hex文件;
4、把hex文件加載到89C52單片機(jī)上,調(diào)試仿真,直到達(dá)到實(shí)驗(yàn)要求為止。
C語(yǔ)言源代碼:
  1. #include
  2. unsigned char code table[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  3. void delay(unsigned char delay_time)
  4. {
  5.   unsigned char i,j;
  6.   for(i=0;i<=delay_time;i++)
  7.    {
  8.      for(j=0;j<=200;j++);
  9.    }
  10. }
  11. void init_tx()
  12. {
  13.   EA=1;
  14.   EX0=1;
  15.   IP=0x00;
  16. }
  17. void main()
  18. {
  19.   unsigned char i;
  20.   init_tx();
  21.   while(1)
  22.   {
  23.     for(i=0;i<8;i++)
  24.      {
  25.                  P1=table[i];
  26.                  delay(200);
  27.               }
  28.   }
  29. }
  30. void tx0()  interrupt 0
  31. {
  32. unsigned char i;
  33.   P1=0x00;
  34.   delay(200);
  35.   for(i=1;i<=15;i++)
  36.   {
  37.     P1=~P1;
  38.               delay(200);
  39.   }
  40. }
復(fù)制代碼


    運(yùn)行仿真程序,當(dāng)沒(méi)有0中斷請(qǐng)求時(shí),數(shù)碼管從a~g依次循環(huán)閃爍;當(dāng)按一下TNT0的按鍵時(shí),就相當(dāng)于輸入了中斷請(qǐng)求,數(shù)碼管將會(huì)出現(xiàn)8次“8”后,然后再次從a~g依次循環(huán)顯示。


作者: fangfang。    時(shí)間: 2019-4-17 16:06
你好 我想請(qǐng)問(wèn)下為啥我的數(shù)碼管不亮呢

作者: 704597517    時(shí)間: 2019-4-17 21:19
fangfang。 發(fā)表于 2019-4-17 16:06
你好 我想請(qǐng)問(wèn)下為啥我的數(shù)碼管不亮呢

P0口上拉電阻




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1