|
中断回来继续测试,晚上测试了一下串口通信。本以为按照常规的配置应该没什么问题,还是在软件修改上出了点问题,导致多花了一些时间。. K& y2 X2 t2 x6 U0 [ 开始还是使用CubeMx配置基本环境,如图1所示:
图1+ j+ l% D2 `3 C/ E' a- f9 R7 `4 U f 首先需要测试一下发送,隔1S发送一次,代码如下所示:# W s% q. w! F9 f2 z
通过串口助手是正常的,如图2所示:2 R0 ~4 s6 C* h: C+ j- a2 k3 [* }
图28 p9 C8 Q- n$ v8 S K6 Z# V1 s& B " c4 A: e; d) {# }# E' a& e 增加接收数据callback函数,检查一下中断,debug。发现无法进入中断。设置断点检查,发现能进入Handler函数,却无法调用callback函数。Debug时弹出一些莫名其妙的错误,如图3所示:
图31 J N6 \' l' k 7 s1 I0 |# C2 _ 找到Handler函数的定义,发现接收完中断函数使用的是huart->RxISR(huart);其中并未调用callback函数,故将这个函数修改为UART_RxISR_8BIT(huart);,重新debug。通过串口助手发送数据,查看watch窗口,可以看到接收到的数据,如图4所示。% X, z) w& \. [6 P. N. e9 J- F
; ~) L8 z$ z( a
图4' P3 q/ I: \2 @9 C4 E0 y$ [ 中断接收正常。所以由Cubemx生成程序的时候,还需要再检查一下。( y. w) p+ h2 V+ x6 A+ d |
【STM32C0评测】C071:USB的使用
【STM32C0评测】4、驱动Lorasx126x,实现透传
STM32C0 × HDSMART弘大智控解锁旋钮式智能控制器,开启人机交互新体验
基于编码器信号的PWM输出示例
【新品发布】STM32C0 三大子产品线齐发,精准适配价格敏感应用(文末有奖)
有奖直播 | 超性价比入门级MCU:STM32C0全新子产品线深度解读
【STM32C0测评】Nucleo-C092开发板驱动DS1302实验
【STM32峰会观看直播获奖】晒奖品
STM32C071RB外部中断控制小灯点亮熄灭
STM32C071RB实现串口收发功能
微信公众号
手机版