电平特性
单片机是一种数字集成芯片
数字电路中有两种电平特性:高电平、低电平
定义单片机的输出与输入为TTL电平信号
高电平:+5V
低电平:0V
计算机串口为RS232电平信号(负逻辑)
高电平:-12V
低电平:+12V
计算机与单片机通信时需要依靠“电平转换芯片”
常用逻辑电平:TTL、CMOS、LVTTL、RS232、RS485等
TTL电平信号:
电压 | 电平 | 信号 |
---|---|---|
+5V | 高电平 | 逻辑1 |
0V | 低电平 | 逻辑0 |
TTL电路和CMOS电路的逻辑电平关系:
种类 | 输入输出 |
---|---|
VOH | 逻辑电平 1 的输出电压 |
VOL | 逻辑电平 0 的输出电压 |
VIH | 逻辑电平 1 的输入电压 |
VIL | 逻辑电平 0 的输入电压 |
用单片机管脚采集外部电压信号时,需要知道外部信号的值大于多少时才算高电平,小于多少时才算低电平。并不是说高电平必须是5V
TTL电平临界值:
①VOHmin=2.4V , VOLmax=0.4V
②VIHmin=2.0V , VILmax=0.8V
CMOS电平临界值(假设电源电压为+5V):
①VOHmin=4.99V , VOLmax=0.01V
②VIHmin=3.5V , VILmax=1.5V
通常CMOS电平能驱动TTL电平,但TTL电平不能直接驱动CMOS电平单片机是TTL电平,而外部器件的逻辑芯片(例如74HC系列的74HC138、595、245等)都是CMOS电平
单片机引脚能否直接相连:一般来说同电压可以相连,最好查看芯片的技术手册中VOH、VOL、VIH、VIL的值是否匹配
进制
二进制与十六进制
数字电路中只有两种电平特性,决定了使用二进制
二进制(B):逢二进一,借一当二
十六进制(H):0~9、A、B、C、D、E、F(0x十六进制)
二进制的逻辑运算
①与运算:全部为真则真(1),有一个为假则假(0)
②或运算:只要其中一个真则真,两个都假则假
③非运算:取反
④同或运算:两者相同则真,不同则假(实际编程上用不到)
⑤异或运算:两者不同则真,相同则假(C语言中为^按位异或)
C51
C51与C语言差别不大
C51中可以按位对变量进行操作,只能对整型数据操作
位运算符
位运算符 | 含义 |
---|---|
& | 按位与 |
I | 按位或 |
^ | 按位异或 |
~ | 按位取反 |
<< | 左移 |
>> | 右移 |
51单片机最小系统
51单片机需要搭配外围电路才能够工作
能够使51单片机工作的最基础电路称为51单片机最小系统
下面介绍51单片机最小系统的构成(前三个结构使单片机正常运行,下载电路用来下载程序)
晶振电路
提供时钟,好比心脏
晶振大小取决于使用的单片机,51单片机时钟频率在0~40M可以运行,一般情况下选择12M(误差较大)或者11.0592M(串口通信使用更精确)
不能直接接入单片机引脚,因为晶振在起振的一瞬间会产生电感,为消除电感所带来的干扰,在晶振两端添加电容(旁路电容),电容无极性,一端共地
复位电路
系统出现运行不正常情况时,复位重启系统
单片机中有RST复位引脚,STC89C52是高电平复位,只要使引脚保持一段高电平就可以实现复位。
按键开关与电容电路结构
方式①:按键手动复位(按下按键Vcc接入RST持续高电平,松开按键RST接地,下拉电阻变为低电平,按钮一般会保持接通达数十毫秒,能够满足复位时间的要求。)
方式②:上电复位,电源开启自动复位(利用RC充电功能,电容“隔直通交”。电路上电后,由于上电前电容上的电荷已放完,这时电位两极等电位(V电容=0),即RST端=VCC高电平。电容充电过程中,RST=( VCC - V电容),电容充电完成后Vcc=V电容,RST=0变为低电平)
注意:51单片机高电平复位,低电平运行
电源电路
单片机对供电电压有要求,电压过大可能烧毁芯片,电压过小系统运行不起来,选择稳定、合适的电源电路很关键
工作电压3.3~5.5V 通常用5V
AMS117-3.3 可以实现电源的转换,转为3.3V
51单片机P0口漏极开路(漏极开路(Open Drain)即高阻状态,适用于输入/输出,其可独立输入/输出低电平和高阻状态,若需要产生高电平,则需使用外部上拉电阻或使用如LCX245等电平转换芯片)所以P0口每一个口都需要接入上拉电阻
下载电路
USB转TTL——CH340芯片
-
USB口为系统提供5V电源
-
利用USB接口D-、D+实现串口连接
P5端子有RXD-U(URX)与TXD-U(UTX)两个独立串口,在使用串口模块(GPS、WiFi、蓝牙等)时,利用上位机提供的串口软件,通过电脑来调试串口模块。 -
下载程序时P5端子要用跳线帽短接,否则相当于CH340串口没有与单片机串口相连接