首页 > 代码库 > 蜂鸣器
蜂鸣器
功能
使蜂鸣器发出响声
分析
- 查看原理图蜂鸣器的端口是PF8
- 管脚外设时钟的配置
- 管脚输出状态的配置
- 模式配置
- 输出类型设置——推挽输出
- 输出速率设置
- 循环打开、等待、关闭、等待操作
代码
1 //beep.h 2 #ifndef _BEEP_H_ 3 #define _BEEP_H_ 4 5 #define BEEP_ON (GPIOF->ODR |= (1<<8)) 6 #define BEEP_OFF (GPIOF->ODR &= ~(1<<8)) 7 8 void Beep_Init(void); 9 void Delay(int n);10 11 #endif
1 //beep.c 2 #include "stm32f4xx.h" 3 #include "beep.h" 4 5 void Beep_Init(void) 6 { 7 //管脚外设时钟 8 RCC->AHB1ENR |= (1<<5); 9 //PF8管脚状态10 //模式配置11 GPIOF->MODER &= ~(0X3<<16); //清零12 GPIOF->MODER |= (0X1<<16); //PF8配置为通用输出状态13 //输出类型配置14 GPIOF->OTYPER &= ~(0X1<<8); //推挽输出 15 //速率配置16 GPIOF->OSPEEDR &= ~(0X1<<16);17 GPIOF->OSPEEDR |= (0X2<<16); 18 //上下拉配置19 GPIOF->PUPDR &= ~(0X3<<16);20 GPIOF->PUPDR |= (0X1<<16);21 }22 23 void Delay(int n)24 {25 while(n--);26 }
1 //main.c 2 #include "stm32f4xx.h" 3 #include "beep.h" 4 5 int main() 6 { 7 while(1) 8 { 9 Beep_Init();10 BEEP_ON;11 Delay(1000000);12 BEEP_OFF;13 Delay(1000000);14 }15 }
蜂鸣器
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。