|
问题: 关于STM32 CAN通信 发送函数 HAL_CAN_AddTxMessage()的最后一个参数填0和定义一个变量取地址的问题,如果直接传0,我实验发现 STM32F103C8T6 会出现卡死的情况,进入了硬件中断,而对于STM32F429IGT6则不会卡死,能够正常运行;如果定义一个uint32_t类型的变量,取变量的地址传参进去,两个片子都能够正常运行,目前搞不懂什么原因,对于直接传0进去,我知道这是不规范的,相当于传入了一个空指针进去,而跳到函数内部发现,HAL_CAN_AddTxMessage()函数还对此指针进行了解引用,这肯定是非法,但是同样的情况对于F429IGT6却能正常运行,这令我非常不解。望请大佬解答! 下面是我自己写的CAN2发送函数:
源码中HAL_CAN_AddTxMessage()函数对pTxMailbox进行了解引用
|
stm32 f411偶发性无法启动大神求助
关于最近学习C语言回调和钩子函数的想法,以及对HAL库回调函数的困惑
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F407VET6,使用cubeIDE下载跑不起来
FLASH擦除轮询等待时CPU真的会轮询吗
STM32F417 RTC读取亚秒寄存器
HAL_I2C_Mem_Read 一直返回 BUSY
STM32F103C8T6 上电后无法通过串口发出数据的问题?
STM32F405ZGT6 批次22+ 问下这颗料,60度烘烤12小时后,出现鼓包,是怎么回事? 原厂有标准的烘烤温度范围 跟时长范围吗?
KEILMDK每次都要手动选Reset and Run吗 不然下载到板子上得重启电源才行 求解答
微信公众号
手机版
空指针的指向是不确定的,出异常属正常回应,没出异常问题也不代表可以这么用。
具体到你现在的应用,即使没有触发芯片的硬错,但也无法得到发送邮箱的编号。
个人认为不必过于纠结,就像闯红灯被罚正常,偶尔侥幸没被罚不代表合法,更不代表下次不被罚。
好的,感谢大佬解惑