打印
[STM32F0]

F0 spi 8位双向通信问题

[复制链接]
977|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
crazybee|  楼主 | 2015-7-11 16:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
F0 spi  8位双向通信问题。  看了资料,F0的SPI多了一个FIFO 真是头痛,移值F1到F0总是不能正常工作:

修改的 地方有  SPI1 CR2 DS = 7,, 8bit. FRXTH = 1,  8位,,, 这样是不是可以绕开FIFO呢,DEBUG发现
FRLVL[1:0]: 为2,,RXNE=1,奇怪,怎么会这样,,,按上面设置理论上是和F1对应上了,,,还是绕不开FIFO很头痛。。。

有用SPI 双向通8位通讯的, 指点一下,问题出在哪里???
沙发
mark0668| | 2015-7-11 16:08 | 只看该作者
你用库发送8位没问题,用寄存器的话他是发送16位的,要强制发送8位才行,看下库怎么处理就知了

使用特权

评论回复
板凳
crazybee|  楼主 | 2015-7-11 17:34 | 只看该作者
mark0668 发表于 2015-7-11 16:08
你用库发送8位没问题,用寄存器的话他是发送16位的,要强制发送8位才行,看下库怎么处理就知了 ...

谢了,改了一下,这个FRVL【1:0】 现在是为0了,发的同时只接收一个字节回来,,,,但是程序还是跑不正确,纠结中。。。

使用特权

评论回复
地板
mmuuss586| | 2015-7-11 19:02 | 只看该作者
先用库,先调好再说吧;

使用特权

评论回复
5
豆腐块| | 2015-7-11 21:24 | 只看该作者
F0的SPI多出来的FIFO,是什么

使用特权

评论回复
6
crazybee|  楼主 | 2015-7-11 22:16 | 只看该作者
本帖最后由 crazybee 于 2015-7-11 22:19 编辑

:Q:Q 上了贼船了,,,我想移植F1到F0不至于这么纠结。。。悔已晚。

示波器查了SO SI SCLK都有信号,读出来就是0X00...

使用特权

评论回复
7
zyingjie| | 2015-7-11 22:50 | 只看该作者
F0的SPI是不好搞,晚上去搜搜例子,我以前做的时候也是网上找的例子改改的

使用特权

评论回复
8
crazybee|  楼主 | 2015-7-11 23:01 | 只看该作者
zyingjie 发表于 2015-7-11 22:50
F0的SPI是不好搞,晚上去搜搜例子,我以前做的时候也是网上找的例子改改的 ...

:):(  ST的文档真是和MCHP差太多了,,,,就比如写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行,可恶的是RM里只字不提。。。没有看查LIB还真不懂。

使用特权

评论回复
9
zqjqq88| | 2015-7-12 10:51 | 只看该作者
crazybee 发表于 2015-7-11 23:01
ST的文档真是和MCHP差太多了,,,,就比如写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行, ...

手册有说道的呀~

使用特权

评论回复
10
冰河w| | 2015-7-12 13:21 | 只看该作者
找些例程先运行起来,再改

使用特权

评论回复
11
FireRiver9| | 2015-7-12 13:31 | 只看该作者
写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行
这个真是学习了

使用特权

评论回复
12
crazybee|  楼主 | 2015-7-12 21:19 | 只看该作者
不是很喜欢用LIB,不过新版本的LIB看了一下,果然写得进步相当大,很厉害。

使用特权

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

本版积分规则

149

主题

800

帖子

5

粉丝