【STM32学习】(23)STM32实现TELESKY 2262/2272四路无线遥控
程序员文章站
2024-02-22 22:57:28
...
实物图如下:
此编程很简答。
编码已经都配置好了,单片机只需要读取模块的引脚是否为高电平就可以了。
简单验证代码如下:串口1查看效果,这里只给出while(1)里面的代码
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
if(HAL_GPIO_ReadPin(D0_GPIO_Port,D0_Pin) == 1)
{
HAL_Delay(20);
if(HAL_GPIO_ReadPin(D0_GPIO_Port,D0_Pin) == 1)
{
printf("\n\r**按键安了B键**\n\r");
}
while(HAL_GPIO_ReadPin(D0_GPIO_Port,D0_Pin) == 1);
}
if(HAL_GPIO_ReadPin(D1_GPIO_Port,D1_Pin) == 1)
{
HAL_Delay(20);
if(HAL_GPIO_ReadPin(D1_GPIO_Port,D1_Pin) == 1)
{
printf("\n\r**按键安了D键**\n\r");
}
while(HAL_GPIO_ReadPin(D1_GPIO_Port,D1_Pin) == 1);
}
if(HAL_GPIO_ReadPin(D2_GPIO_Port,D2_Pin) == 1)
{
HAL_Delay(20);
if(HAL_GPIO_ReadPin(D2_GPIO_Port,D2_Pin) == 1)
{
printf("\n\r**按键安了A键**\n\r");
}
while(HAL_GPIO_ReadPin(D2_GPIO_Port,D2_Pin) == 1);
}
if(HAL_GPIO_ReadPin(D3_GPIO_Port,D3_Pin) == 1)
{
HAL_Delay(20);
if(HAL_GPIO_ReadPin(D3_GPIO_Port,D3_Pin) == 1)
{
printf("\n\r**按键安了C键**\n\r");
}
while(HAL_GPIO_ReadPin(D3_GPIO_Port,D3_Pin) == 1);
}
if(HAL_GPIO_ReadPin(VT_GPIO_Port,VT_Pin) == 1)
{
HAL_Delay(20);
if(HAL_GPIO_ReadPin(VT_GPIO_Port,VT_Pin) == 1)
{
printf("\n\r**按键安了ABCD键**\n\r");
}
while(HAL_GPIO_ReadPin(VT_GPIO_Port,VT_Pin) == 1);
}
}
效果:
上一篇: js中格式化日期
下一篇: 异步简单双口RAM的实现