WCH沁恒单片机
直播中

飞毛腿452

8年用户 906经验值
擅长:电源/新能源
私信 关注
[问答]

ch375b并行方式下发生跳过数据的情况,并且有一定概率发生,不能稳定复现是为什么?

并行模式下,有这个怪异现象:
读取数据时发生跳过数据的情况,并且有一定概率发生,不能稳定复现
举例:表现是读取容量时(53H DISK_SIZE) 发送8次read脉冲,读到的扇区大小不稳定,
有时是0x00000200(512),有时是0x0x00020000(131072),
感觉是有一个字节被跳过了,读取u盘数据时也是同样的现象,512个字节有多个字节被跳过了,当扇区中0x00数据多时情况严重,无0x00时几乎不发生
怀疑是read信号反射造成多次读取,增加了电阻,也没有解决,并且由于是调试期间,速率很低,rd,wr信号都是毫秒级别的

最终的解决方式也很怪异:

为了显示数据线上的信号,接了led,用于显示高低电平:
3v3-电阻-led-数据线-led-电阻-地线

再次调试时发现,接了led后,故障就没有发生过,不接,再次发生,另外,读取时,单片机侧数据线是高阻态,没有上下拉电阻

求教真正的故障原因
  

回帖(3)

李高歌

2022-7-13 10:31:55
您好,读取一个32位的数据应该是只需要发送4次read吧,为什么会发送8次呢?
举报

朱瑞平

2022-7-13 10:31:59
产生这样的现象可能是信号质量太差导致的,可以用示波器抓一下信号,看跟手册时序是否一致
  
举报

尚文清

2022-7-13 10:32:02
53H DISK_SIZE
读取磁盘容量命令返回8个字节啊,前4个字节是磁盘容量,后4字节是扇区大小
举报

更多回帖

发帖
×
20
完善资料,
赚取积分