在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 12890|回复: 12

[求助] 求助,SPI从机verilog编码

[复制链接]
发表于 2013-9-30 09:26:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
SPI从机,通过与MCU的交互来完成数据交流。时序图是这个样子,好像在网上没有找到从机可以自己鉴别读/写功能的。
本人初学verilog,认识尚浅,求各位大神指导。
最好能有代码参考参考
eetop_cn_spi1.jpg
eetop_cn_spi2.jpg
发表于 2013-9-30 09:45:26 | 显示全部楼层
从机可以自己写个协议,规定第几次数据表示地址
发表于 2013-9-30 17:01:22 | 显示全部楼层
如果主从设备都是你自己设计的 你就可以自己约定数据的组合方式 比如 读写+地址+数据 或者 地址+读写+数据等, 如果你的从设备适应人家的主设备 你就要去查看主设备的约定。
 楼主| 发表于 2013-10-8 09:13:59 | 显示全部楼层
回复 3# 教父


    是我的从设备适应人家的主设备。主设备主要就提供给我找个时序图,通过mosi口发给我16个字节的数据,前八位是地址含一个读写状态位,后八位是数据。主要是从设备可以是被多个寄存器的地址,看了很多现有的从设备的代码,没有相关的识别地址和读写状态的。这个在从设备中应该怎么实现?
发表于 2013-10-9 11:08:50 | 显示全部楼层
你就按照人家提供的时序图,在CS为低的时候开始做0到15的计数采样,对照时序图从新排列你的数据,区分地址和读写使能,还有就是你要弄明白的人家的数据发送是怎么发送的,16比特数据发送有可能是从最高位开始发送 也可能是从最低位开始发送的,然后你去从新组合你的数据。比如计数器初始化值为十进制15,在计数器为6的时候的采样值就是对方的读写使能标识位。SPI相对比较简单, 每个公司提供的又不一样, 所以就没有固定的像你说的地址识别之类的了 。这样说了 也许你就明白了,
发表于 2013-10-10 16:40:58 | 显示全部楼层
认真看看时序图,在start 后面,是5bit 的 address, 后面一位 r/w
就是所谓的 读写 啊
你只要 读这位的 值就 ok 。
发表于 2015-4-15 10:12:46 | 显示全部楼层
请问具体的设计流程是怎么样的呢
发表于 2015-5-7 21:03:58 | 显示全部楼层
FPGA作为从机与STM32进行SPI协议通信---Verilog实现
http://blog.chinaaet.com/detail/35590
发表于 2015-5-23 12:14:41 | 显示全部楼层
回复 8# hhpingyear


spi从机是否一定要有外部快速时钟clk来检测主机发过来的同步时钟sclk的上升沿或下降沿吗,在写从机代码时是否可以直接用posedge sclk or negedge sclk 就可以了?这个存在疑问,谢谢解答
发表于 2016-2-25 14:42:33 | 显示全部楼层
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 12:07 , Processed in 0.048371 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表