|
这一次做一个简单的蜂鸣器实验
大家对蜂鸣器应该都有所熟悉了就是一个用来发出滴滴滴的元器件
然后就是看原理图
小雨儿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
|