锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

嵌入式分享合集7

时间:2022-11-12 09:30:00 通用三极管pnp电阻输出隔离栅

一、STM32串口通信基本原理

通信界面背景知识

设备之间的通信方式

一般来说,设备之间的通信方式可分为并行通信和串行通信。并行通信与串行通信的区别如下表所示。

串行通信的分类

1、按数据传输方向分为:

  • 单工:数据传输只支持数据在一个方向上传输;

  • 半双工:允许数据在两个方向上传输。但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;它不需要独立的接收端和发送端,两者可以合并一起使用一个端口。

  • 全双工:允许数据同时向两个方向传输。因此,全双工通信是两种单工通信方式的结合,需要独立的接收端和发送端。

2、按通信方式分为:

  • 同步通信:带时钟同步信号传输。SPI,IIC通信接口。

  • 异步通信:不带时钟同步信号。比如:UART单总线(通用异步收发器)。

在同步通信中,在时钟信号的驱动下,双方将在收发设备上方使用信号线传输信号进行协调和同步数据。例如,在通信中,双方通常规定在时钟信号的上下沿采样数据线。

时钟信号不用于异步通信中的数据同步。它们直接穿插一些用于同步的信号位,或包装主题数据,以数据帧的形式传输数据。为了更好地同步,双方还需要规定数据的传输速率(即波特率)。常用的波特率为48000bps、9600bps、115200bps等。

在同步通信中,数据信号传输的大部分内容是有效数据,而异步通信将包含各种数据帧标识符,因此同步通信效率高,但同步通信时钟允许误差小,一点时钟错误可能导致数据混乱,异步通信时钟允许误差大。

常见的串行通信接口

STM32串口通信基础

STM串口通信接口有两种:UART(通用异步收发器),USART(通用同步异步收发器)。对于大容量。STM32F10x分别有三个系列芯片USART和2个UART。

UART引脚连接方法

  • RXD:数据输入引脚,数据接受;

  • TXD:数据发送引脚,数据发送。

两个芯片之间的连接GND共地,同时TXD和RXD交叉连接。这里的交叉连接意味着芯片1RxD连接芯片2的TXD,芯片2的RXD连接芯片1的TXD。这样可以在两个芯片之间进行TTL电平通信。STM32与51单片机串口通信相关实例,请在此移动:STM32与51单片机串口通信实例。

若是芯片与PC除共地外,机器(或上位机)不能直接交叉连接。尽管PC机器和芯片都有TXD和RXD引脚,但通常PC通常使用机器(或上位机)RS232接口(通常是DB9包装),不能直接交叉连接。RS232接口是9针(或引脚),通常是TxD和RxD经过电平转换得到的。因此,要使芯片和PC机的RS232接口直接通信,芯片的输入输出端口也需要电平转换RS232类型,然后交叉连接。

经过电平转换后,芯片串口和RS232的电平标准不同:

  • 单片机电平标准(TTL电平): 5V表示1,0V表示0;

  • RS232电平标准: 15/ 13 V表示0,-15/-13表示1。

RS-设备间通信结构图如下:

因此,单片机串口与PC串口通信应遵循以下连接方式:单片机串口和上位机给出的RS电平转换电路在232口之间(如下图所示Max232芯片) 实现TTL电平与RS232电平之间的转换。STM32与PC通信实例之间,请在此移动:STM32实例-用按钮控制串口发送数据,文末附代码。

RS232串口简介

台式机电脑后面的9针接口是com口(串口) 在工业控制 上图广泛应用于数据采集,最右边的串口接口统称为RS232接口是常见的DB9封装。

只有两只脚参与通信。

  • 2脚:计算机输入RXD

  • 三脚:计算机输出TXD 通过2 ,3 脚可实现全双工串行异步(可同时收发) 通信

  • 5脚:接地

单片机的P三口有两个复用接口RXD 和TXD。这是单片机串行通信的收发口,连接应与计算机错位TDX RDX注:单片机和RS232的电平标准不同。

单片机电平标准 TTL电平 : 5V表示1 0V表示0。

RS232的电平标准 15/ 13 V表示1 -15/-13 表示0。

所以 单片机与计算机串口通信应遵循以下连接方式:

在单片机与上位机给出的RS电平转换电路在232口之间(上图中Max232芯片) 实现TTL电平与RS232电平之间的转换,PC串口与单片机串口连接方式图:

注意这两个DB9:DB91在电脑上 DB92焊接在单片机实验板上。

这里的交叉连接意味着 DB91的RXD连着DB92的TXD。

DB92的RXD连着DB91的TXD如果计算机没有这样的交叉连接RS232口 只有USB如下图所示,可用串口转接线将串口转出。

此时,串口驱动程序需要安装在计算机上位机上。

注意,这个驱动程序驱动PL2303芯片(在上图的大头) 使得RS232信息转换成USB信息。

下图为上图内部结构:

whaosoft aiothttp://143ai.com用ttl转uart使用方便 只是用了rx tx

使用串口通信比USB简单,因为串口通信没有协议,使用方便简单。

STM32的UART特点

  • 全双工异步通信;

  • 分数波特率发生器系统提供精确的波特率。发送和接受共用的可编程波特率最高可达4.5Mbits/s;

  • 可编程数据字长度(8位或9位);

  • 可配置的停止位(支持1或2位停止位);

  • 可配置使用DMA多缓冲器通信;

  • 单独的发送器和接收器使能位;

  • 检测标志:

    ① 接受缓冲器

    ②空发送缓冲器

    ③传输结束标志;

  • 多个带标志的中断源触发中断;

  • 其他:校验控制,四个错误检测标志。

串口通信过程

STM32中UART参数

串口通信的数据包由发送设备发送TXD接口传输至接收设备RXD接口、通信双方的数据包格式通信双方的数据包格式应一致。

STM串口异步通信需要中需要定义的参数:起始位、数据位(8位或9位)、奇偶验证位(9位)、停止位(1、15位、2位)、波特率设置。相关文章推荐:学习STM32单片机,绕不开串口。

UART串口通信的数据包以帧为单位,常用的帧结构为:1位起始位 8位数据位 1位奇偶校准位(可选) 一个停止位。如下图所示:

奇偶校验位分为奇偶校验和偶校验,是一种简单的数据误码校验方法。奇偶校验是指每帧数据中包括数据位和奇偶校验位在内的所有9个位中的1个必须是奇数;偶校验是指每帧数据中包括数据位和奇偶校验位在内的所有9个位中的1个必须是偶数。

除了奇怪的校验(odd)、偶校验even)之外,还可以有:0 校验(space)、1 校验(mark)以及无校验(noparity)。 0/1校验:不管有效数据中的内容是什么,校验位总为0或者1。

UART(USART)框图

    这个框图分成上、中、下三个部分。本文大概地讲述一下各个部分的内容,具体的可以看《STM32中文参考手册》中的描述。

    框图的上部分,数据从RX进入到接收移位寄存器,后进入到接收数据寄存器,最终供CPU或者DMA来进行读取;数据从CPU或者DMA传递过来,进入发送数据寄存器,后进入发送移位寄存器,最终通过TX发送出去。

    然而,UART的发送和接收都需要波特率来进行控制的,波特率是怎样控制的呢?

    这就到了框图的下部分,在接收移位寄存器、发送移位寄存器都还有一个进入的箭头,分别连接到接收器控制、发送器控制。而这两者连接的又是接收器时钟、发送器时钟。也就是说,异步通信尽管没有时钟同步信号,但是在串口内部,是提供了时钟信号来进行控制的。而接收器时钟和发送器时钟有是由什么控制的呢?

延庆川北小区45孙老师 收卖废品垃圾破烂炒股 废品孙

    可以看到,接收器时钟和发送器时钟又被连接到同一个控制单元,也就是说它们共用一个波特率发生器。同时也可以看到接收器时钟(发生器时钟)的计算方法、USRRTDIV的计算方法。

二、MOS管驱动电路

MOS管因为其导通内阻低,开关速度快,因此被广泛应用在开关电源上。而用好一个MOS管,其驱动电路的设计就很关键。下面分享几种常用的驱动电路。

1 电源IC直接驱动

    电源IC直接驱动是最简单的驱动方式,应该注意几个参数以及这些参数的影响。

①查看电源IC手册的最大驱动峰值电流,因为不同芯片,驱动能力很多时候是不一样的。

②了解MOS管的寄生电容,如图C1、C2的值,这个寄生电容越小越好。如果C1、C2的值比较大,MOS管导通的需要的能量就比较大,如果电源IC没有比较大的驱动峰值电流,那么管子导通的速度就比较慢,就达不到想要的效果。

2 推挽驱动

    当电源IC驱动能力不足时,可用推挽驱动。

    这种驱动电路好处是提升电流提供能力,迅速完成对于栅极输入电容电荷的充电过程。这种拓扑增加了导通所需要的时间,但是减少了关断时间,开关管能快速开通且避免上升沿的高频振荡。

3 加速关断驱动

    MOS管一般都是慢开快关。在关断瞬间驱动电路能提供一个尽可能低阻抗的通路供MOSFET栅源极间电容电压快速泄放,保证开关管能快速关断。相关推荐:MOS管驱动电路设计细节。

    为使栅源极间电容电压的快速泄放,常在驱动电阻上并联一个电阻和一个二极管,如上图所示,其中D1常用的是快恢复二极管。这使关断时间减小,同时减小关断时的损耗。Rg2是防止关断的时电流过大,把电源IC给烧掉。

    如上图,是我之前用的一个电路,量产至少上万台,推荐使用。

    用三极管来泄放栅源极间电容电压是比较常见的。如果Q1的发射极没有电阻,当PNP三极管导通时,栅源极间电容短接,达到最短时间内把电荷放完,最大限度减小关断时的交叉损耗。

    还有一个好处,就是栅源极间电容上的电荷泄放时电流不经过电源IC,提高了可靠性。

4 隔离驱动

    为了满足高端MOS管的驱动,经常会采用变压器驱动。其中R1目的是抑制PCB板上寄生的电感与C1形成LC振荡,C1的目的是隔开直流,通过交流,同时也能防止磁芯饱和。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章