内容发布更新时间 : 2024/11/19 7:49:50星期一 下面是文章的全部内容请认真阅读。
首先来说一下操作时序时间,操作时序时间是启动该读写功能必需得保持电平的时间长度,不过对单片机操作没什么影响,因为单片机的指令周期周期大约为1us(例如晶振为12M时,机器周期为12X1/12M=1us),而1602时序里都是ns级,所以只对高速类控制芯片如FPGA/CPLD等有影响。
时序图读写方法:从上到下,从左到右,高电平在上,低电平在下,高阻态在中间。双线表示可能高也可能低,视数据而定。交叉线表示状态的高低变化点,可以是高变低,也可以是低变高,也可以不变。
大家看这个图:图上第一条竖线画面在了RS和R/W上,也就是说第一个时序从这里开始,即先将RS设为高或低(高表示数据读或写,低表示指令读或写)而R/W的高低带表是读还是写,上一张图是读时序图,所时是低的.
第二步就是给数据,在数据总线上给出数据,这与第一步相隔时间没有要求,实际上先后也没有要求的.
第三步是将使用信号E置高,这里有三个时序要求,第一个是tsp2,这个是这个看表,可以看到叫做”写操作的数据建立时间”,时间最小是40ns,意思就是说第二步的操作,数据信号在总线上生效之后至少要等40ns,才可以给第三步是使能信号E.
第三步的要求不仅如此,还有一个tsp1,同理,这里是讲,R/W信号至少要生效30ns的时间后才能给使能信号.
另外,使能信号上升时间tR要小于25ns.
限制条件很多,但是如果你用的是51单片机的话,你就不用想这个问题,因为它一条指令就得用1us的时间.
第四步,使能信号要保持Tpw=150ns以上,51单片机不用考虑,其他高速的MCU什么的就要做延时了.
第五步,使用信号下降,下降时间Tf还是小于25ns.
第六步,数据总线上的数据要保持Thd2的时间才能变化,RS,R/W则要保持Thd1的时间,然后就可以了.
读时序与写时序是相同的,只是R/W中间是高电平而己.