找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

簡單的單片機外部中斷程序(給P3.2管腳低電平,led會顯示取反狀態(tài))

[復制鏈接]
跳轉到指定樓層
樓主
ID:331575 發(fā)表于 2018-5-30 21:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  • 很簡單的外部中斷程序,希望對正在學習的人有幫助
  • #include<reg52.h>
  • sbit k3=P3^2;  //定義按鍵K3
  • sbit led=P2^0;         //定義P20口是led
  • void delay(unsigned int i)  //延時函數(shù),i=1時,大約延時10us
  • {
  • while(i--);
  • }
  • void Int0Init()  //設置外部中斷1
  • {
  • //設置INT0   INT0:外部中斷0,由P3.2端口線引入,低電平或下跳沿引起
  • IT0=1;//跳變沿出發(fā)方式(下降沿)
  • EX0=1;//打開INT0的中斷允許。
  • EA=1;//打開總中斷
  • }
  • void main()
  • {
  • Int0Init();  //        設置外部中斷0
  • while(1);
  • }
  • void Int0()        interrupt 0                //外部中斷0的中斷函數(shù)
  • {
  • delay(1000);         //延時消抖
  • if(k3==0)
  • {
  • led=~led; // led狀態(tài)取反
  • }
  • }


程序效果就是給P3.2管腳低電平,led會取反狀態(tài)。

評分

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

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:71421 發(fā)表于 2019-1-9 09:03 | 只看該作者
感謝分享。!正好需要。
回復

使用道具 舉報

板凳
ID:447549 發(fā)表于 2019-11-3 22:01 | 只看該作者
請問程序中while(1)有什么作用???為什么會在Int0Init()后面???
回復

使用道具 舉報

地板
ID:99612 發(fā)表于 2019-11-6 17:57 | 只看該作者
塵世繁華 發(fā)表于 2019-11-3 22:01
請問程序中while(1)有什么作用???為什么會在Int0Init()后面???

Int0Init();  // 初始化設置,while(1);//無限循環(huán);只要有外部中斷發(fā)生,就會停止循環(huán),然后去執(zhí)行中斷函數(shù)。執(zhí)行完中斷函數(shù)后又返回循環(huán)。
回復

使用道具 舉報

5#
ID:634666 發(fā)表于 2019-11-7 00:14 來自手機 | 只看該作者
多謝分享
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

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