
通过串口实现串口发送数据,接收区接收数据 1、配置STM32时钟(不细说了) 2、配置USART3出口信息 配置里面DMA如下图,勾选FIFO 中断NVIC勾选如下图 查看中断 然后可以生成代码。 在USART.c文件里面添加 重定向c库函数printf ifdef GNUCdefine PUTCHAR_PROTOTYPE int __io_putchar(int ch)elsedefine PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)endifPUTCHAR_PROTOTYPE { HAL_UART_Transmit(&huart3,(uint8_t *)&ch,1,0xFFFF);//阻塞方式打印 return ch; } 在main.c函数里面添加代码 define RXBUFFERSIZE 256 //最大接收字节数char RxBuffer[RXBUFFERSIZE]; //接收数据 uint8_t aRxBuffer; //接收中断缓冲 uint8_t Uart8_Rx_Cnt = 0; //接收缓冲计数 在主函数里面添加 HAL_UART_Receive_IT(&huart3, (uint8_t *)&aRxBuffer, 1); //启动串口中断 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { / 防止未使用的参数编译警告 / UNUSED(huart); /* 注意: 需要回调时,不应修改该函数、
if(Uart8_Rx_Cnt >= 255) //溢出判断 {
} else {
} HAL_UART_Receive_IT(&huart3, (uint8_t *)&aRxBuffer, 1); //再开启接收中断 } 效果如下图 |
【Wio Lite AI视觉开发套件】+移植TensorFlow Lite
STM32H745I-DISCO脉冲宽度调制(PWM)
拷打cubemx【002】——自定义还需基于芯片的工程
STM32硬件结构学习
STM32中BOOT的作用
STM32H7的TCM,SRAM等五块内存基础知识
STM32H7的TCM,SRAM等五块内存基础知识
简单了解一下STM32H7的BDMA
有奖预约 | STM32H7R7基于RT-Thread RTOS的智能终端GUI解决方案
【STM32H745I-DISCO】基于TouchGFX的工业控制器界面设计