- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言的初始化 嵌入式系统的初始化过程 嵌入式系统的初始化过程 硬件初始化阶段 1、复位向量 ENTRY b ResetHandler ;for debug b HandlerUndef ;handlerUndef b HandlerSWI ;SWI interrupt handler b HandlerPabort ;handlerPAbort b HandlerDabort ;handlerDAbort b . ;handlerReserved b HandlerIRQ b HandlerFIQ 嵌入式系统的初始化过程(2) 硬件初始化阶段 2、最小硬件初始化 1)设置适当的寄存器,使嵌入式处理器处于一个已知的状态: 获得CPU的类型; 获得或设置CPU的时钟频率。 2)禁止中断和高速缓存 3)初始化内存控制器、内存芯片和高速缓存单元,包括: 得到内存的开始地址; 得到内存的大小; 如果有要求,则还需要进行主存测试; 嵌入式系统的初始化过程(3) 硬件初始化阶段 3、其余硬件初始化 1)引导代码调用合适的函数对目标机系统上的全部硬件部件进行初始化,包括: 建立执行处理程序 初始化中断处理程序 初始化总线接口 初始化板级外设得到内存的开始地址; 嵌入式系统的初始化过程(4) RTOS初始化阶段 4、RTOS初始化 1)RTOS初始化 2)RTOS对象和服务初始化 任务 信号量 定时器 中断 内存管理 3)RTOS任务堆栈初始化 4)RTOS扩展部件初始化 5)启动RTOS ARM7TDMI系统初始化的一般过程 启动(系统上电/复位) 从程序入口点 关闭中断 初始化时钟等硬件相关寄存器 初始化存储器系统 初始化C所需要的存储器空间 调用C入口函数 一、设置程序入口指针 上电复位后直接到程序入口点执行,入口点一般为一个跳转表,跳转到复位处理程序处开始执行ARM7TDMI系统的初始化; 启动程序首先必须定义入口指针,而且整个应用程序只有一个入口指针 例:AREA Boot,CODE,READONLY ENTRY /*设置程序入口指针*/ 二、设置中断向量 ARM要求中断向量必须设置在从O址开始,连续8*4字节的地址空间; 向量表包含一系列跳转指令,跳转到相应的中断服务程序; 对各未用中断,使其指向一个含返回指令的哑函数,以防止错误中断引起系统的混乱; 中断向量表的程序 AREA Boot,CODE,READONLY ENTRY B Reset_handler B Undef_Handler B SWI_Handler B PreAbort_Handler B .;for reserved interrupt,stop here B IRQ_handler B FIQ_handler 三、初始化时钟和设置相关的寄存器 通过设置时钟控制器来确定CPU的工作频率,设置中断控制寄存器屏蔽中断 四、初始化存储器系统 存储器类型和时序配置(参考芯片手册,设置与内存映射相关的寄存器) 一个复杂的系统可能存在多种存储器类型的接口,需要根据实际的系统设计对此加以正确配置。对同一种存储器类型来说,也因为访问速度的差异,需要不同的时序设置。 通常Flash 和SRAM 同属于静态存储器类型,可以合用同一个存储器端口; 而DRAM 因为动态刷新和地址线复用等特性,通常配有专用的存储器端口。 存储器端口的接口时序优化是非常重要的,影响到整个系统的性能。因为一般系统运行的速度瓶颈都存在于存储器访问,所以存储器访问时序应尽可能地快;但同时又要考虑由此带来的稳定性问题。只有根据具体选定的芯片,进行多次的测试之后,才能确定最佳的时序配置。 存储器地址分布 有些系统具有非常灵活的存储器地址分配特性,进行存储器初始化设计的时候一定要根据应用程序的具体要求来完成地址分配。 一种典型的情况是启动ROM 的地址重映射(remap)。当一个系统上电后程序将自动从0 地址处开始执行,因此在系统的初始状态,必须保证在0 地址处存在正确的代码,即要求0 地址开始处的存储器是非易性的ROM 或Flash 等。但是因为ROM 或Flash 的访问速度相对较慢,每次中断发生后都要从读取ROM 或Flash 上面的向量表开始,影响了中断响应速度。因此有的系统便提供一种灵活的地址重映射方法,可以把0 地址重新指向到RAM 中去。在这种地址映射的变化过程当中,程序员需要仔细考虑的是程序的执行流程不能被这种变化所打断。 ROM地址的重映射 (remap) 0x0200 (boot code) 0x0100 (Reset_handler) …… B R
您可能关注的文档
- 人教版高中地理必修一第一章第二节太阳对地球的影响.ppt
- 七年级上册语文第一单元第一课在山的那边.ppt
- 七年级下《过零丁洋》.ppt
- 9、民族政权并立的时代.ppt
- 七年级下册作文怎样选材.ppt
- 七年级下册第五单元作业本答案2012.5.ppt
- 9上6第25课-2词五首.ppt
- 人教版高中英语必修三Unit1Reading阅读课件.ppt
- 9动词时态与语态.ppt
- 9年级英语Unit3单元复习.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)