历史上的今天
今天是:2024年09月17日(星期二)
2021年09月17日 | KST-STM32学习之USART
2021-09-17 来源:eefocus
1、STM32F103ZE 单片机内部集成有 3(USART)+2(UART)个串行通信接口。
2、相应的串行通信接口对应的管脚。

3、注意了,USART和UART是不一样的!
USART - 既能实现同步通信,又可以异步通信。
UART - 只能实现异步通信。
4、几个标志位的认识
发送数据寄存器的数据传送到移位寄存器后,发送数据寄存器(TDR)就空了,这个时候硬件会将TXE置位。向TDR中写数据会自动清除TXE
当TXE置位,并且没有数据再写入TDR,这个时候硬件会将发送完成标志位(TC)置位。我们实际中发送完成与否用TXE。
同时还可通过TXEIE或者TCIE设置相应的中断使能,从而进入相应的中断服务函数!
注:USART发送功能(TE)置位后,将发送一个空闲帧(0xFF),如果此时没有数据发送,TXE标志位和TC标志位会一直处于置位状态,且如果此时是能了TXEIE或者TCIE,将不断的重复执行串口中断服务函数。
由于 TDR 寄存器一旦为空,TXE 标志位会硬件置位,进而触发中断,所以当不发送数据时要及时关闭发送中断。
5、关于接受数据
相比于发送数据,接受数据似乎更简单了点。
接受完毕后,硬件设置接收数据寄存器非空标志位(RXNE),当去读数据,这个标志位会自动清除,当然也可以手动清除。
6、关于引脚配置
TXD 引脚配置为复用推挽输出模式
RXD 引脚配置为浮空输入模式
7、配置流程总结
使能 USART 时钟及配置相关引脚
注意看对应USART在那个总线上,并且相应引脚应该是什么模式
USART 外设初始化参数设置
波特率,数据位等,使能发送和接收功能,××_Init进行初始化。一旦使能发送功能,便会开始发送空闲帧。
串口中断优先级
使能 USART 中断
注意在此只使能串口接收中断,发送中断必须在发送前使能,发送完毕后关闭,否则程序会重复执行中断服务函数。
使能 USART 外设
编写 USART 中断服务函数
下一篇:原子的串口ISP一键下载研究
史海拾趣
|
小弟最近刚开始学F2812,电气特性好像是写I/O输入不得超过Vddio 自己做了一块练习板,做好后发现LCM1602的RS脚上有5V的电压(还未和DSP连接),其它像RW、E、DB*上都有一些电压,怕会把DSP烧坏 请问F2812可以直接和LCM连接吗?还是要经过一些 ...… 查看全部问答> |
|
数字视频监控系统主要包括DVR、DVS、IP-Camera等,涉及到嵌入式系统技术、视频编解码技术、音频编解码技术、联网及域名处理技术等。硬件对于系统而言,相当于建筑的地基,地基牢,建筑才可靠,才能够经历风风雨雨的考验。 概述 & ...… 查看全部问答> |
|
转载:硬件工程师面试试题及答案 [ 2010-7-13 6:19:00 | By: master0722 ] 模拟电路 1、基尔霍夫定理的内容是什么? 基尔霍夫定律包括电流定律和电压定律 电流定律:在集总电路中,任何时刻,对任一节点, ...… 查看全部问答> |
|
我是新手最近在学习基于c51的RTL8019AS ,我想问问它是否能直接和互联网络连接来实现一种远程的控制呢?还是只能实现和pc机的通信啊?谢谢啦!!!!… 查看全部问答> |




