久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機定時器中斷及仿真 時間到LED反轉(zhuǎn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:449849 發(fā)表于 2022-4-8 09:56 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
設(shè)計一個單片機實驗,完成對定時器事件進行計數(shù),當來2個時,通過中斷用數(shù)碼管顯示相應(yīng)信息或執(zhí)行一個任務(wù),當來6個時,又顯示另外的信息或執(zhí)行另一個任務(wù),計數(shù)具備清零,發(fā)現(xiàn)中斷時,有相應(yīng)信息提示。

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include <reg51.h>

  2. typedef unsigned int u16;          //對數(shù)據(jù)類型進行聲明定義
  3. typedef unsigned char u8;

  4. sbit led1=P3^0;
  5. sbit led2=P1^0;

  6. sbit k0=P3^2;  //定義按鍵K3

  7. #define smg P2

  8. u8 tab[]=                   //段碼表
  9. {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  10. //0,          1,         2,          3,         4,                5,         6,                7,         8,                9,這是共陰極數(shù)碼管0-9的段碼


  11. int count0,count1;

  12. //定時器0溢出中斷程序
  13. void timer0() interrupt 1  //定時器0中斷標志位為1
  14. {
  15.         //重新裝載定時器0計數(shù)初值
  16.         TH0=(65536-50000)/256;
  17.         TL0=(65536-50000)%256;
  18.         if(count0==20)   //T0*10=1s LED1閃爍
  19.         {
  20.                 led1=~led1;
  21.                 count0=0;
  22.         }
  23.         count0++;
  24. }

  25. //定時器1溢出中斷程序
  26. void timer1() interrupt 3  //定時器1中斷標志位為3
  27. {
  28.         //重新裝載定時器1計數(shù)初值
  29.         TH1=(65536-25000)/256;
  30.         TL1=(65536-25000)%256;
  31.         
  32.         count1++;
  33.         
  34.         if(count1==40)  //T1*10=0.5s LED2閃爍  20為2秒
  35.         {
  36.                 led2=~led2;
  37.                 //count1=0;
  38.         }
  39.         if(count1==120*3) //為6秒
  40.         {
  41.                 smg = tab[6];
  42.                 //count1 = 0;
  43.         }
  44.         
  45. }

  46. int main()
  47. {
  48.         EA=1;    //全局中斷使能
  49.         ET0=1;   //定時器0溢出中斷使能
  50.         ET1=1;   //定時器1溢出中斷使能
  51.         TR0=1;   //定時器0使能
  52.         TR1=1;   //定時器1使能
  53.         TMOD=0x11;   //00010001B,定時器0、1使用工作方式1,16位定時器
  54.         //裝載定時器0計數(shù)初值
  55.         TH0=(65536-50000)/256;    //內(nèi)置時鐘頻率為6MHz,定時器0計數(shù)50000次,計數(shù)初值為15536轉(zhuǎn)為16進制
  56.         TL0=(65536-50000)%256;    //機械周期為2us,T0=(65536-計數(shù)初值)*2us=0.1s
  57.         //裝載定時器1計數(shù)初值
  58.         TH1=(65536-25000)/256;    //內(nèi)置時鐘頻率為6MHz,定時器0計數(shù)25000次,計數(shù)初值為40536轉(zhuǎn)為16進制
  59.         TL1=(65536-25000)%256;    //機械周期為2us,T1=(65536-計數(shù)初值)*2us=0.05s
  60.         led1=0;   //控制P3.0
  61.         led2=0;   //控制P1.0
  62.         
  63.         while(1)
  64.         {
  65.                  
  66.         }

  67. }
復(fù)制代碼

Keil代碼與Proteus仿真下載:
定時器中斷: 實驗1.7z (48.79 KB, 下載次數(shù): 12)

評分

參與人數(shù) 1黑幣 +10 收起 理由
admin + 10 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产成人精品免费视频大全最热 | 三级高清 | 国产成人高清 | 久久精品国产亚洲 | 国产精品久久久久久久久久久免费看 | 欧美一级片中文字幕 | 日韩免费网站 | 欧美一级免费 | 中文字幕在线观看第一页 | 久热电影| 欧美精品久久久 | 奇米影视77| 亚洲欧美日韩一区二区 | 欧美黄视频 | 成人日韩精品 | 久久久久久国产精品免费免费 | 国产玖玖 | 日日操夜夜操天天操 | 亚洲精品一区二区三区中文字幕 | 日一日操一操 | 日韩中文在线 | 国产精品久久久久一区二区三区 | 欧美久久一区二区三区 | 日韩精品一区二区在线 | 色偷偷噜噜噜亚洲男人 | 成人午夜黄色 | 综合色婷婷 | 日本精品在线观看 | 久久精品99 | 日韩精品在线观看网站 | 国产精品美女久久久久aⅴ国产馆 | 久草www| 婷婷久久综合 | 欧美成人一区二区 | 91精品在线播放 | 久久久美女 | 精品一区二区av | 久久久噜噜噜www成人网 | 在线观看视频91 | 嫩草黄色影院 | 国产精品成人一区二区三区夜夜夜 |