標(biāo)題: 單片機(jī)控制發(fā)光二極管狀態(tài)反轉(zhuǎn)的proteus仿真與代碼 [打印本頁]

作者: jiaojiao姣    時(shí)間: 2018-10-30 09:57
標(biāo)題: 單片機(jī)控制發(fā)光二極管狀態(tài)反轉(zhuǎn)的proteus仿真與代碼
通過proteus畫出硬件圖,編寫C51語言程序并調(diào)試:
在單片機(jī)P2.0引腳處接有一個(gè)發(fā)光二極管(低電平驅(qū)動(dòng))。采用外中斷1中斷方式設(shè)計(jì)實(shí)現(xiàn)按鍵壓下一次,發(fā)光二極管狀態(tài)反轉(zhuǎn)一次的功能。


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


單片機(jī)源程序如下:
  1. #include<reg51.h>
  2. sbit P10=P1^0;
  3. sbit P11=P1^1;
  4. sbit P12=P1^2;
  5. sbit P13=P1^3;
  6. sbit P14=P1^4;
  7. sbit P15=P1^5;
  8. sbit P16=P1^6;
  9. sbit P17=P1^7;
  10. sbit P20=P2^0;
  11. sbit P21=P2^1;
  12. sbit P22=P2^2;
  13. sbit P23=P2^3;
  14. sbit P24=P2^4;
  15. sbit P25=P2^5;
  16. sbit P26=P2^6;
  17. sbit P27=P2^7;
  18. void delay(unsigned int t)
  19. {
  20. unsigned int i;
  21. for(;t>0;t--)
  22. {
  23. for(i=0;i<124;i++);
  24. }
  25. }
  26. void main()
  27. {
  28.         while(1)
  29.         {
  30.                 if(P10==0)
  31.                 {
  32.                   delay(100);
  33.                   if(P10==0)
  34.                   {
  35.                     P20=!P20;
  36.                   delay(100);
  37.                   }
  38.                 }
  39.             if(P11==0)
  40.                 {
  41.                   delay(100);
  42.                   if(P11==0)
  43.                   {
  44.                     P21=!P21;
  45.                     delay(100);
  46.                   }
  47.                 }
  48.                 if(P12==0)
  49.                 {
  50.                   delay(100);
  51.                   if(P12==0)
  52.                   {
  53.                     P22=!P22;
  54.                     delay(100);
  55.                   }
  56.                 }
  57.                 if(P13==0)
  58.                 {
  59.                   delay(100);
  60.                   if(P13==0)
  61.                   {
  62.                     P23=!P23;
  63.                     delay(100);
  64.                   }
  65.                 }
  66.                 if(P14==0)
  67.                 {
  68.                   delay(100);
  69.                   if(P14==0)
  70.                   {
  71.                     P24=!P24;
  72.                     delay(100);
  73.                   }
  74.                 }
  75.                 if(P15==0)
  76.                 {
  77.                   delay(100);
  78.                   if(P15==0)
  79.                   {
  80.                     P25=!P25;
  81.                     delay(100);
  82.                   }
  83.                 }
  84.                 if(P16==0)
  85.                 {
  86.                   delay(100);
  87.                   if(P16==0)
  88.                   {
  89.                     P26=!P26;
  90.                     delay(100);
  91.                   }
  92.                 }
  93.                 if(P17==0)
  94.                 {
  95.                   delay(100);
  96.                   if(P17==0)
  97.                   {
  98.                     P27=!P27;
  99.                     delay(100);
  100.                   }
  101.                 }

  102.         }
  103. }
復(fù)制代碼

所有資料51hei提供下載:
JIAO4.rar (48.4 KB, 下載次數(shù): 14)



作者: szy783035328    時(shí)間: 2020-12-17 19:57
最上面那個(gè)三角形是“電源”還是“地”?




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