网站大量收购独家精品文档,联系QQ:2885784924

从44b0到2410移植.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
从44b0到2410移植

44b0 到2410 移植 44b0 到2410 移植 看本文件请参考《都江堰操作系统与嵌入式系统设计》中地15 章。 因44b0 和2410 同属ARM 系列,指令集相差很小,移植工作主要集中在启动代码、主频配置、 与外设相关的东西:时钟嘀嗒、文件系统的芯片驱动、中断系统、键盘扫描、串口驱动上。 Msk 掉的中断,44b 的pend 寄存器中还有反映,2410 则没有,但在srcpnd 上有。 1. 配置文件 config.h 文件中,只需要修改主频相关和中断源数量,如下: #define cn_mclk (152*M) //主频 #define cn_hclk (cn_mclk/2) //高速外设时钟 #define cn_pclk (cn_mclk/4) //低速外设时钟 #define cn_timer_clk cn_pclk //定时器输入时钟 #define cn_int_num 32 //2410 有32 个中断源. 2. 启动代码 启动代码即initcpu.s 文件,该文件在44b0 和2410 中分别完成的工作如下: 44b0 2410 在复位及异常向量处放置一条跳转指令。 在复位及异常向量处放置一条跳转指令。 _start: _start: b reset_start b reset_start b except_undef b except_undef b except_swi b except_swi b except_pabort b except_pabort b except_dabort b except_dabort b . b . subs pc,lr,#4 b start_int subs pc,lr,#4 b . 最后两行对应的是IRQ 和FIQ 向量,因44b0 FIQ 向量对应死循环,是因为djyos 没有使 版本使用了cpu 的向量中断功能,按cpu 说明书 用2410 的FIQ 中断 要求这样写。 放置中断向量表,向量地址在int.s 文件中定 直接以一条 b start_int 跳至IRQ 程序入口。 义。这26 个向量的放置地址是由44b0 的中断控 制器要求指定的,必须从0x20 开始依次放置,空 缺的地址用b .填充。 把cpu 状态设置为SVC 模式 同左 禁止看门狗,44b0 cpu 内部包含一个硬件看门狗 同左 外设时钟就是主时钟,无需设置 设置外设时钟与主时钟的分频关系 设置倍频器,打开所有外设时钟。注:在节能产 同左 品中,不要这样做,应该只打开使用到的设备时 钟,在给设备的driver 中打开。 配置内存控制器参数,这些参数控制了存储器的 同左 读写时序 把sdram 所在的0xc000000~0xc7fffff 区间设 设置mmu 页表,djyos 的si 模式是平板内存 置为可被cache 区。打开指令和数据cache 。 模式,按段模式把 4G 存储空间直接映射到物理 地址就可以了。 在sdram 所在的00x33ffffff 区间

您可能关注的文档

文档评论(0)

ayangjiayu4 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档