我是靠谱客的博主 丰富荔枝,最近开发中收集的这篇文章主要介绍【ARM从裸机到uboot 1 】基于全志A20ARM裸机开发流程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

ARM裸机开发流程

  • 启动方式
  • SD卡启动
  • SD卡中的程序
  • 从程序到SD卡

启动方式

上电后芯片内部固有的一段程序会先通过boot控制引脚从不同的存储器加载程序,即bootloader,bootloader将会初始化ddr,设置堆栈,中断向量表等,最后启动操作系统。
A20 启动方式如图在这里插入图片描述

SD卡启动

#。如果UBOOT_SEL为1将首先检测SD0,那么问题来了,它是如何知道sd卡里面就是程序,而不是其他数据,如果没有辨别机制将导致开机时系统与sd卡不能共用,那么接下来就说说这个检测机制
#。这个检测方式就是在程序前面加一个头部,不同的芯片会有不同的添加工具,当芯片检测到头部,它就会读取运行头部后面的程序,并运行。A20的加头工具,在裸机开发第一节贴出源码和使用方式
#。故,我们只需要写好程序加好头部,下载程序,插入sd卡到芯片。

SD卡中的程序

#。终于芯片可以开始运行我们的程序了,可我们要怎样让程序跑起来呢,直接C语言,<( ‵□′)>豪横,printf(“led1给老子闪起来”); ,⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄它可不鸟你,你还是的按它的来,,,
#。最直接的就是通过用户手册,用汇编控制寄存器,<( ‵□′)>豪横 点灯 如果你愿意,全程.s也,,,没啥问题,
#。如果要简单点,哪就需要先用汇编设置芯片模式,设置堆栈,引导到C语言main函数,然后就可以用C语言写程序了

从程序到SD卡

#。写好了汇编程序,引导的C语言 接下来就需要将程序通过arm-gcc编译,链接最后形成 *.bin文件,然后通过头部添加工具添加头部形成新的 *.bin文件,最后通过dd命令下载bin文件到SD卡,插卡,亮灯。

最后

以上就是丰富荔枝为你收集整理的【ARM从裸机到uboot 1 】基于全志A20ARM裸机开发流程的全部内容,希望文章能够帮你解决【ARM从裸机到uboot 1 】基于全志A20ARM裸机开发流程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部