文章代码使用
HAL
库。
一、HW-493激光模块
- HW-493激光模块 是一种小型化的激光发射模块,其主要特点是体积小、功耗低、精度高、可靠性强。它采用了半导体激光器作为光源,搭配高精度光学透镜,可以发射出稳定、准确、高亮度的激光光束。
- VCC :
+5 V
电压。(电源电压范围为 3.5V-5.5V,过高或过低都会影响模块的正常工作 ) - -负极 :接
GND
。 - S :连接到单片机的 io 口。(这里我接在 STM32 的 PA7 处)
- 工作原理:
HW-493激光发射器 的控制电路需要接收一个数字信号电平为高电平时,激光器开始工作并发射激光。当数字信号的电平为低电平时,停止激光的发射。
二、创建工程:
这里可以使用 CubeMX 设置引脚,也可以自己写引脚控制代码。
- 配置引脚
①创建一个结构体变量:
GPIO_InitTypeDef GPIO_InitStruct = {0};
②使能 GPIOA 引脚
__HAL_RCC_GPIOA_CLK_ENABLE();
③初始化引脚为 低电平
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_RESET);
④设置引脚的 模式,输出,速度
GPIO_InitStruct.Pin = GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
⑤完成初始化
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
- CubeMX 设置引脚:
使用 CubeMX 生成工程的步骤可以参考我之前的文章,这里我只把需要改变的列出来了。STM32f103 CubeMX封装 led程序
①设置引脚为 Ouput 输出引脚
②设置初始引脚电平
文章来源:https://www.toymoban.com/news/detail-660491.html
三、代码详解:
- 发射激光:
void HW_493_ON(void)
{
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_SET); //高电平发射激光
}
- 关闭激光
void HW_493_OFF(void)
{
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_RESET); //低电平关闭激光
}
- 配置引脚
void GPIO_Reinit(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
__HAL_RCC_GPIOA_CLK_ENABLE();
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_7, GPIO_PIN_RESET);
GPIO_InitStruct.Pin = GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}
int main()
{
GPIO_Reinit();
HW_493_ON();
HAL_Delay(5000); //延时5 秒
HW_493_OFF();
HAL_Delay(2000); //延时 2 秒
}
实验现象:
激光发射实验现象文章来源地址https://www.toymoban.com/news/detail-660491.html
总结
到了这里,关于STM32Cube HW-493激光发射的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!