Stm32蜂鸣器告警-项目功能
Stm32蜂鸣器项目主要技能开发
采用Stm32单片机的压电蜂鸣器-主要项目
我写了一个stm32f103c8t6开发板入门教程,你可以通过点击下面的按钮找到它。按钮将引导你到一个教程,其中解释了关于板和如何配置和程序使用stm32cubemx软件实用程序。
- 如何在stm32cubemx代码配置器中配置stm32单片机的GPIO管脚,以及如何在keil uvison arm ide中导入代码。
Stm32压电蜂鸣器-项目电路
为什么我在电路中使用晶体管?
stm32微控制器是3.3伏特容许器件。他们的GPIO可以输出3.3 v的最大电压,并在3.3伏特时提供约20 mA到40 mA的电流。这种电压和电流不适合驱动压电蜂鸣器。小型压电蜂鸣器工作在3-5v,消耗约15毫安的电流。压电蜂鸣器平均工作电压约5伏,消耗50毫安电流。因此,用stm32微控制器或任何通用微处理器GPIO管脚直接驱动压电式蜂鸣器是一个坏主意。
另一方面,晶体管工作在一个非常小的电压和有能力驱动沉重的负载,这是不可能直接与微控制器的GPIO的驱动。为防止stm32微控制器出现任何与电源相关的问题,如开机、复位和其他潜在错误,蜂鸣器与晶体管接口。现在晶体管控制蜂鸣器,晶体管由stm32微控制器控制。
该项目使用了一个NPN晶体管。蜂鸣器用1 k欧姆电阻连接到npn晶体管的集电极侧。电阻限制蜂鸣器所排放的电流,只允许蜂鸣器所需要的量在电路中流动。
上拉和下拉电阻激活
我激活了与我在项目中使用的每个引脚相关的电阻。按键作为输入。我激活了它的上拉电阻。按钮一端连接stm32 Port-A引脚10,另一端接地。上拉电阻被激活,使输入正常高。当用户按下按钮时输入状态从5伏变成0伏,微控制器会接受它作为电压过渡,当过渡被识别时,我们可以做我们的事情。我不想输入引脚是浮动的,所以我激活了拉上电阻。在代码中,你可以很容易地理解它。我还将在代码中解释它。我们的输入引脚现在的行为就像下面的系统。
带有stm32微控制器的蜂鸣器-项目代码
如果(HAL_GPIO_ReadPin (Push_button_GPIO_Port Push_button_Pin) = = GPIO_PIN_RESET)
如果按下按钮,则使端口c引脚#13高。通常情况下,由于下拉电阻激活,端口c引脚13低。当stm32引脚是高它源3伏特输出。这最终使晶体管的基座高和晶体管通道激活使蜂鸣器产生声音。
HAL_GPIO_WritePin (Buzzer_GPIO_Port Buzzer_Pin GPIO_PIN_SET);
如果没有压力,保持低位。
HAL_GPIO_WritePin (Buzzer_GPIO_Port Buzzer_Pin GPIO_PIN_RESET);
未来工作:
利用stm32单片机,利用蜂鸣器和时钟设计一个闹钟。一个涉及蜂鸣器和其他执行器的安全系统将是一个很好的项目,从这个蜂鸣器与stm32入门教程中迈出一步。
了下:单片机项目,188appcob