OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7673|回复: 8

SPI通信为什么DR寄存器写不进去值,一直是0

[复制链接]

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-2-22
在线时间
44 小时
发表于 2016-11-17 19:27:22 | 显示全部楼层 |阅读模式
1金钱
SPI通信为什么DR寄存器写不进去值,一直是0
  SPIx->DR = Data;

串口打印Data有输出,打印DR寄存器就全是0.
这一般是什么问题呢?

最佳答案

查看完整内容[请看2#楼]

你写入DR寄存器的数据,基本上就秒传出去了,所以你看起来是0很正常哦你要看是否正常,看MOSI数据线就清楚了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2016-11-17 19:27:23 | 显示全部楼层
你写入DR寄存器的数据,基本上就秒传出去了,所以你看起来是0很正常哦你要看是否正常,看MOSI数据线就清楚了

回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1576
金钱
1576
注册时间
2015-8-9
在线时间
625 小时
发表于 2016-11-17 19:36:14 | 显示全部楼层
SPI初始化问题,或者是硬件接线问题
回复

使用道具 举报

50

主题

1805

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6662
金钱
6662
注册时间
2016-5-29
在线时间
910 小时
发表于 2016-11-17 20:46:31 | 显示全部楼层
DR是有两个物理寄存器,读取是一个,写是另一个。共用一个名字。你当然会读到0了。很多的单片机UART,SPI都有这个特性。
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-2-22
在线时间
44 小时
 楼主| 发表于 2016-12-3 19:00:26 | 显示全部楼层
问题解决了,就是用硬件SPI不行,用模拟的没一点问题,强烈建议大家以后多用模拟SPI
回复

使用道具 举报

48

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2016-11-21
在线时间
64 小时
发表于 2016-12-27 16:11:38 | 显示全部楼层
模拟就是不用spi模块,自己用io口模拟吗?
回复

使用道具 举报

48

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2016-11-21
在线时间
64 小时
发表于 2016-12-27 16:13:42 | 显示全部楼层
DR数据传出去就会自动清零吗?那我在那边设置了一个断点,还是显示0啊
回复

使用道具 举报

5

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-2-22
在线时间
44 小时
 楼主| 发表于 2016-12-30 10:36:11 | 显示全部楼层
帅气迷人彬 发表于 2016-12-27 16:11
模拟就是不用spi模块,自己用io口模拟吗?

是的,手动拉高拉低来模拟时钟
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2019-5-28
在线时间
8 小时
发表于 2019-8-4 19:49:09 | 显示全部楼层
没有擦除页操作
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-15 20:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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