查看: 2725|回复: 2

小雨儿Stm32学习板-蜂鸣器实验

[复制链接] qrcode

30

主题

48

帖子

138

积分

注册会员

Rank: 2

积分
138
发表于 2016-8-16 04:03 PM | 显示全部楼层 |阅读模式
这一次做一个简单的蜂鸣器实验
大家对蜂鸣器应该都有所熟悉了就是一个用来发出滴滴滴的元器件
然后就是看原理图

小雨儿STM32板子蜂鸣器是接到PB10的,所以我们写程序的时候一定要打开GPIOB的时钟
蜂鸣器的驱动部分很简单就是三极管、二极管、电阻、电容
硬件基本就是这样了,下面是进行软件的编写
软件设计
首先我们要用到的库文件有STM32F10X_GPIO.C、STM32F10X_rcc.c
然后就是公共文件里的延时函数,这个是我在网上拷贝过来用的
     SystemInit();     每个工程必须开始时要启动系统时钟
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);  //打开GPIOB的时钟
   while()主程序的函数
        {
                GPIO_SetBits(GPIOB,GPIO_Pin_10);    //高电平输出到PB10
                delay_ms(1000);//0.5S                    延时
                GPIO_ResetBits(GPIOB,GPIO_Pin_10);   //低电平输出到PB10
                delay_ms(1000);//0.5S                  
        }

下面就是GPIO配置
{
        GPIO_InitTypeDef GPIO_InitStructure;          //定义一个函数名

        GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;    //定义PB10为输出端口
        GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;   //设置端口频率
        GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;    //设置推挽输出
        GPIO_Init(GPIOB,&GPIO_InitStructure);            
}


写好后然后进行编译,如果没用问题可以直接下载到板子上。
实验效果没办法展示,可以通过调节延时的快慢发出的声音也是不一样的。


这是我KEIL里写的截图

毫秒延时函数

微妙延时函数
写的不对的地方请大神们指点
附件里是蜂鸣器程序

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

72

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2016-8-16 04:06 PM | 显示全部楼层
点个赞,支持
回复 支持 反对

使用道具 举报

0

主题

84

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2016-8-16 04:25 PM | 显示全部楼层
板凳坐起!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表