【星宸科技AI开发板 Comake Pi D2试用】+程序难以长久保存的解决之法

原创2026-10-26 09:44:36浏览9
9
Star

Comake Pi D2开发板在EMMC模式下,是无法长久保存程序的。起初没太在意,在完成程序录入后,就关机作其它事情,等再次开机才发现程序竟然消失了。

毕竟在Linux环境下,多是采用VI编辑器,使用它输入程序是件比较繁琐的事,不如在windows环境下来得顺畅。

那该如何解决呢?

经探索,可利用tty设备的接收性能来接收外部的程序文件。

以生成脚本文件bjdj.sh为例,所使用的指令为:

cat > /dev/tty << EOF > bjdj.sh

其中,“EOF”是接收结束符。

图1 发送接收指令

 

设待发送的脚本内容为:

#!/bin/sh

if test -d /sys/class/gpio/gpio27 ;then

     echo "alread export !"

else

     echo 27 > /sys/class/gpio/export

fi

则发送过程见图2所示,在完成发送后,可使用指令来查看,其指令为:

cat bjdj.sh

图2 完成程序发送

图3 查看程序内容

 

由此可知,脚本程序已被传送到开发板,它与原程序的差异在于每行会多出一个空行,但这不影响程序的运行。

此时,发送指令“source bjdj.sh”,执行见图4所示。

图4 测试1

 

若再次运行,则测试结果见图5所示,说明运行正确。因为首次运行是创建设备GPIO27,而再次运行由于已生成设备GPIO27,故给出“alread export !”的提示。

图5 测试2

 

至此,解决了程序存入开发板的问题,在完成程序测试后,为以后能进行使用,可使用cat指令来显示程序,然后将显示内容加以复制并转存到外部文件中,这样就实现了一个将外部程序存入开发板,再由开发板转存外部文件的闭环,以对冲程序无法长久保存的问题。

图6 程序转存

 

此外,在Comake Pi D2的LINUX环境下,使用vi编辑器要删除空白行是件麻烦的事,为此可用图7所示的程序来去除脚本程序bjdj.sh中的空白行。

图7 程序内容