厦门莫格电气自动化有限公司销售
Honeywell霍尼韦尔620-8996
您迈开询价的一小步,我还您成功的一大步。
620-8996
620-8996
620-8996
a). 硬件准备
./ Colibri iMX7计算机模块和ColibriEva Board开发板
./Ubuntu Linux开发主机
b). 软件准备
./ iMX7模块Cortex-A7核心运行Toradex EmbeddedLinux release V2.6 Beta2
./Ubuntu Linux开发主机
FreeRTOS source code
交叉编译ToolChain - Linaro ARM Embedded, 4.9 2015-Q3 版本 - 从这里***
3). 配置
a). ***FreeRTOS for Colibri iMX7
------------------------
$ git clone -b master-1.0.1git:///freertos-toradex.git freertos-colibri-imx7/
$ cd freertos-colibri-imx7/
------------------------
b). 解压缩交叉编译工具
------------------------
$ tar xjfgcc-arm-none-eabi-4_9-2015q3-20150921-linux.2
//如果开发主机是Ubuntu 64bit 操作系统,则需要安装下面32bit支持包
$sudo dpkg --add-architecture i386
$ sudo apt-get up date
$ sudo apt-get install libc6:i386libncurses5:i386
//测试gcc运行
$ cd .../gcc-arm-none-eabi-4_9-2015q3/bin/
$./arm-none-eabi-gcc --version
//安装 make 和 Cmake 工具
$ sudo apt-get install make cmake
------------------------
4). 编译FreeRTOS
FreeRTOS 的 examples 目录下提供了诸多例程,在编译前需要先设置叉编译工具路径的环境变量ARMGCC_DIR, 然后运行armgcc子目录下准备好的编译脚本即可进行编译.
------------------------
$ exportARMGCC_DIR=.../gcc-arm-none-eabi-4_9-2015q3/
$ cd .../freertos-colibri-imx7/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc
$ ./
------------------------
编译好的可执行文件位于armgcc下的release和debug子目录下, 可以加载到M4核心上面运行了.
5). 在M4核心上面运行Firmware
a). M4的固件程序在Colibri iMX7 A7核心Linux系统U-Boot中进行加载, 将编译好的 n程序放到SD卡根目录 (FAT32格式) ,并连接到开发板上.
------------------------
Colibri iMX7 # fatload mmc 0:1 0x7F8000n
...
Colibri iMX7 # dcache flush
Colibri iMX7 # bootaux 0x7F8000
## Starting auxiliary core at 0x007F8000...
------------------------
b). FreeRTOS 默认使用 UARTB 作为其调试输出串口, 波特率设置1152008N1。A7 Linux 默认device tree设置也会访问UARTB, 为了防止出现冲突, 推荐在device tree 中禁用 UARTB(设置status参数)。也可以在 U-Boot 中添加下面参数,临时禁用 UARTB。
------------------------
Colibri iMX7 # setenv fdt_fixup 'fdt addr${fdt_addr_r} && fdt rm /soc/aips-bus@30800000/spba-bus@30800000/serial@30890000'
Colibri iMX7 # s***eenv
