实时操作系统-NuttX学习笔记(1)-开发环境搭建

2 篇文章 1 订阅
2 篇文章 1 订阅

1 简介

1.1 背景

学习NuttX视频教程,该视频教程语言为英文,为了在以后的工作学习中用到,在此记录学习内容,方便自己和大家查阅。

1.2 开发环境

虚拟机+系统:虚拟机VMware® Workstation 12 Pro+ubuntu 16.04LTS
开发板:正点原子STM32F4探索者

2 Nuttx开发环境搭建

视频地址:https://www.youtube.com/watch?v=heSkSd-_70g&list=PLd73yQk5Fd8JEsVD-lhwYRQKVu6glfDa8&index=1

2.1 安装开发工具

step1:

sudo apt install \
bison flex gettext texinfo libncurses5-dev libncursesw5-dev \
gperf automake libtool pkg-config build-essential gperf genromfs \
libgmp-dev libmpc-dev libmpfr-dev libisl-dev binutils-dev libelf-dev \
libexpat-dev gcc-multilib g++-multilib picocom u-boot-tools util-linux

stpe2
安装toolchain

sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi

step3:
创建目录:
work
work/os
work/os/tools
work/os/nuttx

step4:
安装openocd
OpenOCD(Open On-Chip Debugger)是一个开源的片上调试器,旨在提供针对嵌入式设备的调试、系统编程和边界扫描功能。

OpenOCD的功能需要调试仿真器来辅助完成,调试仿真器是一个提供调试目标电信号的小型硬件单元。常用的有JLink、STLink等,一些开发板直接集成了调试仿真器,如小熊派开发板就集成了STLink。

为了避免git clone可能失败的情况,直接下载压缩文件,该压缩包同时包含了其所依赖的其他库。
下载网址: https://sourceforge.net/projects/openocd/files/
下载文件:
在这里插入图片描述

将文件放到ubuntu:work/os/tools下解压为:openocd-0.11.0
进入openocd-0.11.0目录

对工程进行配置:

./configure --enable-internal-jimtcl --enable-maintainer-mode --disable-werror --disable-shared --enable-stlink --enable-jlink --enable-rlink --enable-vsllink --enable-ti-icdi --enable-remote-bitbang

编译安装

make
sudo make install

3 编译Nuttx

#002 - Compiling the NuttX Source Code
视频地址:https://www.youtube.com/watch?v=Pi8IAFp3pVw&list=PLd73yQk5Fd8JEsVD-lhwYRQKVu6glfDa8&index=4

3.1 下载源文件

创建目录:work/os/nuttx
git clone https://github.com/apache/incubator-nuttx.git nuttx
git clone https://github.com/apache/incubator-nuttx-apps apps

3.2 安装工具

克隆工具包:git clone https://bitbucket.org/nuttx/tools.git
cd tools/kconfig-frontends
./configure
make
sudo make install
sudo ldconfig

3.3 编译

进入nuttx源代码目录:work/os/nuttx/nuttx

step1 为开发板初始化nuttx配置
NuttX现在所支持的所有配置:

./tools/configure.sh -L | less

我们使用的是正点原子的探索者stm32f4开发板,Nuttx系统应该没有相应的支持,暂时想不管,后续学习懂了在移植,这里选择系统自带的stm32f4discovery开发板的配置,该开发板属于ST官方的产品。

./tools/configure.sh stm32f4discovery:nsh

step2 修改配置
打开基于菜单的配置系统:

make menuconfig

配置:

Build SetUp--->Build Host Platform--->linux
System Type--->Toolchain Selection--->Generic GNU EABI toolchain under linux

step3编译

make

4 下载程序

4.1 使用工具

ST-LINK V2
在这里插入图片描述
探索者开发板自带USB转串口:CH340,请提前参考Ubuntu18.04安装ch340驱动
确认驱动正常,或安装配置好。

可以往开发板烧录:例程:实验4 串口实验进行确认验证串口。
连接好开发板ST_LINK和串口到电脑以及电源灯。

4.2 下载程序

step1

进入work/os/tools/openocd-0.11.0/contrib
sudo cp 60-openocd.rules /etc/udev/rules.d/
sudo udevadm trigger

显示USB相关信息:

lsusb

在这里插入图片描述
进入work/os/nuttx/nuttx目录,执行以下命令下载程序。

 openocd -f interface/stlink.cfg -f target/stm32f4x.cfg -c init -c "reset halt" -c "flash write_image erase nuttx.bin 0x08000000"

step2

启动和配置minicom

sudo minicom -s
Serial port setup--->Serial Device: /dev/ttyUSB0

由于开发板不是ST的官方开发板,暂时串口缺少交互内容,暂时不用管,继续往下学习。

参考资料:
[1] https://bbs.huaweicloud.com/blogs/122621
[2] https://nuttx.apache.org/docs/latest/quickstart/install.html

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值