OK6410之bootloader设计指南

来源:互联网 发布:淘宝买到假货店铺关闭 编辑:程序博客网 时间:2024/05/09 11:58

1. 核心初始化

1.1 设置中断向量表

    OK6410开发板对应的ARM处理器中断异常向量表如下,按照如下地址设置中断异常向量表。



ldr pc, _undefined_instruction
ldr pc, _software_interrupt
ldr pc,_prefetch_abort
ldr pc, _data_abort
ldr pc,_not_used
ldr pc, _irq
ldr pc, _fiq

_undefined_instruction:
.word  undefined_instruction
_software_interrupt:
.word software_interrupt
_prefetch_abort:
.word prefetch_abort
_data_abort:
.word data_abort
_not_used:
.word not_used
_irq:
.word irq
_fiq:
  .word fiq
_reset:
.word reset


undefined_instruction:
nop
software_interrupt:
nop
prefetch_abort:
nop
data_abort:
nop
not_used:
nop
irq:
nop
fiq:
nop

1.2 设置cpu到SVC模式

1.3 关闭看门狗

1.4 关闭所有中断

1.5 关闭MMU和所有中断

1.6 外设基地址初始化

2. 第一阶段初始化

2.1 初始化时钟

2.2 初始化memory

2.3 将内部iRAM中的bootloader代码复制到外部RAM内存中

2.4 C语言环境之初始化栈

2.5 C语言环境之初始化bbs

2.6 C语言环境之跳转到main入口

3.第二阶段初始化

3.1 mmu初始化

3.2 中断初始化

3.3 串口初始化

3.4 网卡初始化

3.5 LCD初始化

3.6 解析用户执行命令



原创粉丝点击