S32K148_ProcessorExpert之Blink

流程

本文先建立一个新的空工程, 然后使用ProcessorExpert配置生成初始化代码, 最后拖拽函数, 填写参数, 补全代码, 点灯.

先来看一下S32K148EVB板上LED的原理图:

在这里插入图片描述
在这里插入图片描述

新建工程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ProcessorExpert配置

在这里插入图片描述
如上图, 重命名PTE21/22/23为 LED_RED, LED_GREEN, LED_BLUE, 并设置LED_RED初始电平为高(亮).

在这里插入图片描述
点击生成代码:

在这里插入图片描述

拖动补全代码

在这里插入图片描述

GPIO函数

时钟那部分我们先不管, 看一下引脚函数的定义:

/*FUNCTION**********************************************************************
 *
 * Function Name : PINS_DRV_SetPins
 * Description   : This function configures output pins listed in parameter pins (bits that are
 * '1') to have a value of 'set' (HIGH). Pins corresponding to '0' will be
 * unaffected.
 *
 * Implements    : PINS_DRV_SetPins_Activity
 *END**************************************************************************/
void PINS_DRV_SetPins(GPIO_Type * const base,
                      pins_channel_type_t pins)
{
    PINS_GPIO_SetPins(base, pins);
}


/*FUNCTION**********************************************************************
 *
 * Function Name : PINS_DRV_ClearPins
 * Description   : This function configures output pins listed in parameter pins (bits that are
 * '1') to have a 'cleared' value (LOW). Pins corresponding to '0' will be
 * unaffected.
 *
 * Implements    : PINS_DRV_ClearPins_Activity
 *END**************************************************************************/
void PINS_DRV_ClearPins(GPIO_Type * const base,
                        pins_channel_type_t pins)
{
    PINS_GPIO_ClearPins(base, pins);
}


/*FUNCTION**********************************************************************
 *
 * Function Name : PINS_DRV_TogglePins
 * Description   : This function toggles output pins listed in parameter pins (bits that are
 * '1'). Pins corresponding to '0' will be unaffected.
 *
 * Implements    : PINS_DRV_TogglePins_Activity
 *END**************************************************************************/
void PINS_DRV_TogglePins(GPIO_Type * const base,
                         pins_channel_type_t pins)
{
    PINS_GPIO_TogglePins(base, pins);
}

相应的操作就简单了:

PINS_DRV_SetPins(LED_RED_PORT, 1 << LED_RED_PIN);		//红灯亮
PINS_DRV_ClearPins(LED_GREEN_PORT, 1 << LED_GREEN_PIN);	//绿灯灭
PINS_DRV_ClearPins(LED_BLUE_PORT, 1 << LED_BLUE_PIN);	//蓝灯灭

调试运行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后就可以看到板子上的灯 红/绿/蓝 切换亮了.

工程下载

https://download.csdn.net/download/weifengdq/11803706

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值