这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 【开箱帖】简易超声波测距仪实践——开箱以及后续安排

共1条 1/1 1 跳转至

【开箱帖】简易超声波测距仪实践——开箱以及后续安排

菜鸟
2026-09-15 00:22:22     打赏

很高兴能够入围这次活动,之前开发的都是stm32、瑞萨RA系列,第一次接触nxp的单片机。本来还有点纠结怎么装环境,发现FRDM-MCXA153适配了zephyr rtos,正好我最近在学习zephyr,之后开发我打算使用zephyr的rtos来实现。

一、 开箱

DigiKey的大箱子IMG_20260914_184120(1).jpg

nxp的FRDM-MCXA153,包装很薄很简洁,里面一块开发板,还带一根1m type c数据线

IMG_20260914_190018(1).jpgIMG_20260914_190133(1).jpgIMG_20260914_233942.jpg

二、 FRDM-MCXA153

1. 开发板简介与核心特性

FRDM-MCXA153 是 NXP 官方推出的一款低成本、紧凑型开发板,搭载基于 Arm® Cortex®-M33 内核的 MCXA153 微控制器,最高主频可达 96 MHz。板卡自带板载 MCU-Link 调试器,并兼容 Arduino® UNO R3、Pmod™ 及 mikroBUS™ 等多种扩展接口。

核心参数表:参数项规格/说明
MCU 型号MCXA153VLH (Arm® Cortex®-M33)
主频高达 96 MHz
Flash / SRAM128 KB Flash, 32 KB SRAM (含 8KB ECC)
调试器板载 MCU-Link (CMSIS-DAP / J-Link 固件)
板载外设/传感器P3T1755DPJ I3C/I2C 温度传感器、RGB 用户 LED、Reset/ISP/Wakeup 按键
扩展接口Arduino UNO R3 接口、mikroBUS™ 接口、Pmod™ 接口
USB 接口FS USB Type-C (Host/Device) + HS USB Type-C

2. 硬件框图与引脚

开发板整体设计十分简洁,外设引脚通过标准的 Arduino 扩展排针引出,方便连接各类传感器与模块。

image.pngimage.png

三、 简简单单点个灯

基于 Zephyr RTOS 实现了基本的 GPIO 点灯示例(Blinky)。代码使用 Zephyr 的 Devicetree API 自动获取板载 LED 引脚配置(通过 led0 别名映射到板载板载 LED),并在主循环中实现周期性翻转与串口状态打印。

1. 核心代码 (src/main.c)

#include <stdio.h>
#include <zephyr/kernel.h>
#include <zephyr/drivers/gpio.h>

/* 1000 msec = 1 sec */
#define SLEEP_TIME_MS   1000

/* 获取设备树中 "led0" 别名对应的节点标识符 */
#define LED0_NODE DT_ALIAS(led0)

static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(LED0_NODE, gpios);

int main(void)
{
    int ret;
    bool led_state = true;

    /* 检查 GPIO 设备是否就绪 */
    if (!gpio_is_ready_dt(&led)) {
        return 0;
    }

    /* 配置 GPIO 引脚为输出模式,默认输出高电平 */
    ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE);
    if (ret < 0) {
        return 0;
    }

    while (1) {
        /* 翻转 GPIO 引脚状态 */
        ret = gpio_pin_toggle_dt(&led);
        if (ret < 0) {
            return 0;
        }

        led_state = !led_state;
        printf("LED state: %s\n", led_state ? "ON" : "OFF");
        k_msleep(SLEEP_TIME_MS);
    }
    return 0;
}

2. 代码简要说明

  • 设备树别名映射:代码中通过 DT_ALIAS(led0) 获取板载 LED 的节点信息,无需硬编码引脚号,增强了代码的跨平台移植性。

  • GPIO 初始化:使用 gpio_is_ready_dt 和 gpio_pin_configure_dt 完成引脚功能校验与输出初始化。

  • 主循环控制:利用 gpio_pin_toggle_dt 实现高低电平翻转,并通过 k_msleep(SLEEP_TIME_MS) 延时 1000ms(1秒),串口同步打印 LED 当前状态。

四、 后续安排

在完成环境搭建和基本的 GPIO Blinky 点灯实验后,接下来的阶段我将基于 Zephyr RTOS 的多任务并发机制,逐步实现一个完整项目:基于 Zephyr RTOS 的 FRDM-MCXA153 超声波雷达扫描系统





关键词: 开箱     点灯     let'sdo     zephyr    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]