S32K148_ProcessorExpert之Blink

文章目录

    • 流程
    • 新建工程
    • ProcessorExpert配置
    • 拖动补全代码
    • GPIO函数
    • 调试运行
    • 工程下载

流程

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

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

S32K148_ProcessorExpert之Blink_第1张图片
S32K148_ProcessorExpert之Blink_第2张图片

新建工程

S32K148_ProcessorExpert之Blink_第3张图片
S32K148_ProcessorExpert之Blink_第4张图片
S32K148_ProcessorExpert之Blink_第5张图片

ProcessorExpert配置

S32K148_ProcessorExpert之Blink_第6张图片
如上图, 重命名PTE21/22/23为 LED_RED, LED_GREEN, LED_BLUE, 并设置LED_RED初始电平为高(亮).

S32K148_ProcessorExpert之Blink_第7张图片
点击生成代码:

S32K148_ProcessorExpert之Blink_第8张图片

拖动补全代码

S32K148_ProcessorExpert之Blink_第9张图片

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);	//蓝灯灭

调试运行

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

工程下载

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

你可能感兴趣的:(S32K148)