
uboot
文章平均质量分 88
coding__madman
爱IT & 爱生活 && no error & no warn
展开
-
一灯大师之点亮OK6410开发板上4个LED裸机程序---嵌入式回归第十篇
接着上一篇关闭mmu和cache后,这一篇来点亮开发板上的一盏LED小灯,前面所作的初始化工作基本看不到效果,其实这一段也是最麻烦的!如果有问题调试很麻烦!点亮了LED之后就可以用LED来看程序是否如预期那样运行,传说中的一灯大师就要出场了,准备好了吗?1. LED原理图分析2. 芯片手册导读3. 程序步骤流程设计4. 用代码实现功能原创 2016-04-25 22:56:44 · 2522 阅读 · 0 评论 -
uboot关闭看门狗和中断---嵌入式回归第八篇
相信做嵌入式这行的对看门狗都不陌生!1. 看门狗的作用:在嵌入式领域,有些系统需要长期运行在无人看守的环境。在运行过程中,难免不出现系统死机的情况,这时就需要系统自身带有一种自动重启的功能。watchdog一般就是一个硬件模块,其作用就是在系统死机时帮助系统实现自动重启。2. 看门狗的工作方式:watchdog在硬件上实现了计时功能,启动计时后,用户软件必须在计时结束前重新开始计时,俗称“下面的一张图可以分为三个部分:1. 时钟源PCLK ,分频器将时钟源分频出来的时钟就是Watchdog所用的时钟原创 2016-04-24 14:11:32 · 5671 阅读 · 0 评论 -
设置系统工作在SVC模式---嵌入式回归第七篇
ARM处理器有七种工作模式,对于uboot模式而已,系统工作在SVC模式,可以操作更多的资源。通过设置程序状态寄存器CPSR15(这个可以根据手册查到):可以看到这5位要设置成10011,即把GPSR15寄存器最后5位设置成10011.第一步: 将这5位全部清零 bic指令第二步: 在给某些位置1 orr指令同时这里会用到msr指令 和 mrs指令原因: 因为在访问CPSR/SPSR这两个寄存器时 ,先要把寄存器导入到通用寄存器当中做相应修改然后再写入,而不能直接修改GPSR/SPSR这两个寄存原创 2016-04-24 01:13:51 · 4618 阅读 · 0 评论 -
uboot异常向量表---嵌入式回归第六篇
异常向量表:1. 异常向量表定义:因为内部或者外部的一些事件,导致处理器停下正在处理的工作,转而去处理这些发生的事件2. 异常类型:七种异常(这个前面有提到过)3. 异常入口:可以看到Normal address这一栏 ,这个地址表示某个异常发生时,处理器会自动的跳转这个地址来执行这个地方的程序,也就是当一种异常发生的时候,ARM处理器会跳转到对应该异常的固定地址去执行原创 2016-04-24 00:37:31 · 1528 阅读 · 0 评论 -
OK6410开发板bootloader架构设计分析---嵌入式回归第五篇
在介绍bootloader嵌,先简要介绍一下汇编的相关知识!为后边的学习做铺垫!大学里面学习过汇编,之前汇编部分的视频也是一点一点的跟着国嵌的视频把代码撸出来一步一步的调试!相对学习起来还是比较容易的!比数据结构和算法简单的多了。汇编语言介绍这一部分暂时就不写笔记了!写bootloader后边会用到比较多,这里只简单的挑一些重要的介绍一下。ARM汇编分类:1. ARM标准汇编:使用AR原创 2016-04-23 16:35:37 · 4749 阅读 · 0 评论 -
使用Windows上SourceInsight工具建立分析Linux下uboot源码工程
SourceInsight软件可以说是分析查阅大型源码工程文件的神器!界面不错!功能强大!第一步:安装好SourceInsight后打开软件点击上面的Project--->new project 然后弹出对话框这里工程的名字我取成ubootProject,该工程保存在我自己在E盘建立的一个文件目录下, 点击OK设置如此然后点击OK这里我的uboot源码是原创 2016-04-17 22:25:04 · 5800 阅读 · 0 评论 -
OK6410 uboot编译以及设置uboot开机自动启动内核
1. 编译U-Boot在linux下解压缩uboot源码第二步:配置相关选项,编译出能在目标板上运行的映像文件打开顶层Makefile 可以看到这个选项这里使用编译选项然后make编译用上面的编译总是出错,然后百度查了一下,make smdk6410_config是老版本的uboot 的6410的配置选项,正确的是Makefile下面的这个然后编2.上面的 U-Boot常用命令大概可以分类为已下几种 1>帮助命令 2>环境变量相关命令 3>程序下载命令 4>内存原创 2016-04-30 21:58:36 · 4981 阅读 · 0 评论 -
ARM内部大家族详解---嵌入式回归第四篇
这里先简要说一下在不同的工作模式下有何区别:比如当一个程序运行在不同的模式下面的时候,能够运行的ARM处理器的指令是不一样的,能够访问的ARM处理器的寄存器都是不一样的!User: 普通用户模式FIQ: 快速中断模式IRQ: 普通中断模式Supervisor:保护模式(权限相对比较高)Abort:异常模式 (比如程序访问出现异常)Undefined:未定义模式(比如使用了一条未定义的汇编指令)System:系统模式(在ARMV4以上才有的模式, 用的很少)对于Linux而言,一般的应用程序原创 2016-04-17 18:11:40 · 4622 阅读 · 0 评论 -
ARM开发工具软件命令详解---嵌入式回归第三篇
程序达不到预期结果一般情况下先检查三个问题:1. 是否是运行在ARM平台上, 用命令:file 目标文件名 查看2. 查看大小端是否对 arm-linux-readelf查看3. 查看程序用到的某些库是否对 使用命令:arm-linux-readelf -d 目标文件名 (可以查看目标文件在目标板上运行必须用到哪些库,如果开发板上没有该库,则肯定是运行不了的)ARM反汇编器:在底层编程中是非常有用的!能查看汇编代码!(即如何将程序变成汇编版本)命令方式:arm-linux-objdump -D原创 2016-04-17 15:24:53 · 3286 阅读 · 0 评论 -
OK6410开发板系统安装---嵌入式回归第二篇
OK6410 ARM11开发板安装Linux嵌入式系统操作步骤!原创 2016-04-16 19:10:02 · 4633 阅读 · 0 评论 -
OK6410开发板资源介绍---嵌入式回归第一篇
一晃时隔大半年了,今天起重新开始学习国嵌的OK6410 精通嵌入式课程,之前学到第四季老大视频没更完,而且更的实在太慢了,大学那会刚开始学的时候也走了不少弯路,不过当时充满了学习的激情,前面的更的视频反复的一步一个脚印过了三遍。现在项目更新完了,时间一长,好多也忘了,现在重新温习一遍要点,顺便通过博客记录自己的学习心得!我要努力成功!我要努力赚很多的钱!就是这么赤裸裸!自己的开发板介绍:1原创 2016-04-16 15:38:17 · 3762 阅读 · 1 评论 -
OK6410的uboot关闭mmu和cache---嵌入式回归第九篇
接着上一篇设置系统为SVC模式,关闭看门狗,关闭中断,下面就根据正对ok6410架构分析上的来关闭mmu和cache.虽说是重复造轮子,但对学习来说也是一种很好的方法,我要一步一步努力向上爬!1. 先来介绍ARM的存储体系从上到写依次存储访问速度下降,容量增大!同时价格也不是一个档次!2. Cache简介:Cache是一种容量小但存取速度非常快的存储器,它保存最近用到的存储器中数据的拷贝,对于程序员来说,Cache是透明的,它自动决定保存那些数据、覆盖那些数据,按照功能划分I-Cache: 指令C原创 2016-04-24 15:50:05 · 1354 阅读 · 0 评论