STM32学习笔记2
- 格式:doc
- 大小:1.08 MB
- 文档页数:5
1. 通信:设备间信息的交互
有线:以太网,USART,USB,CAN,485等
无线:wifi,蓝牙,zigbee,射频,红外,2.4G,2G、3G、4G、5G,NB_IOT,广播等
2. 通信方式划分
并行通信:一次传输多位数据,传输速度快,MCU与内存间
串行通信:一次传输一位数据
串行通信按照数据传输是否同步分为:
同步通信:数据传送是以数据块(一组字符)为单位,字符与字符之间、字符内部的位与位之间都同步,需要有同步时钟。
异步通信:字符与字符间的传送是完全异步的,位与位之间的传送基本上是同步的。
串行通信按照数据传输方向划分:
单工:数据单向传输 -- 广播,收音机等
半双工:数据可以双向传输,同一时刻,只能发送或者接收 -- 对讲机,485等
全双工:数据双向传输 -- 手机,SPI等
3. 串行通信
1. 物理层
1.引脚
TXD 数据发送管脚 RXD 数据接收管脚 GND 信号地
2.连接方式
a.直接相连 -- 模块与模块间,设备与模块间
b.RS232 负逻辑电平 1 -- -3~-15V 0 -- +3~+15V
-- 设备与设备间,设备与模块间
B转串口 -- 设备与设备间
2. 数据链路层(协议) -- 位协议
RS232协议:
起始位 数据位 奇偶检验位 停止位
位数: 1 8/9 1 1~2
电平: 0 1/0 1/0 1
奇偶检验:数据位1的个数+校验位中1的个数
奇校验:数据位1的个数+校验位中1的个数为奇数个。
发送的数据: 0110 1001
发送数据: 0110 1001 1
接收数据: 0110 0001 1 -- 错误
0111 0001 1 -- 正确(错误)
位:clk周期
常用的格式:1+8+0+1
3. 波特率
数据传输的速率,每秒传输多少位数据。
常用的波特率:9600,115200,38400等
4. STM32中串口的介绍
1. 数量 -- 3个
2. 特性
全双工异步通信
小数波特率发生器系统
数据字长度可编程(8 位或 9 位)
停止位可配置 - 支持 1 或 2 个停止位
发送器和接收器具有单独使能位
传输检测标志:
— 接收缓冲区已满
— 发送缓冲区为空
— 传输结束标志
3. 结构框图
1. 数据发送和接收
数据接收:data = USARTx->DR;
数据发送:USARTx->DR = data;
2. 发送接收控制 -- CR1,CR2,CR3
3. 发送和接收什么时候完成 -- SR
TXE:数据发送完成,TDR无数据,移位寄存器有数据
TC: 数据发送完成,TDR无数据,移位寄存器无数据
RXNE:0 – 未接收数据 1 - 接收到数据
4. 波特率
5. 软件编程
1. 查看原理图
PA9、 PA10 复用功能
6. 蓝牙 CC2541
工作模式:1.命令响应模式 -- 使用AT指令集
2.透传模式 (透明传输) -- 使用串口发送消息
PA6 – 通用推挽输出
中断配置:
优先级 4位 :占先优先级 + 次级优先级 (数字越小,优先级越高)
占先优先级:中断发生时能否被打断,谁先执行
次级优先级:占先优先级相同时,中断同时到来,优先级高的先执行
作业:
APP 发送数据 *12# ,电机转动
发送数据 *34# ,电机停止转动