文章目录
一. 工作原理
-
串口协议
串行通信协议包括系统间协议和内部系统协议。
系统间协议:用于通信两个不同设备的系统间协议。就像计算机与微控制器套件之间的通信一样。通过内部总线系统进行通信。常见的有UART协议、USART协议、USB协议。
内部系统协议:内部系统协议用于通信电路板上的两个设备。在使用这些系统内协议时,我们将不使用系统内协议而扩展微控制器的外围设备。使用系统内协议会增加电路复杂度和功耗。使用系统内协议,电路复杂度和功耗降低,成本降低,并且访问数据非常安全。常见的有I2C协议、SPI协议、CAN协议。
串口通信指串口按位(bit)发送和接收字节。尽管比特字节(byte)的串行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。``串口通信协议是指规定了数据包的内容,内容包含了起始位、主体数据、校验位及停止位,双方需要约定一致的数据包格式才能正常收发数据的有关规范。在串口通信中,常用的协议包括RS-232、RS-422和RS-485。 -
RS-232
RS-232标准主要规定了信号的用途、通讯接口以及信号的电平标准。两个通讯设备的"接口"之间通过串口信号线建立起连接,串口信号线中使用"RS-232标准"传输数据信号。由于RS-232电平标准的信号不能直接被控制器直接识别,所以这些信号会经过一个"电平转换芯片"转换成控制器能识别的"TTL校准"的电平信号,才能实现通讯。 -
RS- 485标准
RS-485(EIA-485标准)是RS-422的改进,因为它增加了设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。有了多个设备的能力,你可以使用一个单个RS-485口建立设备网络。出色抗噪和多设备能力,在工业应用中建立连向PC机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择RS-485。RS-485是RS-422的超集,因此所有的RS-422设备可以被RS-485控制。RS-485可以用超过4000英尺的线进行串行通行。 -
RS232、485电平与TTL电平的区别
根据通讯使用的电平标准不同,串口通讯可分为TTL标准及RS-232标准。
RS232、RS485、TTL是指电平标准(电信号);TTL电平标准 是 低电平为0,高电平为1(对地,标准数字电路逻辑);RS232电平标准 是 正电平为0,负电平为1(对地,正负6-15V皆可,甚至可以用高阻态);RS485与RS232类似,但是采用差分信号逻辑,更适合长距离、高速传输。
-
"USB/TTL转232"模块工作原理
①CH340芯片模块介绍
USB转TTL串口模块是一个非常实用的工具,可以测试模块的UART串口通信和通过单片机的UART接口给单片机等下载程序。
能够在电脑上的串口助手软件非常直观的显示出串口设备返回的数据以及发送相应的控制数据给串口设备。
常见的有CP2102、PL2303、FT232、CH340等串口芯片方案的USB转串口模块。以下以CH340串口模块为例,对其进行自检测试。
②信号转换
CH340 是一个USB 总线的转接芯片,实现USB 转串口、USB 转IrDA 红外或者USB 转打印口。
为了增加串口通讯的远距离传输及抗干扰能力,RS-232标准使用-15V 表示逻辑 1, +15V 表示逻辑 0。常常会使用 MH340芯片对 USB/TTL与RS-232电平的信号进行转换。
③对单片机的作用
USB转串口电路板与单片机的接线图,VCC接线是为了单片机供电,USB转串口的RXD引脚与单片机的TXD引脚相连,USB转串口的TXD引脚与单片机的RXD引脚相连,两者的GND引脚直接相连。
二,LED流水灯
(一),C语言寄存器方式编程实现
1,创建工程
双击打开keil,点击菜单栏Project里New μVision Project,新建项目,在弹窗中设置工程项目的名称和路径,新建名为LED的工程文件。
2,配置环境
选择STM32F103C8开发板,只勾选CORE
3,生成hex文件
4,led代码:
#define GPIOB_BASE 0x40010C00
#define GPIOC_BASE 0x40011000
#define GPIOA_BASE 0x40010800
#define RCC_APB2ENR (*(unsigned int *)0x40021018)
#define GPIOB_CRH (*(unsigned int *)0x40010C04