安
发表于 2018-11-15 08:41:16
楼主,我这里上不了QQ之类的。你先按我的说,把KEIL5的JLINK驱动降到KEIL4的测试一下。
西奥伟
发表于 2018-11-15 11:16:56
已经找到最终的问题了,是由于代码的原因,又是指针的原因,uint8_t* SendBufferPtr,SendBufferPtr = (AL_BYTE*)reqDataPtr - (REQUEST_PRIFIX_SIZE + cmdLength);这里reqDataPtr是我传参进来的数据,
REQUEST_PRIFIX_SIZE是报文前缀长度5,cmdLength为1;这里相当于是做了指针地址的偏移;看代码感觉是没有错误的,但是,指针有可能在reqDataPtr的地址,向前偏移6个字节的过程中,指向到非法内存当中,因此,每次运行的LR寄存器的值都会出现异常。最后,还是需要记住,定义指针先分配了内存之后,再去做合理的指针偏移操作。(在此感谢我的大香蕉哥,为我远程调试bug)