这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » BeaglePlay开发板试用-过程帖

共1条 1/1 1 跳转至

BeaglePlay开发板试用-过程帖

工程师
2026-07-05 13:28:29     打赏


BeaglePlay 开发板试用-过程帖


上期开箱贴已经成功更新系统


本期我们将在M4内核上运行zephyr rtos并实现串口打印输出

我们烧写完系统启动之后是无法操作内核的,需要更新设备树

网址:https://github.com/beagleboard/BeagleBoard-DeviceTrees/tree/v6.18.x

企业微信截图_17832262482561.png

我们直接使用命令

git clone https://github.com/beagleboard/BeagleBoard-DeviceTrees.git

下载到开发板根目录

然后

cd BeagleBoard-DeviceTrees

make

 sudo make install arm64

至此即可控制M4内核

企业微信截图_17832266018198.png

重启开发板

可通过dmesg | grep m4

企业微信截图_17832267881638.png

查看是否生效


既然M4内核配置已经完成,那么接下来就开始编译zephyr固件

具体网址:https://docs.zephyrproject.org/latest/boards/beagle/beagleplay/doc/index.html

企业微信截图_17832270225784.png

这里需要勘误纠正一下,

west build -b 参数应该为 beagleplay/am6254/m4 不是网页上介绍的

pocketbeagle_2/am6254/m4


一定注意这个细节,避免串口无法打印数据

企业微信截图_17832272153613.png

作者的zephyr开发环境安装在了ubuntu实体机上

相关的指导可以参考这个帖子:https://forum.eepw.com.cn/thread/400507/1

进入程序目录west build -b beagleplay/am6254/m4 -p always

构建固件

企业微信截图_17832278618116.png

相关软件代码

/*
 * Copyright (c) 2012-2014 Wind River Systems, Inc.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

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

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

int main(void)
{
    while (1)
    {
        printf("Hello World eepw beagleplay board! user rasngsun %sn", CONFIG_BOARD_TARGET);

        k_msleep(SLEEP_TIME_MS);
    }
   
    return 0;
}

然后通过scp命令上传至开发板,ip需要填写开发板真实ip

企业微信截图_17832281723616.png

scp ./build/zephyr/zephyr.elf debian@0.0.0.0:~/

在开发板上执行以下命令更新M4 mcu固件,并重启开发板

sudo cp --remove-destination ./zephyr.elf /lib/firmware/am62-mcu-m4f0_0-fw

企业微信截图_17832282903253.png

这时M4 mcu即可通过开发板上的

  • mikroBUS (I2C/UART/SPI/MCAN/MCASP/PWM/GPIO)

端口上的uart查看输出信息

这里我们需要借助usb转串口实现

开发板和串口模块的gnd需要接在一起

开发板mikroBUS tx连接串口模块的rx

企业微信截图_17832287591196.png

继续使用如下命令

sudo tio /dev/ttyUSB0 -b 115200

即可查看串口输出

企业微信截图_17832291361614.png





关键词: zephyr    

共1条 1/1 1 跳转至

回复

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