[STM32F0] F0 spi 8位双向通信问题

[复制链接]
1302|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 | 显示全部楼层
先用库,先调好再说吧;
豆腐块 发表于 2015-7-11 21:24 | 显示全部楼层
F0的SPI多出来的FIFO,是什么
 楼主| crazybee 发表于 2015-7-11 22:16 | 显示全部楼层
本帖最后由 crazybee 于 2015-7-11 22:19 编辑

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

示波器查了SO SI SCLK都有信号,读出来就是0X00...
zyingjie 发表于 2015-7-11 22:50 来自手机 | 显示全部楼层
F0的SPI是不好搞,晚上去搜搜例子,我以前做的时候也是网上找的例子改改的
 楼主| crazybee 发表于 2015-7-11 23:01 | 显示全部楼层
zyingjie 发表于 2015-7-11 22:50
F0的SPI是不好搞,晚上去搜搜例子,我以前做的时候也是网上找的例子改改的 ...

:):(  ST的文档真是和MCHP差太多了,,,,就比如写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行,可恶的是RM里只字不提。。。没有看查LIB还真不懂。
zqjqq88 发表于 2015-7-12 10:51 | 显示全部楼层
crazybee 发表于 2015-7-11 23:01
ST的文档真是和MCHP差太多了,,,,就比如写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行, ...

手册有说道的呀~
冰河w 发表于 2015-7-12 13:21 | 显示全部楼层
找些例程先运行起来,再改
FireRiver9 发表于 2015-7-12 13:31 | 显示全部楼层
写SPI DR,明明有个DS设置成8位,给你要强制只写8位才行
这个真是学习了
 楼主| crazybee 发表于 2015-7-12 21:19 | 显示全部楼层
不是很喜欢用LIB,不过新版本的LIB看了一下,果然写得进步相当大,很厉害。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

149

主题

800

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部