51单片机 中断控制蜂鸣器
51单片机 中断控制蜂鸣器
单片机通过使用外部中断控制蜂鸣器。
#include <reg51.h> #define uint unsigned int #define uchar unsigned char // 定义蜂鸣器连接的引脚 sbit beep = P1^0; // 延时函数 void delay(uint x) { uchar i; while(x--) for(i=0;i<120;i++); } // 初始化外部中断1 void INT1_Init() { EA=0; EX1 = 1; IT1 = 1; EA = 1; } void main() { // 调用初始化中断1 INT1_Init() while(1) { } } // 外部中断1 void INT1_int1() interrupt 2 { delay(10); // 延时消抖 if(!INT1) { beep=INT1; while(1) // 蜂鸣器响 { beep =~beep; delay(1); if(INT1) // 如果按钮松开 { beep = INT1; break; } } } }
【版权声明】本博文著作权归作者所有,任何形式的转载都请联系作者获取授权并注明出处!
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】粘你一身大鼻嘎 : http://www.cnblogs.com/wjw1014
【CSDN地址】粘你一身大鼻嘎 : https://wjw1014.blog.csdn.net/
【Gitee地址】粘你一身大鼻嘎 :https://gitee.com/wjw1014
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】粘你一身大鼻嘎 : http://www.cnblogs.com/wjw1014
【CSDN地址】粘你一身大鼻嘎 : https://wjw1014.blog.csdn.net/
【Gitee地址】粘你一身大鼻嘎 :https://gitee.com/wjw1014