標(biāo)題: 51單片機(jī)LED蜂鳴器鳴笛控制仿真+代碼 [打印本頁]

作者: 小菜雞啊    時間: 2019-9-22 22:19
標(biāo)題: 51單片機(jī)LED蜂鳴器鳴笛控制仿真+代碼

希望對大家有幫助

單片機(jī)源程序如下:
  1. #include <reg51.h>
  2. #include <intrins.h>
  3. #define u8 unsigned char
  4. #define u16 unsigned int
  5. sbit beep=P2^3;
  6. sbit key=P3^0;
  7. void delay_ms(u16 x)//毫秒延時函數(shù)
  8. {u16 i,j;
  9. for(i=0;i<x;i++)
  10.     for(j=0;j<115;j++);
  11. }

  12. void delay_us(u8 t) //延時10*t微妙
  13. {u8 i;
  14. for(i=0;i<=t;i++);
  15. }

  16. void BEEP_Alarm(u8 t) //蜂鳴器報警,持續(xù)t秒
  17. {
  18. u8 i,j,k;         
  19. for(j=0;j<t;j++)
  20. { for(i=0;i<200;i++)
  21.       {beep=0;delay_us(50);beep=1;delay_us(50);}
  22.    for(k=0;k<100;k++)
  23.       {beep=0;delay_us(110);beep=1;delay_us(110);}
  24. }
  25. }

  26. void led() //報警燈
  27. {u8 temp,i;

  28. temp=0xf8;
  29.   for(i=0;i<9;i++)
  30. {P0=temp;
  31.   BEEP_Alarm(1);
  32.   temp=_crol_(temp,1);
  33.   }
  34. }

  35.         
  36.            
  37. void main()
  38. {
  39.            if(key==0)//判斷按鍵被按下
  40.            {
  41.                 delay_ms(10);//延時去抖
  42.                 if(key==0)//再次判斷按鍵被按下
  43.                 {
  44.               while(!key); //等待按鍵松開   
  45.               led();
  46.                 }
  47.    }
  48. }
復(fù)制代碼

所有資料51hei提供下載:
模本.zip (58.97 KB, 下載次數(shù): 38)










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