揭秘嵌入式软件开发的奥秘

发表时间: 2024-06-18 11:09

嵌入式产品开发流程:

1、建立交叉开发环境:开发主机的操作系统一般采用有一定发行版本号的Linux系统,如RedHatlinux。Linux内核版本号可根据项目具体需要确定,如2.4内核或2.6内核。选择自定义安装或全部安装,从网上下载相应的gcc交叉编译器进行安装(如arm、linux、gcc、arm、uclibc、gcc等),或者安装产品厂商提供的交叉编译器;

2、配置开发主机:配置开发主机包括在开发主机上安装Linux系统以及配置串口、网口等交叉连接工具;

3、创建bootloader:从网上下载一些开源的bootloader并根据自己具体的芯片进行移植和修改;

4、嵌入式Linux操作系统的移植:采用的是嵌入式应用程序。那么这些应用程序就需要运行在一定的操作系统(嵌入式操作系统)上。比较常用的有uclinux、arm、linux、ppc、linux等。最好的情况是,已经有针对所选CPU平台的嵌入式Linux系统了。下载后,再加入自己的具体调试;

5.创建根文件系统:可以裁剪其功能得到一个主根文件系统,然后根据应用需要添加其他程序。默认的启动脚本一般不能满足应用程序的需要,所以需要修改根文件系统的启动脚本。启动脚本放在/etc文件夹下。在嵌入式系统中,根文件系统一般设置为只读,需要使用mkcramfs、genromfs等工具生成镜像文件。但有些嵌入式系统并不直接使用根文件系统;

6、为应用程序创建Flash磁盘分区:嵌入式系统并不使用磁盘作为外部存储器,而通常使用Flash。通常使用JFFS2或者YAFFS文件系统,而这些文件系统的驱动需要在内核中提供;

7、开发应用程序:应用程序可以放在与根文件系统同一分区,也可以放在YAFFS或者YFFS2等其他分区;

8、部署配置系统产品测试发布:应用开发完成后,需要烧录内核、根文件系统、应用程序,最后对产品进行测试发布。