你好
我正在尝试在装有 S32DS 3.6.7 的 S32K144 LQFP100 上使用 RTD AUTOSAR (MCAL) 设置一个基本的 LED 闪烁示例。我在 Pins 工具(.mex 文件)中将 PTC11 配置为 GPIO 输出,并在外围设备/MCAL 视图中添加了 Dio 和端口组件。
但是,当我点击 "更新代码 "时,代码生成失败,并出现以下错误:
- [CODEGEN] 生成文件 'Port_Ci_Port_Ip_PBcfg.c' 失败
- TypeError:PinMode.match 不是函数
at GetPDO_IP (:187)
- [CODEGEN] 生成文件 'Port_PBcfg.c' 失败
在 GetPDO(port_utils.js:235)
我的设置:
-主板:S32K144 LQFP100
-S32DS 版本:3.6.7
-RTD/PlatformSDK_S32K1_S32M24
-引脚:PTC11 配置为 portC: port_11、输出、GPIO-添加了 MCAL 元器件:Dio + 端口(均在 AUTOSAR 模式下)
在端口 MCAL 配置中,PortPin_0 的 "PortPin Direction(端口引脚方向)"和 "PortPin Mode(端口引脚模式)"字段显示为灰色,并显示数值 (0) 而不是字符串。我怀疑代码生成器期望引脚模式的字符串值是 "ALT1",但收到的却是一个数字。
有人遇到过这个问题吗?PortPin 配置是否应该完全由 .mex 自动生成?还是需要手动配置?如能得到任何指导,将不胜感激。
此外,由于我是 RTD AUTOSAR 的新手,我想知道是否有从头开始学习堆栈的推荐资源 - 教程、示例项目、视频或学习 MCAL 模块(端口、Dio、Adc、Pwm、Can...)的任何建议顺序。我有裸机嵌入式 C 语言的经验,但对 AUTOSAR 却一无所知。
如能得到任何指导,将不胜感激。
谢谢!
我还在努力。我从驱动程序中删除了端口库,但仍然无法正常工作。
PortPinMode 设置为 0,而在你发给我的示例和代码中,它被设置为 GPIO。我不知道如何改变这种状况。
我对工作流程也有些困惑。据我所知
你好@antonio_esal
在打开你创建的示例程序时,我确实发现了一些错误。随函附上我创建的示例程序供你参考。
在您的项目中,无需同时在 MCAL 和 Drivers 中添加"Port" 模块。
你好@antonio_esal
您可以参考 RTD 驱动程序包中包含的示例代码开始学习。