ARM开发(2)基于STM32的蜂鸣器

     基于STM32的蜂鸣器

一 蜂鸣器原理:
 1.1 本实验实现1个蜂鸣器间隔1S鸣叫。

 1.2 实验思路:根据电路图原理,给蜂鸣器相关引脚赋予高低电平,实现电路的导通,使蜂鸣器实现鸣叫或不鸣。

 1.3 开发环境 : MDK5 库函数版本开发 JLINK仿真
二 实验步骤:
 2.1  beep.h代码:
              #ifndef __BEEP_H
              #define __BEEP_H     
              #include "sys.h"
              #define BEEP PBout(10) // BEEP,蜂鸣器接口           
             void BEEP_Init(void);    //初始化                         
              #endif
2.2  beep.c代码(IO配置):
            #include "beep.h"
            void BEEP_Init(void)
            {
             
             GPIO_InitTypeDef  GPIO_InitStructure;
                 
             RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);     //使能GPIOB端口时钟
             
            
             GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;          // 推挽输出
             GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        // IO速度为50MHz
    
             GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;                 //BEEP-->PB.10端口配置
             GPIO_Init(GPIOB, &GPIO_InitStructure);                    // 根据参数初始化GPIOB.10
             GPIO_ResetBits(GPIOB,GPIO_Pin_10);                     // 关闭蜂鸣器输出
            
            }
2.2  main.c代码(实现蜂鸣器间隔1S鸣叫效果):
        #include "sys.h"    
        #include "delay.h"    
        #include "led.h" 
        #include "beep.h" 
        int main(void)
         {
            delay_init();      //延时           
            BEEP_Init();      //蜂鸣器初始化
            while(1)
            {
                BEEP =!BEEP;
                delay_ms(1000);// 1 S延时
            }
         }

三 接线测试:
 
3.1 与板子接线测试效果良好,蜂鸣器间隔1S鸣叫效果良好。


         

posted @ 2017-07-25 15:13  cnblogs伪代码  阅读(1312)  评论(0编辑  收藏  举报