打印
[STM32G0]

STM32G070RB探测-串口点灯

[复制链接]
364|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
日常继续点灯,这次我们用串口点灯,自己制定一个简单的协议,固定接收两个字符,收到"ON"开,收到"OF"关灯继续点

生成

撸程序关闭之前的定时器,因为定时器中断有开关灯程序使能串口中断接收HAL_UART_Receive_IT(&huart2, (uint8_t*)recv_buf, 2);

打开接收中断,接收两个字节产生中断,将字节放进recv_buf数组里

编写接收中断回调函数void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart){        if(huart ->Instance == USART2){                if(recv_buf[0]=='O'){                        if(recv_buf[1]=='F'){                                HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_RESET);                                printf("LED_OFF\r\n");                        }                        else if(recv_buf[1]=='N'){                                HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_SET);                                printf("LED_ON\r\n");                        }                        else {                                printf("ERROR\r\n");                        }                }                else {                        printf("ERROR\r\n");                }                //重新使能串口接收中断                HAL_UART_Receive_IT(&huart2, (uint8_t*)recv_buf, 2);        }}

然后编译烧录

看现象


使用特权

评论回复
沙发
Pretext| | 2022-12-12 14:24 | 只看该作者
串口点灯和按键点灯一样常见。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2003

主题

7060

帖子

10

粉丝