单片机中常见电平
TTL电平:一般用作数字芯片的电平,单片机大多是TTL电平,高电平+5V,低电平0V。不过通常是在某一个范围内为高,某一个范围内为低。例如以3.3V为界。有时输入与输出TTL的电平范围也不同。
232电平:计算机串口电平,为负逻辑电平。高电平-12V,低电平+12V。
USB:除去屏蔽层,有4根线,分别是VCC、GND和D+、D-两根信号线。5V是USB的电源电压,给USB device供电用的。信号线对于2.0, D+比D-大200mV时为1,D-比D+大200mV时为0,属差分信号,与TTL电平不兼容,信号传输时需要电平转换电路。
常见电平转换芯片
USB转TTL芯片:CH340、PL2303、CP2102、FT232等。
RS232转TTL芯片:MAX232、MAX3232、SP232等。
实物图
通常RS-232接口以9个引脚(DB-9)或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组RS-232接口,分别称为 COM1 和 COM2。
不过,现在个人计算机上大都转向USB接口。
单片机,最小系统
对51系列单片机来说,最小系统一般应该包括:电源电路、晶振电路(振荡电路)和复位电路。
电源电路:实现电平转换与单片机供电。
晶振电路:为单片机提供时钟。通常为晶振并联电路,电容一般为22P或33P。
复位电路:分为高电平复位或低电平复位。程序跑飞或死机情况下可考虑复位。
图中复位电路由电容串联电阻构成,并结合"电容电压不能突变"的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定。典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位。
GPIO与上下拉电阻
上拉电阻就是将不确定的信号通过一个电阻拉到高电平,同时此电阻起到一个限流的作用。下拉电阻就是下拉到低电平。OC门要输出高电平,外部必须加上拉电阻。
对于STC89C52来说,P0口作为IO使用时需要外加上拉电阻。而P1~P3口内部含有上拉电阻,称为准双向IO。
几个周期
(1)时钟周期: 是指单片机提供时钟脉冲信号的振荡源的周期,也称为节拍(用P表示)。
(2)状态周期: 每两个节拍称为一个状态(用S表示)。
(3)机器周期: 一个机器周期包含 6 个状态周期S1~S6, 也就是 12 个时钟周期。 在一个机器周期内, CPU可以完成一个独立的操作。
(4)指令周期: 它是指CPU完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。MCS - 51 系统中, 有单周期指令、双周期指令和四周期指令。
常用晶振
(1)11.0592MHz
标准的51单片机晶振是1.2M-12M,一般由于一个机器周期是12个时钟周期,所以先12M时,一个机器周期是1uS,好计算,而且速度相对是最高的。
11.0592M是因为在进行通信时,12M频率进行串行通信不容易实现标准的波特率,比如9600,4800,而11.0592M计算时正好可以得到,因此在有通信接口的单片机中,一般选11.0592M。
可见11.0592晶振在常用波特率下没有误差。
(2)32.768K
时钟晶振常用32.768K的晶振。原因如下:
系统如果采用外部晶振,以外部晶振为基础,有倍频或者分频获得其他的时钟频率。
2的15次方正好等于32768,因而很容易得到1S(1Hz)。