- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式BootLoader技术
阶段1 1.关WATCH DOG (disable watch dog timer) 上电后,WATCH DOG默认是开着的 2.禁止所有中断 (disable all interrupts) vivi中不会用到中断,中断是系统的事,bootloader可不能去干这事的(不过这段代码实在多余,上电后中断默认是关闭的) 3.初始化系统时钟启动MPLL,FCLK=200MHz,HCLK=100MHz,PCLK=50MHz,“CPU bus mode”改为“Asynchronous bus mode”。 4.初始化内存控制寄存器(memsetup):S3c2440共有15个寄存器,在此开始初始化13个寄存器。 5.检查是否从掉电模式唤醒(Check if this is a wake-up from sleep)若是,则调用WakeupStart函数进行处理。 6.点亮所有LED (All LED on)点一下灯,通知外面的同志,告诉他们有情况发生。 7.初始化UART0 (set GPIO for UART InitUART) (1)设置GPIO,选择UART0使用的引脚 (2)初始化UART0,设置工作方式(使用FIFO)、波特率115200 8N1、无流控等。这可是使用串口与s3c2440通信的条件啊,在终端也要如此设置。 8.跳到内存测试函数 9.如果定义了以Nand flash方式启动,则此时要将vivi所有代码(包括阶段1和阶段2)从Nand flash复制到SDRAM中 (1)设置nand flash控制寄存器 (2)设置堆栈指针 (3)设置即将调用的函数nand_read_ll的参数 (4)调用nand_read_ll进行复制 10.跳到bootloader的阶段2运行,亦即调用init/main.c中的main函数(get read to call C functions) (1)重新设置堆栈 (2)设置main函数的参数 (3)调用main函数 阶段2 从init/main.c中的main函数开始,终于步入C语言的世界了。Main函数总共有5步 1、Step 1:reset_handler() 2、Step 2:board_init() board_init调用2个函数用于初始化定时器和设置各GPIO引脚功能 3、Step 3:建立页表和启动MMU mem_map_init函数用于建立页表 mmu_init()函数用于启动MMU 4、Step 4:heap_init()??? 第4步调用了heap_init(void)函数,并返回值。该值是函数heap_init()调用的mmalloc_init()函数的返回值。其实,这步就是申请一块内存区域。 5、Step 5:mtd_dev_init()? 在linux系统中,我们通常会用到不同的存储设备,特别是FLASH设备。为了在使用新的存储设备时,我们能更简便地提供它的驱动程序,在上层应用和硬件驱动的中间,抽象出MTD设备层。驱动层不必关心存储的数据格式如何,比如是FAT32、ETX2还是FFS2或其它。它仅仅提供一些简单的接口,比如读写、擦除及查询。如何组织数据,则是上层应用的事情。MTD层将驱动层提供的函数封装起来,向上层提供统一的接口。这样,上层即可专注于文件系统的实现,而不必关心存储设备的具体操作。 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 嵌入式系统原理及应用教程 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 第8章 嵌入式系统Boot Loader技术 (第2版) 主讲内容 第8章 嵌入式系统Boot Loader技术 第9章 嵌入式Linux操作系统移植 第10章 嵌入式Linux设备驱动程序开发 第11章 嵌入式Linux应用程序设计 BootLoader(vivi)的代码分析 8.2 Boot Loader的基本概念 8.1 8.1?Boot Loader的基本概念 Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系
您可能关注的文档
- 人防工程竣工验收流程图.DOC
- 介护记录基准.DOC
- 人间仙境-三清山-959717com.PPT
- 介绍香港迪士尼乐园.PPT
- 亿万颗心为女排姑娘高悬.DOC
- 他的名字叫做公输班.PPT
- 仓储实训配送实训物流事故处理助理物流师认证快递分拨生产性实训.PPT
- 他首先看看工匠们所装饰的寺庙.PPT
- 以致扩大彼此的沟通障碍.PPT
- 企业并购交易政策实施细则.DOC
- Unit7CareersLesson2CareerSkills课件高中英语北师大版选择性3.pptx
- 四川省广安第二中学高三下学期二模物理试卷.docx
- Module2Unit1ShelearntEnglish(课件)英语五年级下册3.pptx
- Unit2ie(课件)牛津英语自然拼读世界第三级 4.pptx
- Unit4Whenistheartshow_PBReadandwritetwonewkittens(课件)人教PEP版英语五年级下册 2.pptx
- Unit2WildlifeProtectionListeningandTalking课件高中英语人教版.pptx
- 黑龙江省大庆实验中学高三得分训练(二)文科综合试题.docx
- 第11课《山地回忆》教学设计-统编版语文七年级下册(1).docx
- 《和田的维吾尔》2教学文案.ppt
- 7.1力课件教科版物理八年级下册【05】.pptx
最近下载
- 2025年幼儿园教师招聘考试专业理论基础知识模拟试题及答案解析(共四套).docx VIP
- RBA8.0手册+程序文件+表单(格式可转换WORD).pdf
- 第六课++传承核心思想理念 -2025学年七年级道德与法治全一册下学期期中考 (统编版五四学制2024).pptx VIP
- 17J008:挡土墙(重力式、衡重式、悬臂式).docx VIP
- 论人力资源管理在企业发展中的作用.docx VIP
- Q_UALW 001-2017博落回提取物.pdf
- 中医护理科普比赛.pptx
- 【水利课件】8 面板堆石坝.ppt
- 测量与地理信息系统(MGIS)作业指导书.doc VIP
- 管理制度的全面协同与协作 .pdf VIP
文档评论(0)