stm32cubemx 串口配置篇

stm32cubemx经过新建工程,芯片选型后进入到芯片功能配置环节,本篇注重讲解cube的串口配置环节:如下图所示,在Pinout&Configuration栏下方的options窗口中的connentivity栏中选中USART1。

       (1)双击,出现USART1 Mode and Configuration栏,首先是Mode栏。

Mode中选项有以下选项:

Asynchronous (异步的),

Synchronous(同步的),

Single Wire (Half-Duplex)(单线(半双工)),

Multiprocessor Communication(多处理器通信),这里为我们配置的模式。

IrDA(红外通讯),介绍链接http://www.stmcu.org.cn/module/forum/thread-610633-1-1.html

LIN(LIN总线协议),介绍链接https://www.cnblogs.com/yangjiguang/p/6093240.html

SmartCard(智能卡),介绍链接https://baike.baidu.com/item/smart%20card

                                       学习链接https://blog.csdn.net/xqhrs232/article/details/80904616

SmartCard with Card Clock (带卡时钟的智能卡) 。

Hardware Flow Control (RS232) 选项中选择 Disable 或者 Enable (在这种模式中只有在Mode中选择Asynchronous方可选择)。

注意:当你将Mode选择好之后,在软件右图中的Pinout view 中相应的端口就会显示出配置信息。

例如当你选择Asynchronous选项时,图中会显示当你选择Synchronous选项时,图中会显示

 

      (2) 然后是Configuration栏。

Reset Configuration 选项,可将初始化配置全部复位。

Parameter Settings具体配置信息如下所示:

User Constants 一般都无需对此进行配置。

NVIC Settings 具体配置信息如下:

 

DMA Settings 具体配置信息如下:

 

GPIO Settings具体配置信息如下:

      (3)然后就是配置系统时钟部分

如下图所示,USART1属于APB2部分。

在 STM32 中,一共有 5 个时钟源,分别是 HSI 、 HSE 、 LSI 、 LSE 、 PLL 。

 ①HSI 是高速内部时钟, RC 振荡器,频率为 8MHz ;

 ②HSE 是高速外部时钟,可接石英 / 陶瓷谐振器,或者接外部时钟源,频率范围是 4MHz – 16MHz ;

 ③LSI 是低速内部时钟, RC 振荡器,频率为 40KHz ;

 ④LSE 是低速外部时钟,接频率为 32.768KHz 的石英晶体;

 ⑤PLL 为锁相环倍频输出,严格的来说并不算一个独立的时钟源, PLL 的输入可以接 HSI/2 、 HSE 或者 HSE/2 。PLL倍频可选择为 2 – 16 倍,但是其输出频率最大不得超过 72MHz 。

关于时钟系统RCC详细请参考:https://blog.csdn.net/csshuke/article/details/78899911

RCC Mode and Configuration中的配置信息如下图所示:

Clock Configuration时钟图如下:

自此输出自己想要的工程文件即可。

 

 

### STM32CubeMX UART 配置教程 #### 1. 打开并启动STM32CubeMX 安装好软件后,打开STM32CubeMX应用程序。点击“New Project”,选择目标MCU型号,对于本例来说假设选择了支持UART功能的通用型号[^2]。 #### 2. 配置时钟树与时钟源 进入项目配置页面,在“Clock Configuration”选项卡下调整系统时钟频率至所需值,这一步骤对确保UART通信速率准确性至关重要。 #### 3. 设置UART参数 转到“Pinout & Configuration”标签页找到USART外设模块,双击它来开启其属性编辑窗口;在此处可以指定波特率、数据位长度、停止位数目以及校验方式等基本通讯参数[^4]。 ```c // 示例代码片段展示如何初始化串口结构体成员变量 huart2.Instance = USART2; huart2.Init.BaudRate = 9600; huart2.Init.WordLength = UART_WORDLENGTH_8B; huart2.Init.StopBits = UART_STOPBITS_1; huart2.Init.Parity = UART_PARITY_NONE ; ``` #### 4. 启用中断或DMA传输模式 为了提高效率减少CPU占用时间,建议采用中断驱动或者直接存储器访问(DMA)方式进行数据收发操作。通过勾选对应框可轻松启用这些特性,并可在后续编程阶段进一步定制回调函数逻辑处理收到的数据流。 #### 5. 生成初始化代码框架 完成上述所有硬件层面设定之后,切换回主界面按下“Project->Generate Code”按钮让工具自动生成必要的C/C++文件作为开发起点。此时会弹出对话框让用户挑选IDE/编译器环境以便于后期调试工作更加便捷高效[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值