本文主要涉及到串口协议和RS-232、485标准的简介,RS232、485电平与TTL电平的区别,以及 “USB/TTL转232” 模块(以CH340芯片模块为例)的工作原理。

目录

  • 一、通信方式
    • 1.串行与并行通信
    • 2.单工、半双工及全双工通讯
    • 3.同步通讯与异步通讯
  • 二、串口协议
    • 1、串行通信接口
    • 2、什么是串口通信
    • 3、串口通信的特点
    • 4、串口通信协议
    • 5、相关概念
    • 6、 常用的串口通信协议
  • 三、RS-232
    • 1、简介
    • 2、特点
    • 3、缺点
    • 4、机械特性
    • 5、电气特性
    • 6、连接方式
  • 四、RS-485
    • 1、简介
    • 2、特点
    • 3、电气特性
    • 4、优点
  • 五、RS232、485电平与TTL电平的区别
  • 六、"USB/TTL转232" 模块的工作原理
    • 1、基本工作原理
    • 2、实例(以CH340芯片模块为例)
  • 七、总结

一、通信方式

1.串行与并行通信

按数据传送的方式,通讯可分为 串行通讯并行通讯

串行通讯:

是指设备之间通过一根数据信号线,地线以及控制信号线,按数据位形式一位一位地传输数据的通讯方式,同一时刻只能传输一位(bit)数据。

并行通讯:

是指使用 8、16、32 及 64 根或更多的数据线(有多少信号为就需要多少信号位)进行传输的通讯方式,可以同一时刻传输多个数据位的数据。

串行通讯与并行通讯的特性对比:

  • 串行传输:
    优点:使用的数据线少,在远距离通信中可以节约通信成本。
    缺点:因为每次只能传输一位数据,所以传输速度比较低。

  • 并行传输:
    优点:因为可以多位数据一起传输,所以传输速度很快。
    缺点:内存有多少位,就要用多少数据线,所以需要大量的数据线,成本很高。使用场合

2.单工、半双工及全双工通讯

单工通信: 信息只能 单方向传输 的工作方式,一个固定为发送设备,另一个固定为接收设备,发送端只能发送信息不能接收信息,接收端只能接收信息不能发送信息,只需一根信号线

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

全双工通信:同一时刻,两个设备之间可以同时收发数据 ,全双工方式无需进行方向的切换,相当于两个单工通信方式的结合,这种方式要求通讯双方均有发送器和接收器,同时,需要2根数据线。

3.同步通讯与异步通讯

同步通讯: 带时钟同步信号传输,收发设备双方会使用一根信号线表示时钟信号,在时钟信号的驱动下双方进行协调,同步数据,通讯中通常双方会统一规定在时钟信号的上升沿或下降沿对数据线进行采样,对应时钟极性与时钟相位。比如:SPI,I2C通信接口。

异步通讯: 不带时钟同步信号,不需要时钟信号进行数据同步,它们直接在数据信号中穿插一些同步用的信号位,或者把主体数据进行打包,以数据帧(串口:起始位 数据 校验位(可以没有) 停止位)的格式传输数据,某些通讯中还需要双方约定数据的传输速率(波特率),常用的波特率有4800bps、9600bps、115200bps等,以便更好地同步。比如:UART(通用异步收发器),单总线。

在同步通讯中,数据信号所传输的内容绝大部分是有效数据,而异步通讯中会则会包含数据帧的各种标识符,所以 同步通讯效率高,但是同步通讯双方的时钟允许误差小,稍稍时钟出错就可能导致数据错乱,异步通讯双方的时钟允许误差较大。

二、串口协议

1、串行通信接口

常见串口通信的接口:

通信标准 引脚说明 通信方式 通信方向
UART(通用异步收发器) TXD:发送端 RXD:接收端 GND:共地 异步通信 全双工
1-wire(单总线) DQ:发送/接收端 异步通信 半双工
SPI SCLK:同步时钟 MISO:主机输入,从机输出 MOSI:主机输出,从机输入 同步通信 全双工
I2C SCLK:同步时钟 SDA:数据输入/输出端 同步通信 半双工

(1)UART(通用异步收发器)
RXD:数据输入引脚,数据接收
TXD:数据发送引脚,数据发送

对于两个芯片之间的连接,两个芯片GND共地,同时TXD和RXD交叉连接。这里的交叉连接的意思就是,芯片1的RxD连接芯片2的TXD,芯片2的RXD连接芯片1的TXD。这样,两个芯片之间就可以进行TTL电平通信了。

(2)1-wire(单总线)
DQ:发送/接收端

单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。

(3)SPI
SCLK:同步时钟
MISO:主机输入,从机输出
MOSI:主机输出,从机输入

SDO/MOSI (Master Output Slave Input)– 主设备数据输出,即从设备数据输入;SDI/MISO – 数据输入;SCLK – 时钟信号,由主设备产生,没有数据就可以没有时钟;CS/SS – 从设备片选,每个从设备都需要一个,由主设备控制。

(4)I2C
SCLK:同步时钟
SDA:数据输入/输出端

I2C总线有两根双向的信号线,一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步。

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

2、什么是串口通信

串行接口 是一种可以将接收来自 CPU并行数据字符 转换为 连续的串行数据流 发送出去,同时可将 接收串行数据流 转换为 并行的数据字符 供给CPU的器件。一般完成这种功能的电路,我们称为 串行接口电路

串口通信(Serial Communications) 的概念,简单来说,就是 串口按位(bit)发送和接收字节串口通信 是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据 的一种通讯方式。

3、串口通信的特点

(1)尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。
(2)它很简单并且能够实现 远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。
(3)串口用于 ASCII码字符 的传输。
(4)通信使用3根线完成,分别是地线、发送、接收。
(5)串口通信是 异步 的,端口能够在一根线上发送数据 同时 在另一根线上接收数据。其他线用于握手,但不是必须的。串口通信最重要的参数是 波特率、数据位、停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配。

4、串口通信协议

串口通信协议就是 串口通讯时共同遵循的协议,其定义了双方遵循的协议 数据帧格式 和其 传输方式。通讯协议分为 物理层和协议层

  • 物理层:
    规定通讯系统中具有 机械、电子功能部分的特性 ,确保原始数据在 物理媒体 的传输(通俗一点就是硬件部分)。
  • 协议层:
    主要规定 通讯逻辑,统一收发双方的数据打包、解包标准(软件)。协议的内容是 每一个bit 所代表的意义
  • 串口通信协议 规定了数据包的内容,内容包含了 起始位、主体数据、校验位及停止位 ,双方需要 约定一致的数据包格式 才能正常收发数据的有关规范。
  • 数据帧结构:

5、相关概念

  • 波特率:

这是一个 衡量符号传输速率 的参数。指的是信号被调制以后在单位时间内的变化,即 单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。一般调制速率大于波特率,比如曼彻斯特编码)。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。

  • 数据位

这是 衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据往往不会是8位的,标准的值是6、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。

  • 停止位

用于表示 单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。

  • 奇偶校验位

串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位为1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。

6、 常用的串口通信协议

在串口通信中,常用的协议包括 RS-232、RS-422和RS-485
1、RS-232(ANSI/EIA-232标准): 只支持点对点, 最大距离 50英尺。最大速度为128000bit/s, 距离越远,速度越慢。 支持全双工(发送同时也可接收)。
2、RS-422(EIA RS-422-AStandard): 支持点对多一条平衡总线上连接最多10个接收器 将传输速率提高到10Mbps,传输距离延长到4000英尺(约1219米),所以在100kbps速率以内,传输距离最大。支持全双工(发送同时也可接收)。
3、RS-485(EIA-485标准): 是RS-422的改进, 支持多对多(2线连接),从10个增加到32个,可以用超过4000英尺的线进行串行通行。速率最大10Mbps。支持全双工(发送同时也可接收)。2线连接时 是半双工状态。

下面,我将详细介绍RS-232和RS-485协议。

三、RS-232

1、简介

RS-232-C接口(又称EIARS-232-C)是目前最常用的一种串行通讯接口。(“RS-232-C”中的“-C”只不过表示RS-232的版本,所以与“RS-232”简称是一样的)。

它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。该标准规定采用一个25个脚的DB-25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC机将RS232简化成了DB-9连接器,从而成为事实标准。而 工业控制的RS-232口一般只使用RXD、TXD、GND三条线

2、特点

信号线少
RS-232总线规定了25条线,包含了两个信号通道,即第一通道(称为主通道)和第二通道(称为副通道)。利用RS- 232总线可以实现全双工通信,通常使用的是主通道,而副通道使用较少。在一般应用中,使用3条~9条信号线就可以实现全双工通信,采用三条信号线(接收线、发送线和信号线)能实现简单的全双工通信过程。
灵活的波特率选择
RS-232规定的标准传送速率有50b/s、75b/s、110b/s、150b/s、300b/s、600b/s、1200b/s、2400b/s、4800b/s、9600b/s、19200b/s,可以灵活地适应不同速率的设备。对于慢速外设,可以选择较低的传送速率:反之,可以选择较高的传送速率。
采用负逻辑传送
规定 逻辑“1”的电平为-5V~-15 V逻辑“0”的电平为+5 V~+15 V。选用该电气标准的目的在于提高抗干扰能力,增大通信距离。RS -232的噪声容限为2V,接收器 将能识别高至+3V的信号作为逻辑“0”,将低到-3 V的信号作为逻辑“1”。
传送距离较远
由于RS -232采用串行传送方式,并且将微机的TTL电平转换为RS-232C电平,其传送距离一般可达30 m。若采用光电隔离20 mA的电流环进行传送,其传送距离可以达到1000 m。另外,如果在RS-232总线接口再加上Modem,通过有线、无线或光纤进行传送,其传输距离可以更远。

3、缺点

(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps;因此在CPLD开发板中,综合程序波特率只能采用19200,也是这个原因。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在15米左右。

RS-232串行通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口,若距离较远需附加调制解调器( Mode),最为简单的且常用的是三线制接法,即地、接收数据、发送数据三脚相连。

4、机械特性

RS232标准采用的接口是9针或25针的D型插头,常用的一般是9针插头。

RS232C标准接口有25根线,常用的只有9根,它们是:

(1)接收线信号检出( Received Line Signal Detection,RSD)——用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地的 MODEM收到由通信链路另一端(远地)的MODEM送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由MODEM将接收下来的载波信号解调成数字数据后,沿接收数据线RXD送到终端。此线也叫作数据载波检出(Data Carrier detection,DCD)线。
(2)接收数据( Received data,RXD)——通过RXD线终端接收从 MODEM发来的串行数据(DCE→DTE)。
(3)发送数据( Transmitted data,TXD)——通过TXD终端将串行数据发送到 MODEM(DTE→DCE)。
(4)数据终端准备好( Data Terminal Ready,DTR)——有效时(ON)状态,表明数据终端可以使用。
(5)地线-GND
(6**)数据装置准备好( Data Set ready,DSR)**——有效时(ON)状态,表明通信装置处于可以使用的状态。
(7)请求发送( Request to Send)——用来表示DTE请求DCE发送数据,即当终端要发送数据时,使该信号有效(ON状态),向 MODEM请求发送。它用来控制 MODEM是否要进入发送状态。
(8)清除发送( Clear to Send,CTS)―用来表示DCE准备好接收DTE发来的数据,是对请求发送信号RTS的响应信号。当 MODEM已准备好接收终端传来的数据并向前发送时,使该信号有效,通知终端开始沿发送数据线TXD发送数据。
(9)振铃指示( Ringing,R)——当 MODEM收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。

5、电气特性

  • 在TXD和RXD上:逻辑1(MARK)=-3~ -15V;逻辑0(SPACE)=3~ 15V
  • 在RTS、CTS、DSR、DTR和DCD等控制线上:信号有效(接通,ON状态,正电压)=3~ 15V;信号无效(断开,OFF状态,负电压)=-3~ -15V
    以上规定说明了RS232C标准对逻辑电平的定义:
  • 对于数据(信息码),逻辑1(传号)的电平低于-3V,逻辑0(空号)的电平高于+3V;
  • 对于控制信号,接通状态(ON)即信号有效的电平高于3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~ 3V的电压无意义,低于-15V或高于15V的电压也认为无意义,因此,实际工作时,应保证电平在±3~15V
  • 用RS232总线连接系统时有近程通信方式和远程通信方式两种,近程通信是指传输距离小于15m的通信,可以用RS232电缆直接连接;15m以上的长距离通信,需要采用调制调解器。

6、连接方式

若是芯片与PC机(或上位机)相连,除了共地之外,就不能这样直接交叉连接了。尽管PC机和芯片都有TXD和RXD引脚,但是通常PC机(或上位机)通常使用的都是RS232接口(通常为DB9封装),因此不能直接交叉连接。RS232接口是9针(或引脚),通常是TxD和RxD经过电平转换得到的。因此,要想使得芯片与PC机的RS232接口直接通信,需要也将芯片的输入输出端口也电平转换成RS232类型,再交叉连接。
经过电平转换后,芯片串口和RS232的电平标准是不一样的:
单片机是TTL电平:+5V表示1,0V表示0
RS232是负逻辑电平,-3 ~ -15V为1,+3~+15V为0

RS-232通讯协议标准串口的设备间通讯结构图如下:

所以单片机串口与PC串口通信就应该遵循下面的连接方式:在单片机串口与上位机给出的RS232口之间,通过电平转换电路(如下面图中的Max232芯片) 实现TTL电平与RS232电平之间的转换。

四、RS-485

1、简介

美国电子工业协会(EIA)制定并发布RS-485标准,并经通讯工业协会(TIA)修订后命名为TIA/EIA-485-A,习惯地称之为RS-485标准。
RS-485标准专门弥补RS-232通讯距离短、速率低等缺点而产生。

2、特点

1.RS-485标准只规定了平衡发送器和接收器的特性。而没有规定接插件、传输电缆和应用层通讯协议。

2.RS-485有两线制和四线制两种接线,四线制只能实现点对点的通讯方式,现很少采用,多采用两线制接线方式。这种接线方式为总线式拓朴结构在同一总线上最多可以挂线32–128个结点。

3.在RS-485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。

4.通讯协议采用按照设备地址查询的方式,其通讯的效率很低,不适合高速传输系统。一般速率不超过19200bps。波特率为9600Bps、1200Bps。RS-485标准的最大传输距离约为1219米,最大传输速率为10Mbps。

3、电气特性

逻辑“1”以两线间的 电压差 为+2~ 6V表示;逻辑“0”以两线间的 电压差 为-2~ 6V表示。

4、优点

(1)接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL电路连接。
(2)RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
(3)RS-485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外RS-232-C接口在总线上只允许连接1个收发器,即单站能力。而RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。
(4)因RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点就使其成为首选的串行接口。因为RS485接口组成的半双工网络,一般只需二根连线,所以RS485接口均采用屏蔽双绞线传输。RS485接口连接器采用DB-9的9芯插头座,与智能终端RS485接口采用DB-9(孔),与键盘连接的键盘接口RS485采用DB-9(针)。

五、RS232、485电平与TTL电平的区别

RS232接口的电气特征
在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-3到-15V;逻辑“0”为+3到+15V
RS-232-C接口连接器一般使用型号为DB-9插头座,通常插头在DCE端,插座在DTE端。PC机的RS-232口为9芯针插座。一些设备与PC机连接的RS-232接口,因为不使用对方的传送控制信号,只需要三条接口线,即“发送数据TXD”、“接收数据RXD”和“信号地GND”。RS-232传输线采用屏蔽双绞线。

RS485的电气特性
RS485采用 差分信号负逻辑逻辑"1”以两线间的电压差为-2~ 6V表示;逻辑"0"以两线间的电压差为+2~ 6V表示 。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容,可方便与TTL电路连接。RS-485的数据最高传输速率为10Mbps。

TTL电平
TTL电平信号被利用的最多是因为通常数据表示采用二进制规定,+5V等价于逻辑“1”,0V等价于逻辑“0”,这被称做TTL(晶体管-晶体管逻辑电平Transistor-Transistor Logic)信号系统,这是计算机处理器控制的设备内部各部分之间通信的标准技术。

TTL电平标准
输出 L: <0.8V ; H:>2.4V
输入 L: <1.2V ; H:>2.0V
TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限就只有(0.8-0)/2=0.4V,高电平的噪声容限为(5-2.4)/2=1.3V。

RS232和RS485、TTL的区别
1、RS232、RS485、TTL是指电平标准(电信号)
2、TTL电平标准是 低电平为0,高电平为1(对地,标准数字电路逻辑)。
3、RS232电平标准 是 正电平为0,负电平为1(对地,正负3-15V皆可,甚至可以用高阻态)。
4、RS485与RS232类似,但是采用差分信号逻辑,更适合长距离、高速传输。

六、“USB/TTL转232” 模块的工作原理

1、基本工作原理

USB转串口即实现计算机USB接口到物理串口之间的转换。可以为没有串口的计算机或其他USB主机增加串口,使用USB转串口设备等于将传统的串口设备变成了即插即用的USB设备。

USB主机检测到USB转串口设备插入后,首先会对设备复位,然后开始USB枚举过程。USB枚举时过程会获取设备描述符、配置描述符、接口描述符等。描述符中会包含USB设备的厂商ID,设备ID和Class类别等信息。操作系统会根据该信息为设备匹配相应的USB设备驱动。

USB虚拟串口的实现在系统上依赖于USB转串口驱动,一般由厂家直接提供,也可以使用操作系统自带的CDC类串口驱动等。驱动主要分为2个功能,其一注册USB设备驱动,完成对USB设备的控制与数据通讯,其二注册串口驱动,为串口应用层提供相应的实现方法。

串口收发对应的驱动数据流向一览:

发生/接收 实现过程
串口发送 串口应用发送数据→USB串口驱动获取数据→驱动将数据经过USB通道发送给USB串口设备→USB串口设备接收到数据通过串口发送
串口接收 USB串口设备接收串口数据→将串口数据经过USB打包后上传给USB主机→USB串口驱动获取到通过USB上传的串口数据→驱动将数据保存在串口缓冲区提供给串口应用读取

2、实例(以CH340芯片模块为例)

CH340 是一个USB 总线的转接芯片,实现USB 转串口、USB 转IrDA 红外或者USB 转打印口。为了增加串口通讯的远距离传输及抗干扰能力,RS-232标准使用-15V 表示逻辑 1, +15V 表示逻辑 0。常常会使用 MH340芯片 对 USB/TTL与RS-232电平的信号进行转换

USB转串口模块可以使用5V、3V3电压供电,需要将跳线帽进行安装。

可以对USB转串口模块进行测试,将USB的电压引脚用跳帽接上,然后将RXD和TXD两个引脚用跳帽或者杜邦线接上。


USB转串口电路板与单片机的接线图,VCC接线是为了单片机供电,USB转串口的RXD引脚与单片机的TXD引脚相连,USB转串口的TXD引脚与单片机的RXD引脚相连,两者的GND引脚直接相连。

七、总结

本篇博客介绍了STM32F103单片机的串口协议,介绍了RS-232 、RS485标准以及TTL电平,分析了RSS-232、RS485以及TLL的区别。阐述了USB转接串口基本原理,并以CH340模块为案例介绍。由于篇幅太长,本篇文章主要介绍理论知识,具体的实践操作将会写在下一篇帖子里,希望能够给各位读者帮助,同时也希望各位读者能够自己尝试去实验,实践是检验真理的唯一标准,只有通过实验才能够真正熟知和掌握知识。若博客中有不足或者缺漏,望各位指出。


参考列表:
1.串口通讯协议
2.STM32——串口通信
3.STM32学习笔记之串行通信接口

嵌入式系统开发09——串口通信相关推荐

  1. 【嵌入式系统开发09】重做LED灯以及串口通信查询

    [嵌入式系统开发09]重做LED灯以及串口通信查询 要求:安装 stm32CubeMX,配合Keil,分别尝试使用寄存器地址方式(汇编或C,不限) 和HAL库这两种方式,完成下列任务: 1.LED灯重 ...

  2. 嵌入式系统 实验二 串口通信实验

    实验二 串口通信实验 一.实验目的 1.)了解 USART 的基本特性: 2.)掌握用库函数操作 USART 的方法: 3.)掌握如何使用 STM32 的串口发送和接收数据. 二.实验环境 1.)硬件 ...

  3. 【嵌入式系统】STM32串口通信的四种方法(基于RTOS)

    目录 1.串行通信的基本参数 2.轮询方式代码效果 3.中断方式代码效果 4.中断加上时间戳方式代码及效果 5.DMA空闲中断方式接收数据 1.串行通信的基本参数 串行端口的通信方式是将字节拆分成一个 ...

  4. 嵌入式系统开发-学习路线

    嵌入式系统开发 课程链接 随着嵌入式设备的普及,嵌入式应用的需求量也随之增大,本课程将重点培养基于linux系统下的嵌入式应用开发,包括5个阶段,其中课程涵盖了linux系统下的多进程.多线程嵌入式开 ...

  5. 嵌入式系统开发学习步骤(Linux高级编程学习顺序)

    2019独角兽企业重金招聘Python工程师标准>>> 嵌入式系统开发学习步骤(Linux高级编程学习顺序) 1.Linux 基础 安装Linux操作系统 Linux文件系统 Lin ...

  6. 面向对象嵌入式系统开发7-嵌入式系统的实现

    面向对象嵌入式系统开发7-嵌入式系统的实现  如果说嵌入式系统的面向对象分析与设计涉及到抽象.思考和经验的话,那么嵌入式系统的实现则涉及更多的实施细节.无论使用咋样前言的技术方法,最终都需要把整个系统 ...

  7. 串口 单片机 文件_STM32物联网实战项目 HAL裸机开发09 串口打印

    就喜欢你关注我- HAL裸机开发09 - 串口打印 综合信息1.获取开发工具    微信公众号后台发送消息  -  工具2.获取开发板       淘宝搜索店铺  -  硬件家园3.快速了解平台    ...

  8. 嵌入式系统开发学习如何起步、如何深入?(转)

    学习有捷径吗?俺认为是有的,正确的道路就是捷径. 就好象是爬山,如果有导游图,那就能找到一条最正确的路线:如果没有导游图,自己瞎琢磨,东问西问,也未必能找到最佳的路线. 有时候回首前尘,会谓叹,要是当 ...

  9. Linux裸机开发|UART串口通信

    UART串口通信 不管是单片机开发还是嵌入式Linux开发,串口都是最常用到的外设.可以通过串口将开发板与电脑相连,然后在电脑上通过串口调试助手来调试程序.还有很多模块,比如蓝牙.GPS.GPRS等都 ...

最新文章

  1. 导致美国大范围网络瘫痪的Mirai僵尸网络
  2. 如何将MP3格式音乐转换成M4R格式
  3. .net core出现Http Error 502.5 - Process Failure
  4. 第十五届全国大学生智能汽车竞赛华北赛区比赛
  5. 用grep和cut做一些数据统计
  6. java reactor框架_Java反应式框架Reactor中的Mono和Flux
  7. linux符号命令,Linux_几个符号命令(示例代码)
  8. ORB-SLAM3:一个用于视觉、视觉惯性和多地图SLAM系统
  9. 【情感识别】基于matlab支持向量机(SVM)语音情感识别【含Matlab源码 543期】
  10. 深入理解JVM虚拟机(总结篇)
  11. html中绑定点击事件的三种方法
  12. python高级函数_python高级之函数
  13. 区块链人才急聘:一大波高薪职位等你来
  14. Pycon 2017: Python可视化库大全
  15. Dying In The Sun~~逝去于阳光之下
  16. css backdrop-filter属性 用来做图片的部分模糊效果
  17. 2021年茶艺师(初级)考试技巧及茶艺师(初级)试题及解析
  18. RabbitMQ--队列结构、惰性队列
  19. BackTrack5里使用OpenVAS
  20. Windows远程连接工具有哪些

热门文章

  1. 在家办公 |Hulu的奇妙工位大赏
  2. 基于jsp+mysql+ssm的汽车销售系统-计算机毕业设计
  3. will和would,can和could的区别
  4. 孙松林:直面5G困境,从产业破局
  5. VS验证码随机生成和字数控制
  6. 宕机噩梦,CTO也躲不过凌晨改代码!
  7. 虚拟局域网VLAN实验操作
  8. Flutter 3 发布了(文末推荐一个免费的在线Flutter学习教程)
  9. 从GDC下载数据集、svs无损转png
  10. 大黄蜂(HORNET):比Tor更快更安全的匿名网络