完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
STM32串口的相关操作
2.串口的复位 在相应的寄存器的找到该串口的复位设置位,通过向该位写1来复位串口,写0结束复位。 3.串口的波特率设置 每一个串口都有自己的一个波特率寄存器,通过配置该寄存器可以完成配置不同的波特率。 4.串口的控制 STM32每一个串口都有3个控制寄存器,USART_CR1~3,下图为USART_CR各位描述 TXIE 为发送缓冲区空中断使能位,设置该位为 1,当 USART_SR 中的 TXE 位为 1 时,将产生串口中断。TCIE 为发送完成中断使能位,设置该位为 1,当 USART_SR 中的 TC 位为 1 时,将产生串口中断。RXNEIE 为接收缓冲区非空中断使能,设置该位为 1,当 USART_SR 中的 ORE 或者 RXNE 位为 1 时,将产生串口中断。TE 为发送使能位,设置为 1,将开启串口 的发送功能。RE 为接收使能位,用法同 TE。 5.数据发送与接收。 STM32 的发送与接收是通过数据寄存器 USART_DR 来实现的,USART_DR是双寄存器,包含了TDR 和 RDR,下图为USART_DR寄存器。 6.串口状态 串口状态可以用寄存器USART_SR读取,该寄存器的各位描述如下图所示 同样的, 用FlyMcu进行串口调试时必须配置好相应的数据,如相应的程序文件、串口及波特率等 同样的,在运行串口调试助手的时候,也应配置好相应的选项。 备注:u8 是 unsigned char u16 是 unsigned short u32 是 unsigned int 系统时针设计 Stm32_Clock_Init(9); 串口初始化(72M晶振,波特率为115200) uart_init(72,115200); 延时初始化 delay_init(); 与LED相连接的硬件接口初始化 LED_Init(); 以下为个人体会: 在编写串口程序的时候,一定要严格按照板子的原理图来操作,下载调试的时候也要注意自己所要操作板子的芯片,选择所适合的下载方式,一步一步来,才能把所写好的程序下载到板子里。 关于串口的操作部分的描述,参考STM32F1开发指南寄存器版本。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1752 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1611 浏览 1 评论
1052 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1666 浏览 2 评论
1926浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
711浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
560浏览 3评论
583浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
544浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 17:42 , Processed in 0.914430 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号