本帖最后由 风轻轻 于 2021-3-30 17:08 编辑
不好意思,问个很基础的问题,先谢谢了。
最近看一个读取时序图,如下:
这个图大致意思我理解,在中断触发后,先设置A0 位,然后把片选CS设置成低电平,然后把RD 设置成低电平,然后等一段时间(trdldv, data out valid from RD)就能从D0-D7读数据了。
但是我不理解那个“CS low to RD low” 最小要5纳秒对我的程序处理有啥影响?难道我必须在把CS设置成低电平后delay至少5ns才能去设置RD为低电平么?我就不能把CS和RD同时设置成低电平么?难道是他只检测电平的下降沿和上升沿,然后在CS拉低之后他需要一定的时间,比如5ns来初始化RD下降沿检测的电路,所以同时拉低CS和RD会导致芯片没法识别到RD下降沿?
而且我发现5ns,20ns这种速度延时还不那么简单耶,我STM32F103给的库函数最少都是以us为延时单位的,要延时那么一点点ns也不容易啊,STM32F103主主频才72MHz,一条指令就要13ns多一点,意思就是5ns延时我完全可以忽略哦,反正两条指令必然超过5ns了。那20ns延时我随便跑一两条空指令来满足延时?
|