zoukankan      html  css  js  c++  java
  • 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;
                }
            }
                
        } 
    }

       

  • 相关阅读:
    decltype类型指示符
    vector的使用
    参数使用
    CSPS模拟 43
    CSPS模拟 41
    CSPS模拟 42
    NOIP模拟 40
    NOIP模拟 39
    NOIP模拟 38
    NOIP模拟 37
  • 原文地址:https://www.cnblogs.com/wjw1014/p/10114810.html
Copyright © 2011-2022 走看看