打印

关于上升沿读数据的问题

[复制链接]
2262|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zzjb|  楼主 | 2010-7-6 07:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
请问上升沿读数据,是要先从端口读了 在拉clk,还是先拉了clk再读端口数据?
下降沿写数据是拉低了时钟在写,是吗
A:
CLK = 0
nop();
data = DO;
clk = 1;

B :
CLK = 0;
nop()
CLK = 1;
data = DO;
应该是用A还是用B?
谢谢了!

相关帖子

沙发
msb| | 2010-7-6 10:00 | 只看该作者
读数据时,要在CLK沿变化之后读。如果是上升沿读数据,应在CLK拉高后再读。
写数据时,要在CLK沿变化之前写。
如果外设速度慢,MCU速度很快,还要在CLK和读写之间加适当的延时。

使用特权

评论回复
板凳
zc3909| | 2010-7-6 10:22 | 只看该作者
看数据手册的时序图,特别注意有的地方需要延时

使用特权

评论回复
地板
zzjb|  楼主 | 2010-7-6 15:36 | 只看该作者
谢谢!

使用特权

评论回复
5
zzjb|  楼主 | 2010-7-6 15:38 | 只看该作者
读数据时,要在CLK沿变化之后读。如果是上升沿读数据,应在CLK拉高后再读。写数据时,要在CLK沿变化之前写。如果外设速度慢,MCU速度很快,还要在CLK和读写之间加适当的延时。 ...msb 发表于 2010-7-6 10:00
那下降沿写数据 要写了之后在拉低clk吗,好像一直是拉底clk再写然后再延时的

使用特权

评论回复
6
yuyetufu| | 2010-7-6 18:54 | 只看该作者
一般来说 下降沿写,在下降沿之前就把数据放好,下降沿一出现,就要写入了,你要是来了下降沿在放数据,对方可能已经有收数据的动作了,要来不及的。
具体怎样,以数据手册为主

使用特权

评论回复
7
chunyang| | 2010-7-6 18:57 | 只看该作者
沿是用来锁存的,所以数据输入必须在沿之前,不论其方向是什么。读,当然要在锁存之后才能进行。

使用特权

评论回复
8
小李志| | 2010-7-6 20:00 | 只看该作者
正是因为7楼所说的,才有对建立时间和保持时间的要求 7# chunyang

使用特权

评论回复
9
zzjb|  楼主 | 2010-7-6 21:45 | 只看该作者
8# 小李志

七楼所说的,与建立时间和保持时间有什么联系呢,请指教,谢谢!

使用特权

评论回复
10
zzjb|  楼主 | 2010-7-6 21:51 | 只看该作者
8# 小李志

比如这个时序图中的建立时间和保持时间是在上升沿附近,但是数据是在下降沿改变的,这个有什么联系呢

3.jpg (47.19 KB )

3.jpg

4.jpg (85.64 KB )

4.jpg

使用特权

评论回复
11
yuyetufu| | 2010-7-7 20:51 | 只看该作者
楼上这图可以理解成在下降沿后改变数据,上升沿后锁定,读数据。

使用特权

评论回复
12
andy2003hu| | 2010-7-8 07:49 | 只看该作者
mark

使用特权

评论回复
13
zzjb|  楼主 | 2010-7-9 19:02 | 只看该作者
顶起来让更多的高手看看

使用特权

评论回复
14
chenyongsheng| | 2010-7-9 19:15 | 只看该作者
不太懂,也来帮你顶顶,求高手帮忙,谢谢。。。。。

使用特权

评论回复
15
lirunze| | 2010-7-11 19:07 | 只看该作者
有时序图,这肯定好办多了啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

13

帖子

1

粉丝