上一页 1 2 3 4 5 6 7 8 ··· 16 下一页
摘要: 28.时钟初始化 ARM系统时钟初始化: 这就需要知道什么是时钟脉冲信号,什么是时钟频率,什么是时钟源。 时钟脉冲信号: 时钟脉冲信号:按一定的电压幅度,一定的时间间隔连续发出的脉冲信号。时钟脉冲信号是时序逻辑的基础,它用于决定逻辑单元中的状态何时更新。数字芯片中众多的晶体管都工作在开关状态,它们的 阅读全文
posted @ 2016-02-14 10:22 cestlavie 阅读(647) 评论(0) 推荐(0) 编辑
摘要: 27.点亮led的操作 Led可以作为我调试程序的工具:在嵌入式系统软件,例如Bootloader和kernel,在开发初期,由于串口等硬件尚未被初始化,因此调试手段相当有限,这时候可以采用Led来作为调试手段。 OK6410有关led的原理图: 从上图知道,要让led发光二极管,就是从右到左导通, 阅读全文
posted @ 2016-02-14 10:18 cestlavie 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 26.核心初始化之关闭MMU和cache 下面看看ARM存储体系: 可以看到速度最快的是处理器和内部寄存器,他们的数量很少,价格很昂贵。接着是TCM紧耦合存储器:cache和main memory。速度最慢的是外部存储介质:Flash和SD卡等。 CACHE: 上面是两种访存的两种机制,一种是处理器 阅读全文
posted @ 2016-02-14 10:17 cestlavie 阅读(911) 评论(0) 推荐(0) 编辑
摘要: 25.核心初始化之中断屏蔽-210 在210中屏蔽中断的机制和6410是一样的。而且两者都是向量中断,很多中断都是硬件实现的,不像2440。 但是在210中的中断屏蔽寄存器有4个: 四组屏蔽寄存器的地址: 所以屏蔽中断就是把上面的四个屏蔽寄存器设置为全1,设置为0仍是没有影响。 代码实现: 编译: 阅读全文
posted @ 2016-02-14 10:15 cestlavie 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 24.核心初始化之中断屏蔽-6410 打开6410的芯片手册,在12.VECTORED INTERRUPT CONTROLLERS向量中断控制寄存器。向量中断(6410、210)很多时候是使用硬件来完成中断的跳转的。 下面的最后一个寄存器VICxINTENABLE,功能是Interrupt Enab 阅读全文
posted @ 2016-02-14 10:14 cestlavie 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 23.核心初始化之中断屏蔽-2440 在上一节中,我在设置关闭看门狗的时候,已经把WTCON的[2]设置为0,屏蔽了中断。如下图: 这一节是要屏蔽中断寄存器: 下面是2440芯片处理中断的机制: 中断屏蔽寄存器: 可以看到,只要把中断对应的中断屏蔽寄存器对应的位置为1即可。所以屏蔽中断就是往中断屏蔽 阅读全文
posted @ 2016-02-14 10:13 cestlavie 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 22.核心初始化之看门狗 看门狗定时器,在嵌入式领域,有些设备需要工作一些极端的环境,就是人很少到或者很难到的地方。在长期的运作中,难免会出现故障死机的情况,这时,如果派人去查看情况,耗费耗时等,所以人们就设置了一种机制,就是系统里有一个重启的机制叫看门狗定时器。它工作的方式:就是系统的watchd 阅读全文
posted @ 2016-02-14 10:12 cestlavie 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 21.核心初始化之svc模式 要设置系统工作svc特权模式,从前面的学习知道这需要设置CPSR程序状态寄存器。 在ARM Architecture Reference Manual.pdf文档中,2.Programmers' Model的2.5.Program status register。 可以 阅读全文
posted @ 2016-02-14 10:11 cestlavie 阅读(1210) 评论(0) 推荐(0) 编辑
摘要: 20.核心初始化之异常向量表 一、异常向量表: 包含:1.异常定义 2.异常类型 3.异常入口 4.向量表 首先异常定义,在ARM Architecture Reference Manual.pdf文档中,2.Programmers' Model的2.6.Exceptions异常: 异常:因为内部或 阅读全文
posted @ 2016-02-14 10:10 cestlavie 阅读(818) 评论(0) 推荐(0) 编辑
摘要: 19.Bootloader框架设计 在前面的uboot代码分析知道,uboot的启动有三个步骤BL0,BL1,BL2。由于BL0是固化程序,厂商提供的,所以不用考虑。所以Bootloader框架就剩下设计BL1和BL2了。 2440开发板: 6410和210: 阅读全文
posted @ 2016-02-14 10:09 cestlavie 阅读(311) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 16 下一页