
前面几篇把灯学习了一番,今天来学点其它的外设-USART串口;此篇应用板载的ST-LINK V3的MCO引脚提供给主控MCU的旁路时钟源及USART3来进行串口数据的收发学习; 从原理图上可以看出USART3的RX和TX默认在引脚PD8/PD9上面;旁路时钟源为ST-Link的MCO提供的8M时钟源. ![]() ![]() ![]() 打开cubeMX软件,进行时钟源和外设USART的设置,具体见下图: ![]() 1、先设置引脚PD9和PD8为USART3_RX和USART3_TX 2、点击左侧的“System Core”,再点击左侧“RCC” 3、设置“High Speed Clock (HSE)”为“BYPASS Clock Source" ![]() 点击”Clock Configuration“,照上图设置时钟源; 接下来设置USART3,激活PD8\PD9的串口功能; ![]() 1、点击”Pinout & Configuration“,再点击”Connectivity“ 2、再选中“USART3" 3、设置”Mode“为”Asynchronous“使能USART3为异步通信 4、串口的收发波特率之类的参数保持默认即可 以上设置完成后,点击”Project Manager“设置工程代码生成的相关参数并保存工程为”USRAT3": ![]() ![]() ![]() 上面的保作完成后,即可点击“GENERATE CODE"生成工程代码,并选择打开工程; ![]() 在MDK中打开工程后,双击打开”main.c"文件,添加自动发送16进制数据的代码; 再设置板载ST-Link的下载参数如下: ![]() ![]() 编译成功并下载到板卡,打开串口调试助手,选择COM串口为ST-LINK的虚拟串口号,并打开串口,即可看到运行的效果: ![]() 串口自动发送从00-2E的16进制数据并循环,说明USART3设置成功; 接下来在上面的基础上修改代码为手工发送字符的代码并运行; ![]() 编译下载,打开串口调试助手,并打开ST-Link的虚拟串口,并在发送窗口输入"test",并发送,运行效果如下: ![]() 代码附件: ![]() |
拷打cubemx【003】——找不到的芯片包
【2025·STM32峰会】GUI解决方案实训分享5-调通板载的NRF24L01 SPI接口并使用模块进行无线通信(发送和接收)
【2025·STM32峰会】GUI解决方案实训分享4-使用MVP架构从硬件外设读取数据并显示到图形界面、从图形界面发送指令控制硬件外设
【2025·STM32峰会】GUI解决方案实训分享3-搭建空白TouchGFX例程并实现简单的功能(含硬件部分的串口打印)
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
【2025·STM32峰会】+TouchGFX实现动态进度显示以及界面切换
【2025·STM32峰会】+使用TouchGFX快速创建GUI
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
实战经验 | 关于STM32H7使用LL库生成ADC代码工作异常问题说明
实战经验 | 关于STM32H745的MC SDK电机控制工程问题的解决办法