anuo813 发表于 2019-7-25 17:59:03

Simuink中使用STM32-MAT工具箱构建CAN通信的收发问题

一、软件:matlab 2018b   STM32CubeMX 5.1.0    STM32-MAT/TARGET 5.1.0
      预期:构建simulink的CAN通信模型,在loopback模式(环回模式下)实现数据的自发自收。

二、问题:CAN通信的simulink模型是使用的STM32-MAT/TARGET的安装文件中(D:\MATLAB\STM32-MAT\STM32\STM32demos\Test\CAN\F429I-      DISC1\F4_CAN_LoopBackInterrupt)的例程,但是运行的过程中CAN_IT模块(中断模块)一直有报错。

图片中蓝色框中为“CAN_IT模块”,红色框中报错信息;报错信息译文如下为“函数调用发起程序'f4_can_loopbackinterrupt_1/can_it'可能不会调用ssenablesystemwithtid,因为它尚未配置为能够通过sssetexplicitfcsctrl进行此操作。”


这两张图是查到的资料,原文出处:http://max.book118.com/html/2016/0314/37591977.shtm

三、尝试过的解决办法
      1、一是想办法消除error,根据查到的资料,需要修改CAN_IT的S-函数,CAN_IT是一个用S-函数编写的用户自定义块,但是STM32-MAT安装文件里的S-函数源文件是以.p文件形式保存,.p文件是作保护代码用的,无法查看和编辑;
      2、二是尝试调整STM32cubemx的参数配置,查阅资料尝试各种配置编译CAN_IT还是有这个报错;
      3、尝试删除CAN_IT模块后,虽然无报错,但是仍然无法发送接收报文。
希望了解这方面的高手指导一下!万分感谢!
附件为simulink模型和STM32CubeMX的.ioc配置文件
工具包由于大于上传限制,下载链接:http://www.st.com/en/development-tools/stm32-mat-target.html






anuo813 发表于 2019-7-30 09:55:22

有哪位兄弟知道这个问题怎么解决吗?十分感谢!

butterflyspring 发表于 2019-8-12 16:05:29

对于驱动这边,STM32的相应软件库中有CAN的代码可以参考学习。simuink软件这边还请有经验的大神路过帮忙看看:)

xh15671640326 发表于 2020-7-9 12:23:13

楼主你好,这个STM32工具箱CAN功能算比较复杂,我也在研究这个,可以的话加个QQ2585137428沟通交流下
页: [1]
查看完整版本: Simuink中使用STM32-MAT工具箱构建CAN通信的收发问题