OpenEdv-开源电子网

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

三线SPI怎么写数据发送函数?

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-9-26
在线时间
8 小时
发表于 2020-2-20 16:40:13 | 显示全部楼层 |阅读模式
5金钱
问题描述:使用h743的SPI控制模数转换器AD5545,但是数据好像发不出去ad5545的特点1.spi三线串行数据接口,包括串行数据输入(SDI),时钟(CLK)和芯片选(CS)(没有返回数据的线)
2.接受2位地址+16位数据的共18位数据格式,且只接受片选CS拉高前的后18位,其余忽略.
3.根据时序图的clk线来看,时钟的空闲状态是低电平,且在上升沿进行数据发送
我自己总结的时序控制思路是:
首先拉低片选,然后发送三个8位数据,数据在时钟上升沿控制下送入移位寄存器,之后拉高片选,将数据送入输入寄存器,最后拉低拉高LDAC更新输出
据此自己写了一小段代码测试
spi的初始化参考的 实验36 NRF24L01无线通信实验 里面的设置
是我的数据发送函数选的不对吗,还是其他的,不知道问题出在哪(初学者,见谅)



代码.jpg
时序图.jpg
引脚.jpg
spi.jpg
spi初始化.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-2-20 23:20:39 | 显示全部楼层
测量下IO口是否有波形?一定要有CLK输出.
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-9-26
在线时间
8 小时
 楼主| 发表于 2020-2-21 17:50:21 | 显示全部楼层
本帖最后由 身心俱皮 于 2020-2-21 17:51 编辑
正点原子 发表于 2020-2-20 23:20
测量下IO口是否有波形?一定要有CLK输出.

现在待开学在家,没有示波器
请问我的软件方面是否有问题呢关于spi配置和数据发送函数这方面
引脚我检查了好像没什么问题,会不会是我的spi初始化参数设置的不对,例程的初始化代码我修改了空闲电平,跳变沿和单线通信,其他的我不懂就没改动
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-2-21 23:14:41 | 显示全部楼层
身心俱皮 发表于 2020-2-21 17:50
现在待开学在家,没有示波器
请问我的软件方面是否有问题呢关于spi配置和数据发送函数这方面
引脚我 ...

配置可以参考我们开发板的
参考4线的配置,只是你的MOSI没有用到,但是你要正确接收,还是必须先写DR寄存器,然后再读DR。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-22 17:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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