找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1173|回复: 3
打印 上一主题 下一主题
收起左侧

关于单片机SPI通信协议理解的一点问题

[复制链接]
跳转到指定楼层
楼主
请问在做ET2046的SPI的协议时,芯片资料如图 。上升沿读取数据,下降沿发送数据。
但为什么看示例时,

时序反过来了呢,变成上升沿发送数据,下降沿读取数据。拜托大佬解答一下!感激不尽
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:592807 发表于 2020-5-13 11:41 | 只看该作者
看来你对数据的入和出有误解啊,数据输入和输出是针对外设而言的不是针对单片机的.

Read函数是单片机从ET读取数据。也就是说ET发送数据单片机接收数据,对ET而言是数据移出。
Write函数是单片机向ET写入数据或者指令,也就是单片机发送数据ET接收数据,对ET而言是数据输入。

215.png (62.87 KB, 下载次数: 65)

215.png

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:511159 发表于 2020-5-13 12:32 | 只看该作者
黄youhui 发表于 2020-5-13 11:41
看来你对数据的入和出有误解啊,数据输入和输出是针对外设而言的不是针对单片机的.

Read函数是单片机从E ...

嗯嗯,首先谢谢您的回答。但是比如这个READ函数,确实是针对单片机的读取函数,那么它不应该是在上升沿的时候 读取来自2046下降沿时发出的数据吗?  这里的这个下降沿是对于2046的吗?
回复

使用道具 举报

地板
ID:592807 发表于 2020-5-13 16:03 | 只看该作者
的双丰收 发表于 2020-5-13 12:32
嗯嗯,首先谢谢您的回答。但是比如这个READ函数,确实是针对单片机的读取函数,那么它不应该是在上升沿的 ...

SPI一共就3根线CLK MOSI  MISO也就是时钟线  输出线和输入线


你外设的DCLK  DOUT  DIN分别链接SPI的三根线。DLCK是外设和单片机公用时钟线。
比如你的外设发送数据0x80也就是10000000;

当你的CLK引脚电平从1变为0的时候,外设ET的DOUT引脚电平(此之前电平未知)变为1且稳定,单片机通过读取引脚电平获得数据的首位也就是1,
当你的CLK电平再次从1变为0的时候,外设ET的DOUT引脚电平(此之前电为1)    变为0且稳定,单片机通过读取引脚电平获得数据的2位也就是0
当你的CLK电平再次从1变为0的时候,外设ET的DOUT引脚电平(此之前电为0)    变为0且稳定,单片机通过读取引脚电平获得数据的3位也就是0
以此类推。

读取数据和发送数据在电平变化的过程中发生的,而是在电平稳定时法生的,上升沿和下降沿只是通过电平变化提示单片机或者外设,该发送下一位数据了。
希望你看的懂。




41.jpg (2.53 MB, 下载次数: 70)

41.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表