標(biāo)題: 單片機系統(tǒng)上電,按鈕未按下時,LED全滅;奇數(shù)次按下按鈕,LED轉(zhuǎn)換亮滅狀態(tài);偶數(shù)... [打印本頁]

作者: kai221    時間: 2019-3-24 11:02
標(biāo)題: 單片機系統(tǒng)上電,按鈕未按下時,LED全滅;奇數(shù)次按下按鈕,LED轉(zhuǎn)換亮滅狀態(tài);偶數(shù)...
外部中斷0控制LED
硬件電路:
1個按鈕接單片機P3.2引腳,8個LED接單片機P0口。
功能要求:
系統(tǒng)上電,按鈕未按下時,LED全滅;奇數(shù)次按下按鈕,LED轉(zhuǎn)換亮滅狀態(tài);偶數(shù)次按下按鈕,LED維持之前奇數(shù)次按下按鈕的狀態(tài)不變。
具體要求:
使用51單片機的外部中斷0實現(xiàn)按鈕奇、偶次按下的識別;外部中斷0的觸發(fā)方式設(shè)置為下降沿觸發(fā)。
說明:
系統(tǒng)上電,按鈕未按下時,LED全滅,所以
第1次按下按鈕:LED全亮
第2次按下按鈕:LED全亮
第3次按下按鈕:LED全滅
第4次按下按鈕:LED全滅
第5次按下按鈕:LED全亮
第6次按下按鈕:LED全滅
。。。
。。。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include <reg51.h>
  2. unsigned int flag = 0;  // 記錄外部中斷0發(fā)生次數(shù)的變量
  3. /****中斷初始化函數(shù)****/
  4. void  Init()
  5. {  
  6.         //請在此處補上缺失的代碼       
  7. }


  8. /****INT0中斷服務(wù)函數(shù)****/
  9. void  int0() interrupt      //請在此處補上缺失的代碼  
  10. {
  11.         //請在此處補上缺失的代碼
  12.         //提示:取反用~
  13. }


  14. /****主函數(shù)****/
  15. void main()
  16. {
  17.         //請在此處補上缺失的代碼
  18. }
  19.        
復(fù)制代碼

所有資料51hei提供下載:
第4組測試資料.rar (63.91 KB, 下載次數(shù): 14)



作者: jeffphoon    時間: 2020-4-7 08:37
正想要,謝謝分享!




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