数字电路又可称为逻辑电路,通过与(&),或(>=1),非(o),异或(=1),同或(=)等门电路来实现逻辑。
逻辑电路又可分为组合逻辑电路和时序逻辑电路。组合逻辑电路是指在某一时刻的输出状态仅仅取决于在该时刻的输入状态,而与电路过去的状态无关。
TTL和CMOS电路:TTL是晶体管输入晶体管输出逻辑的缩写,它用的电源为5V。CMOS电路是由PMOS管和NMOS管(源极一般接地)组合而成,电源电压范围较广,从1.2V-18V都可以。
CMOS的推挽输出:输出高电平时N管截止,P管导通;输出低电平时N管导通,P管截止。输出电阻小,因此驱动能力强。
CMOS门的漏极开路式:去掉P管,输出端可以直接接在一起实现线与功能。如果用CMOS管直接接在一起,那么当一个输出高电平,一个输出低电平时,P管和N管同时导通,电流很大,可能烧毁管子。单一的管子导通,只是沟道的导通,电流小,如果两个管子都导通,则形成电流回路,电流大。
输入输出高阻:在P1和N1管的漏极再加一个P2管和N2管,,当要配置成高阻时,使得P2和N2管都不导通,从而实现高阻状态。
静态电流:输入无状态反转(高低电平变换)情况下的电流。
动态电流:电路在逻辑状态切换过程中产生的功耗,包括瞬间导通功耗和负载电容充放电功耗两部分。门电路的上升边沿和下降边沿是不可避免的,因此在输入电压由高到低或由低变高的过程中到达Vt附近时,两管同时导通产生尖峰电流。该损耗取决于输入波形的好坏(CMOS工艺),电源电压的大小和输入信号的重复频率。电路的负载电容的充放电也是很大的一部分。
ESD保护:Electro-Staticdischarge, 静电放电。
输入输出缓冲器:是缓冲器,不是缓存器,就是一个CMOS门电路。输入缓冲器的作用主要是1,TTL/CMOS电平转换接口;2,过滤外部输入信号噪声。输出缓冲器的作用是增加驱动能力。
配成输入模式不一定比输出模式更省电:输入模式时输入缓冲器会打开,而输出模式时输出缓冲器会打开。
TESEO上GPIO数据寄存器读写的注意点:
配置成普通GPIO时,如果配置成输出口,那么写数据寄存器会直接输出该电平,读数据寄存器实际就是读锁存器中最后一次被写入的值。如果被配置成输入口,并且上下拉使能的话,那么写数据寄存器就是配置上下拉电阻,而读数据寄存器就是读输入引脚的缓冲器,返回的是该引脚的当前电平状况。有些平台会有专门的状态寄存器,无论当前引脚被配置成输入还是输出,读该专门的状态寄存器都返回该引脚的当前电平状况。
引脚的BOOT state是指在上电重启或硬重启时引脚的状态,reset release之后的状态为reset state,reset state和state有可能不一样。TESEO的UART0_TX为boot1,该引脚的信号在上电重启或硬重启时会被锁存,以备reset release时给default register map用。
IO的电源电压配置:IO引脚归属于不同IOring,不同的IO ring可以被输入不同的电压。CPU在判决IO的逻辑电平时会和IO ring的电平(乘以高低电平的系数)作比较。
数字电路中的摆幅:输入摆幅和输出摆幅。输入摆幅指的是最低输入高电平和最高输入低电平的差值,输出摆幅指的是最低输出高电平和最高输出低电平之间的差值,TTL的摆幅偏小。
在时序逻辑电路里,如果输入的时钟停止,那么整个电路的功耗很低,原因是时序逻辑电路里的很多小单元的输出是由时钟驱动的,时钟停止,基本就是高阻态。如果将整个模块的电断了,那么就会更加省电。
串口通信电路,如果将其关掉,一般RX线上会是低电平,如果检测到高电平,就会产生中断,这个时候就可以重启开启串口,但是第一个字节由于不在串口寄存器里面,因此,数据会丢失。