全志V3S嵌入式驱动开发(windows平台镜像烧入)

news/2024/10/25 16:23:34/

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        

        对于很多第一次学习嵌入式linux和开发板的同学来说,如何烧入镜像文件常常成为他们要面对的第一个难题。从拿到板子开始,他们可能还没学会虚拟机、没有学会基本的linux操作,就迫不及待地想测试下版本烧入,这也是可以理解的。鉴于此,我们也给出了三种基于windows平台的镜像烧入方法。

        有的同学也许会说,为什么不用官方的PhoenixSuit软件?主要是因为PhoenixSuit需要pack命令的支持,但是pack命令是怎么建立img的,目前没有一个详细的文档,这对于开发者来说,十分为难。

1、利用sd卡烧入

        这种方法最大的好处就是简单、稳定,它唯一的要求,就是多一张micro sd卡。这样,版本烧入就只和这张micro sd卡有关。鉴于之前已经写过相关的文章,有兴趣的同学可以参考这个链接,这里也不再赘述了,

https://blog.csdn.net/feixiaoxing/article/details/130897035?spm=1001.2014.3001.5501

        

2、利用xfel工具烧入

        xfel工具我们并不陌生,刚刚spi-nand烧入的时候,我们就是用它在ubuntu的环境下面完成版本烧入的。其实,大家不熟悉的是,xfel也支持windows操作的,软件从这个地址下即可,

https://gitee.com/xboot/xfel/releases/tag/v1.3.1

        下载好之后,在准备烧入之前,同样需要v3s进入usb otg模式。因为xfel主要是利用libusb来实现的,所以这里需要给v3s usb安装驱动。它和之前PhoenixSuit安装的驱动不同,所以第一步就要把之前的PhoenixSuit usb驱动删除,

        接下来,就是用zadig软件安装usb驱动。zadig软件可以从这里下载,

https://zadig.akeo.ie/

        打开zadig软件,选择要安装驱动的usb节点,直接安装libusbK即可。发现和检测到usb节点,这是使用xfel的前提,一定要注意下。另外,如果下次启动的时候,发现usb节点的驱动没有找到,再次安装即可,这个不用担心。

        安装好之后,就可以使用xfel命令了。目前xfel同时支持 spi-nor和spi-nand,这对我们来说就十分方便了。此外,xfel在烧入的时候,不需要自己再次erase,直接write即可,这也是很方便的。操作时,如果写入的是spi-nor,那么输入下面这条命令即可,

./xfel.exe spinor write 0x0 flashimg.bin

        同样,如果写入的是spi-nand,只需要把spinor修改成spinand就行,

./xfel.exe spinand write 0x0 flashimg.bin

        当然,在实际的执行过程中,我们发现命令执行也有一定的失败机会,一般来说多测试几次就好了。成功的概率还是不错的。上面说的flashimg.bin都是整个镜像文件,里面包含了uboot、kernel、dtb和rootfs,烧录一次即可。

3、利用xfel+y modem安装

        因为xfel有一定的失败率,所以另外一个比较好的烧入方法就是xfel+y modem。方法虽然有一点慢,也稍微有点繁琐,但是成功率几乎100%,没有失败的风险。它的操作步骤是这样,

        第一步还是用xfel烧入uboot文件,

./xfel.exe spinor erase 0x0 0x100000
./xfel.exe spinor write 0x0 uboot.bin

        第二步,烧入好uboot之后,我们就可以重启板子,让板子进入boot状态,这个时候可以用loady下载文件,比如zImage下载。注意,此时需要选用SecureCRT软件,而不是minicom软件。这主要是因为,SecureCRT支持windows平台,也支持y modem协议,使用比较方便,

         第三步,下载到内存0x41000000之后,这个时候就可以借助于uboot的sf命令下载到spi-nor flash里面去了,输入下面这条命令即可,

sf write 0x41000000 0x120000 0x500000

        这条命令的意思是说,将0x41000000开始的ddr 5M空间内容,全部下载到spi-nor flash偏移地址为0x120000的位置去。完成了kernel的下载,其他dtb和rootfs也可以按照这个方法去做。甚至后期,对于uboot的下载和更新,也可以使用这个方法,但是uboot最好还是慎重一些,不是特别紧急的变更,最好不要修改。

4、总结

        目前在window平台上面,这三种对image进行烧入的方法还是比较实用的,主要的sd卡、spi-nor、spi-nand也都涉及到了,操作上面也不复杂,大家在实际使用中可以多多测试下。中间有的方法比较快,但是有失败的风险;有的方法虽然慢一点,但是成功的概率很高,中间的取舍,大家根据自己的情况灵活进行决定和判断。


http://www.ppmy.cn/news/671600.html

相关文章

暗黑破坏神不朽怎么在电脑上玩 暗黑破坏神不朽模拟器教程

《暗黑破坏神不朽》的故事发生在在第二代和第三代中间的二十多年内,世界之石被毁后,暗黑破坏神中的世界发生了什么?牺牲自我的天使泰瑞尔境遇如何?暗黑3中出现的新角色莉亚是怎样来的?都将在这款手游中一一呈现。下面小…

ps去色的10种方法

原图 1、ctrlshiftu 即去色 2、ctrlu 降饱和度到最低 3、图像——调整——渐变映射(前景色为黑色,背景色为白色或设置渐变为从黑到白) 4、图像——调整——通道混合器勾选单色框 5、图像——模式——灰度;再图像——模式…

PVPGN1.8.2 + D2GS1.11(38)搭建暗黑破坏神1.11b战网(配置指南)

首先介绍一下PVPGN和D2GS,PVPGN是一个多人网络游戏平台,全称是(Player vs Player Gaming Network),它的前身是Bnetd。Bnetd由于吃到暴雪的官司败诉,最后停止开发;后来这个项目由另一个国外的民间组织接手,于…

libevent实践06:监听TCP服务器

简介 函数evconnlistener_new_bind struct evconnlistener * evconnlistener_new_bind(struct event_base *base, evconnlistener_cb cb,void *ptr, unsigned flags, int backlog, const struct sockaddr *sa,int socklen) 参数解析: base:事件集合 ev…

小白开酒吧前要知道的几个知识(二)

第三、选址关于酒吧的选址,首先你要清楚你酒吧的定位。根据酒吧的定位来选择你的店址,酒吧一条街的人流量通常较大,所以适合比较热闹的酒吧风格类型。而比如较小的酒馆,静吧就适合稍微安静一些的店址。还有就是店址一定要明确&…

游戏脚本中控台多线程完整详解

1.1理解需要使用的组件 1.2自动登录的原理 1.3中央控制台的功能分析 2.1帐户库生成 2.10周期编号计时判断 2.11线程已添加 2.12监视线程使用情况(单窗口多线程) 2.13菜单应用程序方法(控制单个帐户) …

游戏脚本多线程与中控台完整详解

游戏脚本多线程与中控台完整详解

中控PHP开发,易语言PHP按键精灵搭建中控系统

此中控系统功能如下: 1.用户在电脑可以按指定端口号(实际就是一个用户标识,用于区分的)导入批量账号密码 2.可以使用按键精灵安卓版读取导入的账号,实现多手机读取 涉及到的语言: PHPMYSQL (数据库和中控与按键精灵的核心操作) 易…