完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在尝试读取绝对旋转编码器 ( AMT22B-V ) 的位置。我将它连接到 Nucleo G474RE 板上。在STM32CubeIDE项目的main.h文件中,我有如下声明:
#define BUFFERSIZE (COUNTOF(aTxBuffer) - 1) 在 main.c 文件中,我有以下代码: uint8_t aTxBuffer[] = {0x00, 0x00}; uint8_t aRxBuffer[BUFFERSIZE]; HAL_SPI_TransmitReceive(&hspi1, (uint8_t *)aTxBuffer, (uint8_t *)aRxBuffer, BUFFERSIZE, 5000); 我正在 MOSI 上传输 0x00 0x00 读取命令,并希望在 MISO 上接收到描述编码器位置的 2 个字节。然而,当我用示波器的逻辑分析仪功能探测线路时,我发现当我转动编码器时,只有一个字节在变化;另一个没有改变。见下图。另外,我将 SPI 数据大小设置为 16 位。我感觉这个问题与 BUFFERSIZE 参数有关。任何帮助深表感谢。 |
|
相关推荐
1个回答
|
|
查看数据表中的时序图。两个字节之间需要 2.5 µs 的延迟。
发送一个字节,在接收到第一个字节后等待 2.5 µs,然后发送第二个字节,在它们之间不增加 CS#。 还要注意其余的时序参数。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2635 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3610 浏览 6 评论
5988 浏览 21 评论
939浏览 4评论
1316浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
584浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1303浏览 3评论
1359浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 19:48 , Processed in 1.080946 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号