STM32F429--串口控制蜂鸣器不同频率实现过程

通过串口接收到的不定长数据判断,如果是两个字节就进行蜂鸣器控制,通过第二个字节来控制蜂鸣器的频率,控制频率的方法是新开一个定时器,设置定时时间为串口接收到的第二个字节控制的时间,如果串口接收到第二个字节为01,则开定时器

bsp_StartAutoTimer(0,1); //500hz,

main函数中调用check函数:

while (1){ if(bsp_CheckTimer(0)){bsp_beept();}};

即每1ms蜂鸣器IO电平信号反转一次,即每2ms蜂鸣器接收到一个方波,蜂鸣器此时频率为500hz,其余情况类推。

  • Main函数:

 

 

  • 实现过程函数:

每次进入case时先关闭定时器,防止上一次的设置造成影响,当控制信号为00时,关闭定时器,拉低蜂鸣器电频,break,蜂鸣器关闭。

猜你喜欢

转载自blog.csdn.net/qq_39540224/article/details/81178708