Nuttx在Atmel SAMV71 Xplained上的配置

来源:互联网 发布:如何在淘宝上赚运费险 编辑:程序博客网 时间:2024/05/12 22:35

在前一篇博客里面已经介绍了开源RTOS Nuttx特性,并且给出了Nuttx在Atmel SAMA5D3 Xplained MPU上运行的效果图,今天会介绍下如何在Linux环境下选择交叉编译工具,配置Nuttx使得其可以在Atmel最新的Cortex-M7 MCU SAMV71 Xplained上运行.

Atmel SAMV71 Xplained开发板介绍

世界上首款主频可以达到300MHz的ARM Cortex-M7 MCU,大名鼎鼎的DJI无人机都选用这颗MCU作为飞控方案。

Nuttx交叉编译工具选择

首先需要下载Linux下的ARM GNU EABI交叉编译工具,否则在Ubuntu10.04下通过sudo apt-get install gcc-arm-none-eabi安装的编译工具是无法支持Cortex-M7架构(至少个人电脑上就遇到这样问题)。gcc-arm-none-eabi工具下载链接
下载完交叉编译工具包后直接在Linux下解压到个人选择的目录下即可。

Nuttx源码下载和编译配置

接着下载Nuttx源码和apps源码到本地–Nuttx和apps下载链接
创建一个samv71nx目录,然后将下载的nuttx和apps压缩包解压到该目录,并且需要将名字修改为nuttx和apps。
cd samv71nx/nuttx/tools
./configure.sh samv71-xult/nsh”
cd ..
修改setenv.sh脚本,将里面export TOOCHAIN_BIN指向第一步时所下的交叉编译工具bin目录。
source setenv.sh
make menuconfig
make
在make menuconfig步骤时需要在serial driver里面重新选择默认的打印输出为USART0,这样将最后生成的hex文件用工具烧录到SAMV71 Xplained时就可以看到有输出打印信息。

Nuttx在Atmel SAMV71 Xplained上运行效果

nuttx image demo
运行Nuttx image demo
nuttx text demo
运行Nuttx text demo(同样支持多窗口操作)

Nuttx下同样的graphic demo既可以在Atmel Cortex-A5 MPU上运行,也可以在Atmel Cortex-M7 MCU上运行,客户只需要重新编译下代码就可以,实现了代码的跨平台复用。

结束语

对Nuttx在Atmel SAMV71 Xplained上面的编译和配置介绍就到这里,如果有兴趣的朋友可以发邮件给我 atmel_mpu_support@163.com。