全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

开发板使用(二)

发布时间:2022-12-28 11:45:09
发布人:wjy

  上一篇文章介绍了,怎么在调试开发板以及开发板上运行程序

  本篇文章介绍,怎么更新开发板系统?

  一、开发板开发流程介绍

  开发板裸机开发流程

  对于功能简单仅包括应用程序的嵌入式系统一般不使用操作系统,我们可使用类似单片机开发的步骤完成整个开发。

  1.硬件开发(PCB、原理图 ——硬件工程师 2.启动代码(硬件初始化)——芯片厂商(汇编) 3.设备驱动(裸机下驱动——驱动工程师 4.应用程序(单任务)——应用工程师

开发板使用(二)206

  开发板带操作系统开发流程

  当设计较复杂的程序时,可能就需要一个操作系统(OS)来管理控制内存、多任务、周边资源等

  1.硬件开发(PCB、原理图) 2.启动加载程(bootloader) 3.操作系统内核(kernel) 4.根文件系统 (root) 5.设备驱动 (driver) 6.应用程序 (进程、线程、GUI、网络、数据库等)

开发板使用(二)380

  二、开发板系统组成(软件)

  bootloader、kernel(driver)、rootfs、app层次

开发板使用(二)439

  2.1 BootLoader

  定义:

  系统加电后,在操作系统内核或用户应用程序运行之前运行的一段或多段程序

  作用:

  将系统的软件硬件环境带到一个合适的状态,为调用操作系统内核准备好正确的环境,类似于pc上的BIOS.(PC在BIOS之后仍然会启动bootloader)

  2.2 linux内核

  是linux系统软件的核心,它的性能对整个系统的性能起决定作用 由linus领导的开源社区对其进行甄别和修改最终决定是否进入到linux主线内核源码中 http://www.kernel.org是内核源码的主要来源,所有来自全世界的对linux源码的修改最终都会汇总到这个网站 linux内核实现了操作系统的五大功能模块: 进程管理\内存管理\文件系统\设备控制\网络

  2.3 linux驱动程序

  驱动程序就是沟通用户与各式各样、千变万化硬件的桥梁 驱动程序也是一类程序,其作用是驱动硬件正常工作,没有他,嵌入式将寸步难行 例如:lcd、flash、ad、网络等正常工作都需要相应的驱动程序来支持

  2.4根文件系统

  存放linux系统所需:重要文件、命令、应用程序等都保存在根文件系统中,操作系统起来后可以直接使用 在启动内核后需要挂载根文件系统 1、包含linux内核启动必须的配置文件,如:开机密码、网络配置脚本、环境变量等 2、应用程序运行需要的库函数等 3、常用应用程序:ftp、vi、telnet、web服务器等

  2.5 linux应用程序

  嵌入式linux应用程序开发可以说是嵌入式系统中最重要的组成部分 我们做出来产品最终是什么,完全看应用程序怎么写 基于本地图形库:QT、miniGUI、MicroWindows 基于网络:CS结构、BS结构、路由转发、组网 基于数据存储与处理:sqllite等 基于设备控制:uart、can、iic、spi等

  三、bootloader、内核、根文件系统烧写

  bootloader是系统加电后运行的第一段程序,因此需要我们把bootloader烧入以下介质,完成启动。

  USB更新系统步骤

  step1:初始化USB,准备与上位机通信。 step2:在上位机(XP)上运行fastboot软件。 step3:修改开发板的环境变量。

  step1:初始化USB,准备与上位机通信

  让开发板停在bootloader命令行界面: 开发板的串口1和电脑的串口通过串口线连接后,打开开发板电源。当串口软件上出现"Hit any key to stop autoboot"时迅速按下电脑键盘上一任意按键。

开发板使用(二)1514

  开发板上的USB OTG口(如下图)通过USB线和电脑USB相连。

开发板使用(二)1554

  在bootloader命令行界面中敲入fastboot命令并回车的界面如下图所示:

开发板使用(二)1602

  输入fastboot命令后开发板会初始化USB OTG口,让其准备好和上位机通信。

  第一次使用fastboot命令时,电脑出现硬件安装向导。此时应安装fastboot驱动。

  安装成功,黄色感叹号消失。

开发板使用(二)1708

  step2:在XP上运行fastboot软件

  双击fastboot目录下的sp_linux_image_down.bat则会运行fastboot.exe软件,往开发板上烧入Linux系统。

开发板使用(二)1809

  step3:结束

  在命令行显示如下内容时表示烧写结束

开发板使用(二)1842

  注意:如果是安卓系统第一次烧写

  step1:同上

  step2:在XP上运行fastboot软件,脚本文件应修改为如下所示,先烧引导程序,后重启

开发板使用(二)1920

  step3:分区

  分区命令1

  mmc erase 0x400 0x40

  分区命令2

  fdisk 2 8 100000:4000000 4100000:2f200000 33300000:1ac00000 4e000000:800000 4e900000:160000050000000:0xc800000 0x5c900000:0x1f400000 0x7be00000:0x0

  重启:

  reset

  step4:在XP上运行fastboot软件,脚本文件应修改为如下所示

  

开发板使用(二)2162

相关文章

黑石服务器是什么?

黑石服务器是什么?

2023-10-14
Rx和Tx是什么?

Rx和Tx是什么?

2023-10-14
重大应急管理(MME)是什么?

重大应急管理(MME)是什么?

2023-10-14
直播系统使用什么语言编写的?

直播系统使用什么语言编写的?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取