TI SDK制作一个beaglebone使用的SD卡

设备:Ubuntu16.04 16G SD卡

  • 首先需要安装一个AM335x的SDK,都是在PC端安装,下载地址:

http://software-dl.ti.com/processor-sdk-linux/esd/AM335X/latest/index_FDS.html

 

  1. SDK的安装文件,下载到Ubuntu,更改文件权限,./执行安装,然后就是一路图形化界面安装。安装路径最好选择在/home目录,不要在根目录下。
  2. 安装交叉编译链,可以再上述链接中下载,在1的源码中也包含,配置一下环境变量,测试交叉编译链是否成功。
  3. 在1的安装目录执行make,生成的则是3。如果直接下载3,就不需要1的步骤,仅需配置交叉编译链。

 

Beagleboard:3.2SDK on Beaglebone Black:

https://elinux.org/Beagleboard:3.2_SDK_On_BeagleBone_Black

按照上述教程我的实现:

  • 环境:
    1. Linux64 Ubuntu16.04
    2. 安装程序am335x-evm-linux-sdk-bin-05.02.00.10.tar.xz
    3. Beagleboneblack
    4. USB转串口的线,插在beaglebone上
    5. 以太网网线与beaglebone接在同一个局域网下
    6. 16G的SD卡
  • 打开终端,进入安装包所在目录,命令行解压文件,放到不要root权限的目录,例如/home/ws/目录。
  • 将SD卡通过读卡器插到电脑上。
  • 进入解压后的文件目录,进入子目录bin中,执行create-sdcard.sh脚本,如果执行不了修改一下文件权限就好了。
sudo chmod a+x create-sdcard.sh

sudo ./create-sdcard.sh
  • 选择你的SD卡,如果电脑的USB上没接别的U盘,应该只有一个,如果还有别的存储设备,注意看存储器容量区分,选择前面对应数字,例如1.
  • 下一个选项是询问是否重新划分驱动器,输入y并回车。
  • 接着询问使用两个分区的模式还是三个分区的模式,本人使用的是两个分区,所以输入2并回车。
  • 分区完成后提示是否继续安装文件系统,输入y并回车。
  • 接着询问从何处获取安装文件,选择1是默认的SDK包中预置的内核、设备树、u-boot、文件系统。选择2则是自己指定需要的uboot和rootfs。

  • 然后一路回车,等待制作完成,就完成了SD卡的制作。
  • 将做好的SD卡插入BBB中,并接好USB转串口的线,以太网线。
  • 按住boot(S2)键,这样则在SD卡中启动,上电启动。
  • 在PC端的解压目录下执行setup.sh脚本。
sudo chmod a+x setup.sh

sudo ./setup.sh
  • 询问Linux的用户名,可以自己取,默认root,输入后回车。
  • 后面会问你在哪里安装目标文件系统,其实这些我们已经拷贝到SD卡了,所以默认选项吧。
  • 一直输入回车到配置串口连接那一步。输入自己使用的串口名,例如/dev/ttyACM0(因为本人使用的是虚拟串口,如果用的USB转串口则是ttyUSB0或者1)。该文件通过插拔串口线来确定,进入到/dev目录下,ls tty*,拔掉串口,在打印一遍,看看哪个消失。消失的那个就是这个地址。
  • 接着自己检测IP等。选择后面的传输方式时,因为已经将文件系统等拷贝在u盘里了,所以我们选择1 TFTP、1 NFS。之后一直回车到结束。
  • 在PC端配置minicom,安装一个minicom,然后输入minicom –s ,根据提示,修改第一个串口名称为刚刚检测到的地址名称,波特率115200 8N1 保存并退出。重启beaglebone(按住boot  s2键)应该就能从串口看到打印消息了。
  • 该版本的安装包支持HDMI,只不过没有桌面。
  • 安装过程中无意发现,用该方式制作的SD卡,如果不按boot(S2)的键就会默认从emmc中启动,而如果是beaglebone官网提供的debian9.5镜像制作的SD卡,不按boot也是从SD卡中启动。原因不明,期待解答。

猜你喜欢

转载自blog.csdn.net/qq_32059343/article/details/86569951
TI