找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3269|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)外部中斷的運(yùn)用(附仿真文件+源程序)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
一、實(shí)驗(yàn)?zāi)康?/div>
1.學(xué)習(xí)并掌握外中斷的使用。
2.學(xué)習(xí)中斷處理程序的編程方法。
二、實(shí)驗(yàn)設(shè)備
PC 機(jī)一臺(tái)、Keil C 、Proteus
三、實(shí)驗(yàn)內(nèi)容
1.使用單脈沖作中斷源,每按一次按鈕,響應(yīng)一次外部中斷;
2. 實(shí)現(xiàn)中斷的嵌套功能,設(shè)置其優(yōu)先級(jí);
四、實(shí)驗(yàn)步驟
1.本實(shí)驗(yàn)電路如下所示。



五、實(shí)驗(yàn)報(bào)告要求
1.編寫(xiě)程序并加上注釋?zhuān)?/div>
2.把設(shè)計(jì)的PROTEUS仿真圖,寫(xiě)入實(shí)驗(yàn)報(bào)告。
6.思考題: 單片機(jī)外中斷兩種觸發(fā)方式的區(qū)別,各適用于何種情況。
  1. #include<reg51.h>
  2. #define SEG1 P0
  3. #define SEG2 P1
  4. #define SEG3 P2

  5. unsigned char code TAB[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x83,0xf8,0x80,0x98};


  6. void delay(int x)
  7. {
  8.         int i ,j;
  9.         for(i=0;i<x;i++)
  10.                 for(j=0;j<100;j++);
  11. }

  12. main()
  13. {
  14.         IE=0x85;
  15.         IP=0x04;
  16.         TCON=0x05;

  17.         while(1)
  18.         {        
  19.                 int i;
  20.                 for(i=0;i<10;i++)
  21.                 {
  22.                         SEG1=TAB[i];
  23.                         delay(250);
  24.                 }

  25.         }
  26. }

  27. void my_int1(void) interrupt 2
  28. {
  29.         int i;
  30.         for (i=0;i<10;i++)
  31.         {
  32.                 SEG2=TAB[i];
  33.                 delay(250);
  34.         }
  35. }

  36. void my_int0(void) interrupt 0
  37. {
  38.         int i;
  39.         for (i=0;i<10;i++)
  40.         {
  41.                 SEG3=TAB[i];
  42.                 delay(250);
  43.         }
  44. }
復(fù)制代碼
全部資料51hei下載地址:
外部中斷的應(yīng)用.zip (18.14 KB, 下載次數(shù): 17)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表