STMCU小助手
发布时间:2022-12-16 13:00
2.cubumx配置串口,如下图
3.配置DMA
4.配置中断
5.生成代码后,添加空闲中断使能代码 __HAL_UART_ENABLE_IT(&huart1, UART_IT_IDLE);//使能idle中断 6.h743的DMA比较特别,他有几个内存区,默认的内存区与DMA不相连,所以定义buf的时候要定义到与DMA相连的地址上
7.所以修改工程下的stm32h743xx_flash.icf文件,添加如何下画圈部分
8.定义buf时这样定义:
9.串口DMA发送代码: if(HAL_UART_Transmit_DMA(&huart1,cbuffer,csize) != HAL_BUSY) 10.串口中断接收代码 HAL_UART_Receive_IT(&huart1, cbuffer, RX_BUF_SIZE); 11.中断处理
12. usart1_Rx() ,usart1_Tx() 为加入了环形队列的发送接收接口函数 13.中断中不能调用ucosii先关的函数,例如信号量的处理等,加了暴力测试串口时会出错,查了下貌似和内核管理中断有关,这个玩意CPU_CFG_KA_IPL_BOUNDARY。但也尝试了中断加OSIntEnter() 和OSIntExit(),修改中断号范围>CPU_CFG_KA_IPL_BOUNDARY, 也不行。 ———————————————— 版权声明:鱼入大海_ |
【福利三:逢7发帖赢大礼】使用MPU6050模块、img_dsc、img_btn机制实现一些简单有趣的动画效果
【福利三:逢7发帖赢大礼】使用arc弧形拉条控件控制PWM舵机及使用SPI3接口操作NRF24L01模块进行无线通信
经验分享 | STM32 IAP应用时的跳转注意事项
经验分享 | 通过STM32 TIMER的PWM功能模拟输出正弦波
实战经验 | 碰到hardfault问题你还在死磕代码吗?
【福利三:逢7发帖赢大礼】调试nucleo-WBA65RI工程测试样板的一些心得
【福利三:逢7发帖赢大礼】lv_timer和BME680实现温度、湿度、气压数据读取
【福利三:逢7发帖赢大礼】成功利用STM32H743VI片内SRAM12和DTCM空间(完全胜利)
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
【福利三:逢7发帖赢大礼】使用惠勤致远STM32H743VI开发板+ST7796并口彩屏移植LVGL9.5并分享一些额外内容
微信公众号
手机版