搜索
查看: 1331|回复: 2

[求助] SPI Transmit与Receive的值一样

[复制链接]

该用户从未签到

9

主题

14

帖子

0

蝴蝶豆

中级会员

最后登录
2021-3-29
发表于 2021-2-22 16:19:43 | 显示全部楼层 |阅读模式

使用SPI_Transmit发送指令来读取器件ID,但SPI_Receive收到的数据与SPI_Transmit一样,ID1[0]=0x81,ID1[1]=0x00,ID1[2]=0x00;
uint8_t cmd[3] = {0x81,0x00,0x00};
uint8_t ID1[3] = {0x00,0x00,0x00};
uint16_t DACX61416_ID = 0;
//0x81=23-16位,R/W读写位(1x)+DEVICEID Register 01h
SPI1_1_NSS_Enable();   
/* Send the read ID command */
HAL_SPI_Transmit(&hspi1, cmd, 3, DACx1416_Timeout_3);   
/* Reception of the data */
HAL_SPI_Receive(&hspi1,ID1, 3, DACx1416_Timeout_3);
SPI1_1_NSS_Disable();
printf("%x%x\n",ID1[1],ID1[2]);


SPI_2.PNG
SPI_1.PNG
回复

使用道具 举报

该用户从未签到

9

主题

14

帖子

0

蝴蝶豆

中级会员

最后登录
2021-3-29
 楼主| 发表于 2021-2-23 10:30:42 | 显示全部楼层
猜测数据可能是卡在移位寄存器中,不清楚是什么原因?
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

1306

帖子

929

蝴蝶豆

版主

最后登录
2021-3-31
发表于 2021-3-1 11:27:31 | 显示全部楼层
楼主的截图信息和传统的SPI描述不一样啊。 ST的HAL库有传统SPI例程,建议你跑一下,再比较看看。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-29 20:01 , Processed in 1.159848 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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