打印

求问如何给芯片编个SPI接口的驱动。。。

[复制链接]
1186|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
speCIAl017|  楼主 | 2013-5-9 09:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 speCIAl017 于 2013-5-16 12:53 编辑

刚接触python然后上面给了我个接FPGA的FT4232H MiniModule芯片,要求编个SPI接口的读写驱动
之前前辈做了点 但是不能正常工作。顺便说下FTDI的芯片下了他们自家的DLL文件后有SPI的一些简单的function的,所以设置频率和读写理论上是给参数就可以了(但是读写的参数很多,有些就不知道填什么了= =比如writecontrol, 似乎是enable/disable的参数,但是运行的时候就接受[0x9F]这样的hex数据)
现在的code基本就是configure,设置CLK频率,读,写这样
问题有:
1.每次写都超时,读的时候无论writecontrol填什么返回的都是很长的数据,在某个格式下是奇特的图案。。
用示波器量了后发现时序下沿的时候MOSI工作了。。。看资料好像应该是上沿MOSI,下沿的时候MISO吧。。有SPI function的手册里面好像并没有提及改时序的方法(或者我没理解好),小白问下有没有什么方法能改时序的,或者别的方法,总之让MOSI工作的时候正好是上沿。。。
虽然每次都超时但发现数据确实是被写到FPGA里去了 这样运行的程序会中断 但是至少工作了。。。如果单单读或写的话这样就没问题,要先写后读的话就要把MOSI的线先拔了 写完后再把MOSI的线接上然后读 挺麻烦目前没找到彻底解决的方法 还有上沿下沿的问题 根据那块芯片的protocol工作起来是对的
2.MISO读写都没有任何起伏 没记错的话好像一直是低电平(有点忘了明天再去看看) MOSI读写的时候都有信号进来 =口= 这个是怎么回事哦= = 顺带上面那个写的时候超时 如果把连FPGA的MISO线拔掉的话程序就告诉我写上去了(当然没有被写上去)。。。。
MOSI确实应该读写都有信号 MISO写的时候是没有起伏的 只有读的时候传数据部分才会用到(这边没仔细看设定的protocol蛋疼了好久自己讨苦吃
顺带和1一样把MISO的线拔掉其实是写上去了 只是测试的时候读写寄存器的数值设的不好
3.I/O电压应该3.3V但是用示波器测出来有6.6V。。。片选什么的都是大约在6.6V。。图纸有个pin是3.3V的输出另有个pin是连接其他pin的输入,是这样做没错。。。。吧?可是为什么大了一倍。。。
这个。。。。。后来发现时示波器的probe坏掉了。。。。。

相关帖子

沙发
dirtwillfly| | 2013-5-11 22:05 | 只看该作者
FT4232H厂家不是提供上位机的驱动吗?这个还需要自己写?

使用特权

评论回复
板凳
dirtwillfly| | 2013-5-11 22:10 | 只看该作者
没用过这个芯片,下位机SPI接口的读写驱动没找到。楼主可以和厂家或者供应商联系下,找他们要更多的资料。

使用特权

评论回复
地板
speCIAl017|  楼主 | 2013-5-16 12:58 | 只看该作者
dirtwillfly 发表于 2013-5-11 22:10
没用过这个芯片,下位机SPI接口的读写驱动没找到。楼主可以和厂家或者供应商联系下,找他们要更多的资料。 ...

谢谢 问题基本是没仔细看设定的SPI造成的
code其实差不多是把SPI.DLL里的函数调出来代入需要的参数吧

使用特权

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

本版积分规则

3

主题

5

帖子

0

粉丝