完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们正在尝试使用 LPC55S36 在目标模式下实现读取操作。为此,我们在控制器模式下使用另一个 LPC55S36,它初始化总线(处理 DAA),向目标写入 6 个字节的数组,然后从中读取 6 个字节。测试正确的目标读取操作的想法是查看(使用逻辑 Saleae 嗅探器)写入(由控制器读取)的数据与先前读取(由控制器写入)的数据相同,使用共享缓冲区处理来自两者的数据交易。
到目前为止,我们在使用不同的 CCC(如 RSTDAA、SETDASA、ENTDAA、SETMRL、GETMRL)方面没有遇到任何问题。它们返回我们之前在各自寄存器中初始化期间设置的数据(如果是这样的话),我们可以使用嗅探器看到正确的操作。 对于写入操作(控制器读取),我们也没有发现任何问题。如果我们在目标初始化期间在代码中指定一个数组,然后使用 I3C_SINTMASKED_TXSEND_MASK 中断以及 SWDATAB 和 SWDATABE 寄存器将其写入总线,我们可以使用嗅探器在总线上看到正确的字节。 现在,目标读取操作的问题是,虽然我们在嗅探器中看到控制器写入操作(使用正确的数据正确启动和完成),但数据似乎没有正确保存在数组上。当控制器在下一次操作中从目标读取数据时,返回的是初始化时初始设置的数据,而不是控制器实际写入的数据。 考虑到写入操作(控制器读取)单独工作正常,我们得出结论是读取操作(控制器写入)有问题。 我没有在数据表中看到太多关于在目标模式操作期间触发的中断的解释,就像在控制器模式下工作时一样。我以 SDK 示例作为参考,试图复制他们在那里所做的初始化。我的主要区别是我的驱动程序回调检查 SINTMASKED 寄存器而不是 SSTATUS 寄存器,但我认为这没有任何区别。I3C_SINTMASKED_MATCHED_MASK 是否在读取或写入事务期间触发,有没有办法在实际事务之前知道它是什么(读取或写入)? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1907个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36358 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4395 浏览 0 评论
6050 浏览 1 评论
6763 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4212 浏览 0 评论
619浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
614浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
606浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
694浏览 2评论
798浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:39 , Processed in 1.137827 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号