拿到板子后,我们就要开发了,而Linux开发,我们一般选择在Linux虚拟机中搭建交叉编译环境,所以我们需要准备一个虚拟机,官方也提供了一个搭建号开发环境的虚拟机。
是Ubuntu18.04版本,即开即用,但是我个人喜欢Ubuntu16环境,所以自己搭建了如下的开发环境。
之后根据手册下载对应的包
配置环境,开始编译。
编译完成。只要搭建好交叉编译工具链,通过一条指令即可完成全部编译工作。 这里以nand+ssd201为例,开始编译源码: # ./Release_to_customer.sh -f nand -pssd201 -o 2D06 这里使用此脚本进行编译。 Release_to_customer.sh脚本执行时需要传递3个参数(-f、-p、-q、-o);
- -f 表示flash的类型,可选nand、nor;
- -p 表示芯片型号,可选ssd201、ssd202;
- -q 表示快速启动模式,可选fastboot或空;
- -o 表示选择相应的开发板配置,可选2DO6或2D07;
2D06:双网口配置;2D07:7寸开发板配置
下面有脚本参数的解释。这一步完成后即可进行打包。烧录需要一个bin文件。
在project下还有一个打包脚本。我们这里通过u***烧录,所以直接使用make_u***_upgrade_sigmastar.sh脚本进行打包。
打包好的文件在project/image/output/images中,我们把他放到U盘中进行烧录。如上图。
Boo ting Linux on physical CPU 0x0 Linux version 4.9.84 (ronnie@wt_rd_server)(gcc version 8.2.1 20180802 (GNU Toolchain for the A-profile Architecture8.2-2018-08 (arm-rel-8.23)) ) #280 SMP PREEMPT Mon Apr 12 13:40:23 CST 2021 CPU: ARMv7 Processor [410fc075] revision 5(ARMv7), cr=50c5387d 先看下之前的内核编译时间。如上图所示。
USB烧录我们需要先进入uboot中,只需要在启动时,长按回车即可,因为这里uboot没有倒计时,所以需要重启长按回车键。 # setenv UpgradePort 1# gpio output 14 1(4.3寸开发板需要拉高此GPIO给USB供电)双网口拉高GPIO14# saveenv烧录还需要三个命令,一个是确定烧录的USB口,一个是要给USB口上电,因为USB口不是一直有电的。
最后执行 #u***star就会开始烧录。
Linux version 4.9.84 (ssd20x@ubuntu) (gccversion 8.2.1 20180802 (GNU Toolchain for the A-profile Architecture8.2-2018-08 (arm-rel-8.23)) ) #153 SMP PREEMPT Sat Oct 23 08:52:51 PDT 2021 CPU: ARMv7 Processor [410fc075] revision 5(ARMv7), cr=50c5387d CPU: div instructions available: patchingdivision code 等内核启动打印,我们截取下,看到时间就知道是我们自己编译的内核了,当然你还需要一个文件系统,这里就不演示了,下次开始分享接屏幕体验了。
|