用Keil+CMSIS DAP调试NXP S32系列单片机时遇到的问题

(1)RDDI-DAP error

我在Keil上用的是CMSIS-DAP调试器,SWD接口,最开始总是连不上,显示RDDI-DAP error,调了速率、Reset方式等都不好用,最终发现把连接调试器和单片机板子的杜邦线都掰开就好了。。杜邦线并在一起的时候容易互相干扰,产生通讯错误,分成一根一根的之后干扰会小很多。

另外调试通讯速率要调低一点,10M有时就会有问题,1M/2M通常没问题。
在这里插入图片描述

(2)调试引脚错误时连接Debugger的方法

我在一次烧程序时,忘了把RESET引脚的用途设置成RESET,而是设置成了输出PORT,导致拉低RESET引脚后单片机不能复位,这样SWD或JTAG调试器也是没法连接的,因为调试器在连接的时候需要通过RESET引脚对单片机进行复位。

而S32系列是不能通过外部引脚设置启动方式的,只能从内部Flash启动(这一点在我刚刚知道的时候有些惊讶,不知道为何设计成这样),所以也就不能进入UART BootLoader等模式重新给单片机烧程序。

调试器连不上,也没有其他程序烧写方法,我一度觉得这块板子被我搞废了。。但仔细查了一下手册中的启动流程,S32在启动的时候会先有一个FastBoot过程,在内部Flash等初始化完成后,会检查RESET引脚,如果不为低,就会启动从Flash中运行程序,如果为低则会保持在FastBoot中,不执行用户程序。所以试了下先把RESET脚接地,再给单片机上电,果然单片机没有运行用户程序,这时保持RESET拉低,连接调试器,惊喜的发现调试器能连上了。连好调试器后,释放RESET引脚,再进行调试和程序刷写就都可以了。

同理,有的时候程序中调试相关引脚设置错误,也会导致调试器无法连接,程序无法烧写,可以采用同样的方法连接调试器。

有的时候释放了RESET脚之后,烧写程序的时候提示通讯失败,可以修改下面的选项,试试这几个选项哪个好用,一般都可解决:
在这里插入图片描述

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老孟的孟不是很老的孟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值