【FRDM-MCXA366】①开箱并点亮液晶
https://forum.eepw.com.cn/thread/401332/1
上一篇中,直接在IDE中下载FRDM-MCXA366官方SDK ,并导入例程直接下载运行成果。
那如果不用官方例程,直接从0开始用MCX SDK 硬件驱动库点灯,要怎么搞呢。
第一步:
在MCUXpresso IDE中新建一个一个工程,其他选项都默认。

会默认创建一个带串口调试功能的空白工程:
直接编译运行,可以在串口输出:Hello World
/*
* Copyright 2016-2026 NXP
* All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/**
* @file MCXA366_LED.c
* @brief Application entry point.
*/
#include <stdio.h>
#include "board.h"
#include "peripherals.h"
#include "pin_mux.h"
#include "clock_config.h"
#include "fsl_debug_console.h"
/* TODO: insert other include files here. */
/* TODO: insert other definitions and declarations here. */
/*
* @brief Application entry point.
*/
int main(void) {
/* Init board hardware. */
BOARD_InitBootPins();
BOARD_InitBootClocks();
BOARD_InitBootPeripherals();
#ifndef BOARD_INIT_DEBUG_CONSOLE_PERIPHERAL
/* Init FSL debug console. */
BOARD_InitDebugConsole();
#endif
PRINTF("Hello World\r\n");
/* Force the counter to be placed into memory. */
volatile static int i = 0 ;
/* Enter an infinite loop, just incrementing a counter. */
while(1) {
i++ ;
/* 'Dummy' NOP to allow source level single stepping of
tight while() loop */
__asm volatile ("nop");
}
return 0 ;
}那我如果配置GPIO口点灯,怎么办,当然是使用IDE的图形化配置工具(类似ST的CubeMX)
然而点击右侧的芯片图标(Pins)进入图形化配置页面。
在左侧工具栏的<Select Project>选择刚创建的工程名,系统进入下载状态并随后提示:不支持处理器或处理器数据不可用。请检查您的网络连接。

问了豆包,并摸索了一番,发现原来是由于目前(2026/8/29)NXP最新版MCUXpresso IDE是2025年6月30发布MCUXpresso IDE v25.6.136。

而MCXA366
MCXA366(MCX‑A36 系列)官方正式发布公告:2026‑01‑23,NXP 一次性公布 6 个 MCX‑A 新家族,MCX‑A36 就在其中NXP Semico...。
芯片规格书、用户手册初稿在2026‑02放出;配套开发板 FRDM‑MCXA366 2026 年 Q2 开始提供样品
也就是IDE没赶上MCU的发布时间,而且也没更新,所以解决方案就是下载独立的硬件配置工具:
MCUXpresso Config Tools 26.06
最后更新:06-29-2026 02:25 AM


将P3_18配置为输出,默认输出为0
再重新生成代码。
就可以在工程文件中的 board/pin_mux.c中看到P3_18的配置已自动生成。

然后我们更新下程序,加入最核心的
#include "fsl_common.h"
#define SDK_DelayMs(ms) SDK_DelayAtLeastUs((ms)*1000U, 100000000U)
GPIO_PortToggle(GPIO3, 1u << 18); 翻转P3_18引脚
SDK_DelayMs(500); //延时500ms
具体使用方法可参考NXP的硬件驱动库。

#include <stdio.h>
#include "board.h"
#include "peripherals.h"
#include "pin_mux.h"
#include "clock_config.h"
#include "fsl_debug_console.h"
#include "fsl_common.h"
#define SDK_DelayMs(ms) SDK_DelayAtLeastUs((ms)*1000U, 100000000U)
/* TODO: insert other include files here. */
/* TODO: insert other definitions and declarations here. */
/*
* @brief Application entry point.
*/
int main(void) {
/* Init board hardware. */
BOARD_InitBootPins();
BOARD_InitBootClocks();
BOARD_InitBootPeripherals();
#ifndef BOARD_INIT_DEBUG_CONSOLE_PERIPHERAL
/* Init FSL debug console. */
BOARD_InitDebugConsole();
#endif
PRINTF("Hello World\r\n");
/* Force the counter to be placed into memory. */
volatile static int i = 0 ;
/* Enter an infinite loop, just incrementing a counter. */
while(1) {
i++ ;
/* 'Dummy' NOP to allow source level single stepping of
tight while() loop */
__asm volatile ("nop");
GPIO_PortToggle(GPIO3, 1u << 18);
SDK_DelayMs(500); //延时500ms
}
return 0 ;
}编译运行后就可以看到红色LED闪烁了。
不得不说NXP的这套编程工具还是有些缺陷的,IDE跟不上MCU更新速度。
要是设计为只更新MCU驱动包,不更新IDE就完美了,希望NXP后续可以改进得更人性化些。

我要赚赏金
