假期备战蓝桥杯stm32学习笔记(二)
2016-01-15 21:41
381 查看
串口通信(USART)
利用串口可以帮我们调试程序、、
串口的通信协议: 要配置串口通信, 至少要设置“字长”(一次传送的数据长度)、“波特率”(每秒钟传送二进制数据的位数)、“校验位”、
串口的时钟源经过USARTDIV分频后作为发送器时钟及接收器时钟,控制发送和接收的时序。
基本上所有外设都有以下几类寄存器:
1.控制寄存器xxx_CR(Control/Configuration Register): 这类寄存器是用来配置、控制相应外设的工作方式的。如GPIOx_CLR、GPIOx_CHR、APIO_EXTICR1~APIOEXTICR4,串口的USART_CR1~USART_CR3等。
2.数据寄存器xxx_DR (Data Register) : 这类寄存器主要是存储了外设进行输出输入的数据。如GPIOx_IDR、GPIOx_ODR、USART_DR等。
3.状态寄存器xxx_SR(Status Register): 这类寄存器主要存储了当前外设的运行状态,主要为一些标志位。如USART_SR、ADC_SR等。
初始化时候用的各类xxx_InitTypeDef.这里面的控制参数就是与相应外设的控制寄存器xxx_CR相对应。
对外设的应用,一般涉及其输入和输出数据,如GPIO的输入输出函数:GPIO_ReadOutputDataBit()、GPIO_ReadInputData()、GPIO_SetBits();
还有USART的收发数据函数:USART_ReceiveData()、USART_SendData(),
这些函数控制相应外设数据寄存器xxx_DR.
当外设完成了某些工作或出现某些状态的时候, 汇出发一些事件,这些时间会在状态寄存器SR中, 以不同的寄存器未来记录。这些寄存器为成为相应的事件标志位。
外设都有xxx_Cmd()函数,用来使能外设。
利用串口可以帮我们调试程序、、
串口的通信协议: 要配置串口通信, 至少要设置“字长”(一次传送的数据长度)、“波特率”(每秒钟传送二进制数据的位数)、“校验位”、
串口的时钟源经过USARTDIV分频后作为发送器时钟及接收器时钟,控制发送和接收的时序。
基本上所有外设都有以下几类寄存器:
1.控制寄存器xxx_CR(Control/Configuration Register): 这类寄存器是用来配置、控制相应外设的工作方式的。如GPIOx_CLR、GPIOx_CHR、APIO_EXTICR1~APIOEXTICR4,串口的USART_CR1~USART_CR3等。
2.数据寄存器xxx_DR (Data Register) : 这类寄存器主要是存储了外设进行输出输入的数据。如GPIOx_IDR、GPIOx_ODR、USART_DR等。
3.状态寄存器xxx_SR(Status Register): 这类寄存器主要存储了当前外设的运行状态,主要为一些标志位。如USART_SR、ADC_SR等。
初始化时候用的各类xxx_InitTypeDef.这里面的控制参数就是与相应外设的控制寄存器xxx_CR相对应。
对外设的应用,一般涉及其输入和输出数据,如GPIO的输入输出函数:GPIO_ReadOutputDataBit()、GPIO_ReadInputData()、GPIO_SetBits();
还有USART的收发数据函数:USART_ReceiveData()、USART_SendData(),
这些函数控制相应外设数据寄存器xxx_DR.
当外设完成了某些工作或出现某些状态的时候, 汇出发一些事件,这些时间会在状态寄存器SR中, 以不同的寄存器未来记录。这些寄存器为成为相应的事件标志位。
外设都有xxx_Cmd()函数,用来使能外设。
相关文章推荐
- 深入分析Visual C++进行串口通信编程的详解
- C#串口通信程序实例详解
- vspd
- STM32 UART DMA实现未知数据长度接收(转自amoBBs)
- VC++串口通信小小测试(使用VPSM)
- C#串口控件关闭时死机卡住
- C#串口通信 实现打印功能
- PHP操作串口 --- 操作发送短信mod应用(真实项目)
- ti blueteeth stack 1.3.2 part1
- SafeArray、COleSafeArray、VarType
- WiFi小车记录一:基本构思
- WIFI小车记录五:单片机串口通信
- MFC下32位WINAPI串口编程
- atmel studio遇到的USART问题,解决了,但是不知道问题所在
- java读取串口设备信息
- labview做上位机+3D显示+MPU6050
- STM32F429 Discovery 开发板USART乱码问题,解决过程
- arduino uno 多机串口通信
- pytho串口通信模块使用
- TinyOS无线传感器网络串口通信和无线通信