完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用条件:CPOL:CPHA都 = 1
1、在SPI从机当中有一个CSERR位,表示是否有不正常的CS发生! 但是若SPI多移一位,不会触发CSERR变化, (如下拉图,前面不是多了5个位,多一个位,就不会触发,多两个位会触发。) 2、若在SPI接收过程中,断点程序,也会导致CSERR不正常响应,0XBB的数据会接收到0X07 后面数据一直都不对, 这个时候,若在接收中断里断点一次后,上位机再次发送数据会触发CSERR变化。 当SPI出现多移位的状况后,后续的数据全部会出现移位的状况,导致后续数据不正常,只有复位SPI后才能正常接收。而CSERR不正常变化导致了不能自动触发复位时序。 BCRST 置位后也不能自动复位SPI接收时序。 请问这个是芯片BUG吗?要怎么规避这个问题? |
|
相关推荐
1个回答
|
|
在ADUCM360中,SPI从机有一个CSERR位,用于表示是否发生了不正常的CS(片选信号)的变化。当CSERR位为1时,表示发生了不正常的CS变化,可能是由于SPI多移位或者在SPI接收过程中发生中断导致。根据给出的条件,当SPI从机多移一位时,不会触发CSERR的变化。但是,如果多移两个位,就会触发CSERR的变化。
在SPI接收过程中,如果在断点程序的情况下,可能会导致CSERR不正常响应。例如,当接收到0x07而不是0xBB的数据时,后面的数据都会出错。但是,如果在接收中断中设置断点,然后再次发送数据给上位机,就会触发CSERR的变化。 当SPI发生多移位的情况后,后续的数据可能会乱序或者出错。这可能是由于时钟同步问题或者数据传输错误导致的。你可以检查SPI的时钟设置、数据传输格式等,以确保数据的正确传输。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
205 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1253 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
848 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
853 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1073 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12013 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 06:56 , Processed in 0.669904 second(s), Total 73, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号