ITPub博客

首页 > IT职业 > IT生活 > 君正x1000软件开发指南手册

君正x1000软件开发指南手册

IT生活 作者:SZX511 时间:2019-08-20 14:49:29 0 删除 编辑

君正处理器是高集成度、高性能和低功耗的32位RISC处理器,带有MMU和数据及指令Cache,以及丰富的外围设备,可以运行 Linux操作系统。本文将向读者介绍基于君正处理器平台进行Linux内核的配置方法和开发过程,,引导开发人员快速进行Linux开发。本文档为君正内核3.10 版本开发文档,基于芯片X1000,不针对具体开发板,文中如有涉及具体开发板型号,是为了说明方便。

在阅读该文档前,需要具备以下基本技能:

1.会使用 Linux 系统进行开发,最好是 ubuntu。

2.知道嵌入式开发基本流程。如 uboot,linux,文件系统制作等。

阅读该文档,会提供以下帮助:

1.帮助理解君正 BSP 基本组成。(uboot,linux,文件系统)

2.提供基于君正开发平台创建自己的应用程序方法。

3.提供应用程序访问驱动的基本测试用例。

2. 搭建开发环境

在发布SDK时,可以使用君正提供的开发平台,该平台包含了uboot源码,kernel源码,交叉工具链和一些测试程序等,基于该平台,可以方便第三方库的添加,方便应用程序开发。详细参考文档《Manhattan_platform编译系统使用指南.pdf》完成开发环境搭建。

3. Uboot 配置和使用

Linux 内核需要U-Boot来引导。U-Boot是为嵌入式平台提供的开放源代码的引导程序,它提供串行口、以太网等多种下载方式,提供NOR和 NAND闪存和环境变量管理等功能,支持网络协议栈、JFFS2/EXT2/FAT文件系统,同时还支持多种设备驱动如MMC/SD 卡、USB设备、LCD驱动等。

3.1. uboot 编译

在进行此步骤前,请确保已经正确配置好交叉编译环境。

针对不同开发板的配置,uboot 的编译配置也不相同,在发布的 uboot 中,编译配置由开发板型号[BOARD_NAME],内核镜像格式[IMAGE_FMT]和启动方式[BOOT]组成,格式如下

[BOARD_NAME]_[IMAGE_FMT]_[BOOT]

具体配置在 uboot/boards.cfg 文件中,可以通过以下命令快速查看开发板支持的编译配置

$ cat boards.cfg | grep [BOARD_NAME]

根据以上方法,找到对应开发板的编译选项按照以下方式进行编译:

$ make distclean

$ make [BOARD_NAME]_[IMAGE_FMT]_[BOOT]

例如开发板 phoenix 的编译配置如下:

phoenix_uImage_msc0 支持 sd 卡启动 uImage 的配置

phoenix_uImage_sfc_nor 支持 nor flash 启动 uImage 的配置

$ make distclean

$ make phoenix_uImage_sfc_nor

例如开发板 halley2 的编译配置如下:

halley2_uImage_sfc_nor 支持 nor flash 启动 uImage 的配置

$ make distclean

$ make halley2_uImage_sfc_nor

编译完成后会在当前目录下生成 u-boot-with-spl.bin 文件。即最终烧录所需的 uboot 文件。

3.2. uboot 常用命令

打开调试串口,在 uboot 启动过程中,敲击任意按键,打断 uboot 引导镜像过程,进入 uboot shell 环境,uboot 常用命令如下:

“help”命令:该命令查看所有命令,其中“help command”查看具体命令的格式。

“printenv”命令:该命令查看环境变量。

“setenv”命令:该命令设置环境变量。

“saveenv”命令:该命令保存环境变量。

“bootp”命令:该命令动态获取 IP。

“tftpboot”命令:该命令通过 TFTP 协议从网络下载文件运行。

“bootm”命令:该命令从 memory 运行 u-boot 映像。

“go”命令:该命令从 memory 运行应用程序。

“boot”命令:该命令运行 bootcmd 环境变量指定的命令。

“reset”命令:该命令复位 CPU。

“md”命令:显示内存数据。

“mw”命令:修改内存数据。

“cp”命令:内存拷贝命令。

sfc nor 命令:

:“sfcnor read” 从 spi nor flash 中读取数据到内存。

“sfcnor write” 从内存中写数据到 spi nor flash。

“sfcnor erase” spi nor flash 擦出。

Sd 卡命令:

“mmc read” 从 sd 卡中读取数据。

“mmc write” 写数据到 sd 卡。

来源(可参考)http://bbs.16rd.com/thread-479491-1-1.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31529038/viewspace-2654288/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
一牛网论坛囊括了MTK、高通、射频、PCB、嵌入式、全志、海思等技术,欢迎大家前来学习、讨论

注册时间:2018-03-29

  • 博文量
    269
  • 访问量
    354860