【S32K144】MCAL基础工程搭建

本文详细介绍了如何在S32DS中创建并集成MCALApplicationProject,包括工程配置、MCAL模块导入、静态与动态代码集成,以及主函数中的LED闪烁示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、在S32DS创建Application Project

二、MCAL工程

三、基于MCAL的集成


        以下示例基于S32K144EVB开发板进行。

一、在S32DS创建Application Project

(1)新建工程Application Project

(2)工程配置

(3)一路选择Next以及Finish完成工程创建,新建工程是可以正常编译成功的

二、MCAL工程

NXP的MCAL安装这里就不赘述了,在MCAL安装的路径下查找以下路径:.\eclipse\plugins

该路径下的各个文件夹包含各个模块的静态代码以及示例工程,以下以DIO模块为例:

以下讲解主要是将MCAL集成到S32DS工程中,这里直接就不单独新建和配置MCAL工程,直接使用MCAL安装后的示例工程:

打开EB工具,导入对应MCAL工程,选择生成配置源代码文件生成:

以下为MCAL配置工程生成的源文件,在MCAL工程的generate目录下:

三、基于MCAL的集成

(1)以下需要将MCAL的静态代码以及MCLA配置工程生成动态代码集成到S32DS工程中:

(2)由于S32DS新建的工程部分文件与MCAL源代码重复,需要删除以下文件:

include目录下的头文件:debassert.h、S32K144.h

(3)添加全局宏定义

(4)mian.c编辑:完成一个Led闪烁操作

#include "Mcu.h"
#include "Port.h"
#include "Dio.h"


void TestDelay(uint32 delay);
void TestDelay(uint32 delay)
{
   static volatile uint32 DelayTimer = 0;
   while(DelayTimer<delay)
   {
       DelayTimer++;
   }
   DelayTimer=0;
}


int main(void)
{
	 uint8 count = 0U;

	    /* Initialize the Mcu driver */
	    Mcu_Init(&Mcu_Config_VS_0);

	    Mcu_InitClock(McuClockSettingConfig_0);
	    while ( MCU_PLL_LOCKED != Mcu_GetPllStatus() )
	    {
	        /* Busy wait until the System PLL is locked */
	    }

	    Mcu_DistributePllClock();
	    Mcu_SetMode(McuModeSettingConf_0);

	    /* Initialize all pins using the Port driver */
	    Port_Init(NULL_PTR);

	    while (count++ < 10)
	    {
	        /* Get input level of channels */
	        Dio_WriteChannel(DioConf_DioChannel_LED, STD_HIGH);
	        TestDelay(2000000);

	        Dio_WriteChannel(DioConf_DioChannel_LED, STD_LOW);
	        TestDelay(2000000);

	    }
    return 0;
}

(5)编译代码,结果如下:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

反熵引擎

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

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

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

打赏作者

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

抵扣说明:

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

余额充值