N32G003学习——第九章 第一节 USART串口协议

通讯目的:

将一个设备的数据,传到另外一个设备上,拓展硬件系统

通讯协议:

 指定通讯的规则,通过协议规则,进行数据收发

1。通讯协议分类

(1) USART(2)I2C(3)SPI(4)CAN(5)USB

TX:发送

RX:接收

全双工:通讯双方,同时进行双向通信(一般有两个通讯线,比如串口TX.RX)

半双工:不同时通信,(一般只有一根数据线)

单工:只能一个方向传数据(很少)

时钟信号:告诉接受方,什么时候采集数据,譬如一个高电平之后一个低电平,是10还是1100

时钟特性:

(1)同步:有时钟线,在时钟信号下采集(譬如SPI)

(2)异步:没时钟线,双方约定一个采样频率,如波特率2400,且需要加针头针尾,进行采样位置的对齐(串口,CAN,USB)

电平:

(1)单端 :双方共地

(2)差分:靠差分引脚的电压差,传输信号,简称差分信号,可能不需要GND

差分信号,抗干扰能力好,传输速度快,传输距离远

设备:

(1)点对点:如老师找一个人谈话

(2)多设备:如老师找全班这么多人谈话,挂在总线上,需要寻址,确定找哪一个谈话

电平标准:

数据0和数据1的表达方式

串口常用电平标准 :

(1)TTL电平:+3.3V或+5V表示1,0V表示0

(2)RS232电平:-3~-15V表示1,+3~+15V表示0(RS232电平信号/同分信号)

(3)RS485电平:两线压差+2~+6V表示1,-2~-6表示0(差分信号)       

2。USART协议(串口)

串口是最简单的通讯接口,点对点通讯

常用到如下设备:1·串口转USB,2·陀螺仪传感器,3·蓝牙

(1)接线图

通过左上方的串口转USB,把单片机的串口引脚,接到电脑上来

RX接另一设备的TX

TX接另一设备的RX

当电平标准不一样,要 加电平转换芯片,如串口转USB,电脑的USB才能接收

TX.RX一定接,GND一定要共地

串口发送字节的数据帧格式

(1)起始位+数据位8位+停止位
(2)起始位+数据位8位+奇偶校验位+停止位

波特率:串口通信的速率(马原每秒,或者 比特数bit/s相同,多进制调制就不同,了解即可)

起始位:标志一个数据帧的开始,固定为低电平,产生下降沿,告诉别人要发数据了

数据位:数据帧的有效载荷,1为高电平,0为低电平,低位先行(如00001111,发送顺序从右到左)

校验位:用于数据验证,判断数据是不是传输出错了。

        可选3种校验:(配置寄存器中选择)

         1·无校验

         2·奇校验(发送00001111,保证奇数个1,校验位补1)

                       (发00000111,保证奇数个1,校验位补0)   

      (发送方,保证奇数,接受方,会验证是否还是奇数,就没丢失,如不是奇数,说明丢失)   

          3·偶校验(同理)     

          但是,如果两个位出错,那么就校验不出来有没丢失,所以这个只保证一定程度的校验           

停止位:用于数据帧间隔,固定为高电平

(2)串口发送

 一般USART会自动完成发送的格式,

自己可以在TX引脚,通过软件模拟高低电平的,譬如9600波特率,定时器定一104us的时间,通过定时调用GPIO_WriteBit()输出高低电平

反之,USART也能自动完成接收的格式,

也同理RX读取,定时调用GPIO_ReadInputDataBit()读取电平

注意:停止位可选1/1.5/2位等等

(3)串口发送+接收

(剩下的在下一节)

                

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值