欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2575|回復: 1
打印 上一主題 下一主題
收起左側

STC8951單片機的外部中斷資源

[復制鏈接]
跳轉到指定樓層
樓主
ID:432417 發(fā)表于 2020-7-26 20:04 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
以程序為例:
  1. #include<reg52.h>

  2. sbit led=P3^0;

  3. void main()
  4. {
  5.          IT0=1;        //設置外部中斷0的觸發(fā)方式為下降沿
  6.          EX0=1;        //開啟外部中斷0
  7.                                                                                                           //中斷的設置,首先設置中斷的觸發(fā)方式,再設置開啟終端,最后開啟總中斷。
  8.          IT1=1; //設置外部中斷1的觸發(fā)方式為下降沿                         //順序保證:最后開啟總中斷
  9.          EX1=1;        //開啟外部中斷1

  10.          EA =1;        //總中斷開關
  11.         while(1)
  12.         {
  13.                 P0=0xaa;
  14.                 P0=0xff;
  15.         }
  16. }

  17. void EX0_ISR(void) interrupt 0
  18. {
  19.         led=~led;
  20. }

  21. void EX1_ISR(void) interrupt 2     //外部中斷1的中斷在此為2!!!!
  22. {
  23.         led=~led;
  24. }
復制代碼

對于中斷的理解:單片機中斷和Java、Android中的線程有些像。中斷的使用:首先要聲明、設置中斷服務,在此以外部中斷0和1作解。首先要設置中斷的觸發(fā)方式,再設置中斷的開啟,最后再設置中斷的總開關。IT0=1和IT1=1分別設置外部中斷0的觸發(fā)方式低電平觸發(fā)也就是下降沿觸發(fā),同理IT1的觸發(fā)方式也是如此。EX0=1和EX1=1是設置外部中斷0和外部中斷1都開啟。EA=1是設置開啟中斷的所有開關。

以上是對中斷的聲明與設置。完成以上步驟要寫中斷響應服務。即代碼中:

  1. void EX0_ISR(void) interrupt 0
  2. {
  3.         led=~led;
  4. }

  5. void EX1_ISR(void) interrupt 2     //外部中斷1的中斷在此為2!!!!
  6. {
  7.         led=~led;
  8. }
復制代碼
所謂的低電平觸發(fā)是說的單片機上INT0與INT1變?yōu)榈碗娖綍r侯。

也就是當開關按下的時候。

我在這一部分中容易犯得錯誤就是中斷初始化那三行代碼記的不熟悉。

  1. IT0=1;
  2. EX0=1;
  3. EA=1;
復制代碼



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

使用道具 舉報

沙發(fā)
ID:636538 發(fā)表于 2020-7-27 15:11 | 只看該作者
這個也不需要刻意記,在數據手冊上寫的清楚,測試例程也有,當然能記住最好,
回復

使用道具 舉報

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

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表