继前天完成了STM32C542RC开发板串口通讯的printf()发送实验后,昨天接着继续进行串口DMA收发的测试。首先进行的是DMA发送的实验,照旧是抄教程的代码,核对无误后编译却出错:7 z; l; [, G" l, l$ Y: c2 S, B 3 w0 ]4 p* j9 l, N: J9 f& [. h* I, w5 r) r% O 反复检查出错行的代码,都找不到出错的原因,只好边发帖求助,边继续尝试找原因。最后我尝试将输入的函数参数的类型删除,直接输入参数,输完之后系统竟自动显示出参数的类型,这才知道在VS Code中函数参数的类型是不能手动输入的。找到原因之后,再编译下载就很顺利了,串口调试助手正常接收到了信息:! a& A: ?0 q$ s$ K2 V. ~ : a% ^) Q& d, y) @6 G1 C( o/ p/ M; K7 M3 E5 G 今天则进行DMA接收的测试,代码的输入和编译倒是顺利,只是因为我的电脑放在书房的角落,两侧都是窗子,背景很亮。而VS Code的背景是黑色的,很难辨认界面上的菜单及信息提示。加上界面操作不熟悉,进入了调试后竟然找不到退出的按钮了,之前在工具栏上的图标不知为何也没有了。后来只好将屏幕后面的窗子加上遮光,这才从菜单上找到相应的选项:& e+ o2 `. x: g0 R: x4 \
) F1 R3 l) g. Z$ } 最后我略微修改了代码,在上主循环里加上了LED闪烁的代码,还加在按键中断处理函数中加上了发送RX_Buffer信息的代码,当按下按键时就会发送串口接收到的信息。3 u/ V( g4 G. Z1 u, H u/ Q" {' _ 这是照抄教程中的定义RX_Buffer的代码:# {" E0 ~" Q( ?0 w. Z
下面是照抄教程中的接收中断回调函数:" T" q/ z, B9 E" L( ^1 S: ~
7 v( G4 \+ h s 这是串口收发的截图:/ \0 ]& t6 m: S* i1 f
这是我添加的代码:
至此,串口通讯的测试算是基本完成了。 V# \' n/ I# v" o/ ` b3 d$ ^- @ 9 D/ R7 p, b. K& P7 N |
STM32C542RC开发板PWM呼吸灯及多功能按键实验
NUCLEO-H5E5ZJ 移植 LVGL
NUCLEO-H5E5ZJ 移植 ST7735 SPI LCD 驱动
NUCLEO-H5E5ZJ 以太网(Ethernet)移植记录
【STM32H5 评测】1、移植记录(LED / Shell)
【STM32C5开发板评测】- 简易低功耗实验:芯片休眠、唤醒功能简单测试演示
【STM32C5教程】2. STM32CubeMX2 安装与使用
【STM32C5教程】1. STM32C5 系列介绍
STM32C542RC开发板实现长短按键识别功能
STM32CubeMX2 无法正常添加 CMSIS-DSP?基于 CMake 的手动集成与工程结构优化
微信公众号
手机版
vscode可以调窗口颜色的
我想也是应该可以调整背景色的,还没有时间去琢磨。