#2020征文-开发板#WIFI智能冰箱之二 开发环境搭建和评估

谭思凡
发布于 2020-12-22 14:48
浏览
0收藏

1. 整个项目的评测进展并不是很顺利,先汇总一下具体到情况。


- 其实在各种平台上,包括windows10+虚拟机,ubuntu+wine的windows虚拟机都安装测试过,经过各种坑,都可以安装并顺利编译出第一个可执行文件。

 

- 具体下载到开发板就没有每次都成功,只是在第一次完全按照手册的方法成功了。然后就一直没有成功。具体到原因还没有认真分析,应该板子没有坏,是开发环境和驱动安装到问题。


- 具体在linux系统中安装就比较复杂,主要是各种包到兼容和版本限制到问题。最典型到就是python版本问题。hms开发需要python3++,但是很多linux版本缺省到python系统是2.7,尤其在Centos中这个问题更隐蔽,很难发现。因为,Centos的yum install是基于python2.7的,如果把环境改了,那么发现yum安装失败。最后,干脆升级到Centos8.2,只内置python3.6.5这样才避免了分析linux内核以及LFS的窘境。

 

2、建议的精简开发环境


2.1 Ubuntu完整版,就是编译和下载都在ubuntu中实现。这样,就是下载不能用hms到串口下载,只能用正版J-link的JTAG的下载,这样可以避免切换系统。


2.2 Window10+树莓派的debian环境+TFTP连接,但是也是用到在ARM内核跑RISC-V编译器到问题,而且树莓派本身也不够强大,编译慢,但是比没事搞出两台电脑玩耍好用,而且其中host还需要2个网口,一个连接internet,一个连接编译服务器,自己到host作为下载服务器。


2.3 最豪横配置,就是申请一个云端专用的编译服务器,这样在本地开发本地下载,但是用云端的算力进行编译。这个对于提供学生套餐的云端绝对推荐采用。


2.4 最不推荐就是本地window再弄一个linux虚拟器,这个高级一点到虚拟机就安装得象flash同学一样了,编译效果如何,可想而知。这个官版到方案如果因为时间紧这么出可以,如果永远这么弄,那么呵呵呵。

 

3. 关于2个难点。


3.1 首先失risc-V的编译器,risc-编译器只支持基于x-86内核和arm-64aarch的linux交叉编译。其他架构不行。


因为也没有risc-的宿主机,不能barecode原生编译,智能交叉编译。这样,在windows上就不能编译。arm到编译器有在windows下到交叉编译器,但那是risc-v看来很长时间都没有,所以,以linux为核心是必然的。虽然大家习惯于在windows下搞事情,但是window其实再编译和底层操作上效率很差,切换到linux是提高效率,节省银子到核心措施。

 

3.2 下载器。中间测试过在ubuntu下安装vs-code,然后下载华为devtools插件,成功,成功,成功。但是,包括编译成功,但是下载不成。后来,解包这个插件,其实就是一个zip压缩文件,其中最核心到就是下载器,是一个基于windows到hiburn.exe文件。虽然可以打包在ubuntu中混,但是调用这个hiburn的时候,就彻底歇菜。


这个hiburn文件,可以从压缩包中提取,在windows下是一个单页面GUI,下载器,应该是可以单独使用到,但是提取出来连接板子没有反应,应该是还有一个校验的环节。


这样,下载器只有两个办法,或者用usb抓包协议分析这个hiburn的下载协议,自己改写,因为其实就是一个串口下载到工作,就是要和板子的内置密钥对上口就可以。通常这个密钥都没有加密,是明文可读的,这个抓了一半,没有进行完。其实,这么简单到事情,把hiburn移植到ubuntu不可以吗。也不用自己去hack了。
另一个就是用jtag,这个失第三方工具,其实是很可以的。


不过,查这个模块是四川到一个物联网模块厂家用华为到芯片弄的,不过,资料是零。一头雾水。


4. 通常到开箱,点灯,还有按照例程下载运行,改一改更酷炫。因为这个项目只有gpio控制ON/OFF其实太容易搞了


但是,因为risc-v还有希望能做一些有价值代码到原因,不太想注水了。
选了一条难的路,好像不大通。不过还是要走一走看,不好办就把板子退回去了也没有关系。
道路长,其实大家都想走轻松的,但是,轻松的事情,快捷的做法,在刀锋的竞争中是会丢了性命的。
如果,菊花也想走快,就要走难。

分类
已于2020-12-22 14:48:20修改
收藏
回复
举报
回复
    相关推荐