Funpack5-1 - 基于MCX A346实现UART串口输出
该项目使用了MCX A346,实现了UART串口输出的设计,它的主要功能为:使用MCXA346开发板的UART串口输出“Hello, DigiKey Funpack 5-1”。
标签
嵌入式系统
Funpack活动
开发板
小凡
更新2026-03-17
24

1. 项目介绍

本期活动提供了多个任务选项,考虑到这是初次接触MCXA346这款全新的MCU,我选择了最基础但也是任何嵌入式开发“第一步”的任务——任务1的基础题目:使用MCXA346开发板的UART串口输出“Hello, DigiKey Funpack 5-1”

2.硬件介绍

本项目用到的是NXP官方推出的FRDM-MCXA346开发板。

主控芯片: MCX A346:基于Arm Cortex-M33内核,最高主频可达180MHz,配备了高达1MB的闪存和256KB的RAM。双FlexPWM、高精度ADC和数学加速器(MAU),在工业控制,尤其是电机驱动领域巨有大潜力。

3. 方案框图和项目设计思路介绍


本项目的设计思路非常直接,就是实现MCU最基本的数据输出功能。核心逻辑是:

初始化系统时钟 -> 配置与板载调试器相连的UART引脚 -> 初始化UART外设并设置正确的波特率 -> 通过UART发送字符串。

3.2 方案框图

下图描述了整个系统的软硬件交互流程:

流程说明

  1. 物理连接:通过一根USB-C线将PC和FRDM板上的MCU-Link USB口连接起来。
  2. 虚拟串口:PC识别到板载的MCU-Link调试器,并为其安装驱动,生成一个虚拟的COM端口(例如COM3)。
  3. MCU程序运行:MCX A346芯片上电后,按照烧录进去的代码运行。
  4. UART初始化:代码配置MCX A346的某个UART外设,将其TX引脚连接到与调试器通信的指定GPIO上,并设置通信参数(如波特率115200, 8位数据, 1位停止位, 无校验)。
  5. 数据发送:MCU通过UART外设将“Hello, DigiKey Funpack 5-1”字符串逐字节发送出去。
  6. 数据中转:板载的MCU-Link调试器芯片监听到UART总线上的数据,将其从UART协议“翻译”成USB协议,并通过USB线缆上传给PC。
  7. 数据显示:PC上的串口调试助手打开对应的虚拟COM端口,接收来自USB的数据,并将其显示在屏幕上。

4. 调试软件介绍、软件流程图及关键代码介绍


本项目主要使用了VS code,项目的软件逻辑极为简单,其流程图如下:


以下是项目中核心功能的代码片段及简要说明。代码基于MCUXpresso SDK生成并进行了更改。



#include "fsl_device_registers.h"
#include "fsl_debug_console.h"
#include "board.h"
#include "app.h"

#define DEBUG_CONSOLE_TRANSFER_NON_BLOCKING 0U

int main(void)
{
    char ch;


    /* Init board hardware. */
    BOARD_InitHardware();


    PRINTF("MCUX SDK version: %s\r\n", MCUXSDK_VERSION_FULL_STR);


    PRINTF("“Hello, DigiKey Funpack 5-1”\r\n");


    while (1)
    {
        ch = GETCHAR();
        PUTCHAR(ch);
    }
}



5. 功能展示图及说明

功能描述:将FRDM-MCXA346开发板通过USB-C连接至电脑后,在MCUXpresso IDE中将上述代码编译并下载到板载MCU中。下载完成后,程序自动开始运行。此时,打开PC端的串口调试助手,选择正确的COM口(本机为COM5),设置波特率为115200,数据位8,停止位1,无校验位,并打开串口。即可在接收区看到打印的“Hello, DigiKey Funpack 5-1”信息。

image.png


6. 心得体会

通过参与Funpack5-1活动,并完成这个“简单”的UART输出任务,我收获的远不止于让开发板说了一句“Hello”。

首先,我亲身体验了从零开始上手一款全新MCU的完整流程:从阅读活动规则、下单购买,到下载SDK、搭建开发环境、阅读参考手册、编写代码、下载调试,最后输出结果并撰写报告。这个过程是任何课堂理论都无法替代的宝贵经验。NXP的MCUXpresso生态确实非常强大,其SDK和配置工具极大地降低了开发门槛,让我能将更多精力集中在逻辑实现而非繁琐的寄存器配置上。Funpack活动这种“任务驱动”的学习模式,有效地克服了我的学习惰性,让我在有限的时间内集中精力解决一个具体问题,从而快速提升。

总的来说,这次经历不仅让我完成了一个项目,更让我掌握了一套学习新技术的有效方法,并激发了我深入探索嵌入式世界的兴趣。感谢硬禾和DigiKey提供这样优质的活动平台。

附件下载
frdmmcxa346_hello_world.zip
团队介绍
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号