ARM 公司在32 位RISC 的CPU 开发领域不断取得突破, 其结构已经从V3 发展到V6。BSP( Board Support Package)板级支持包介于主板硬件和操作系统之间,其功能与PC机上的BIOS 相类似, 主要完成硬件初始化并切换到相应的操作系统。BSP 是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks 的BSP 和Linux 的BSP 相对于某一CPU 来说,尽管实现的功能一样,可是写法和接口定义是完全不同的。另外,仔细研究所用的芯片资料也十分重要,例如尽管ARM 在内核上兼容,但每家芯片都有自己的特色。所以这就要求BSP 程序员对硬件、软件和操作系统都要有一定的了解。
本文介绍基于ARM 体系的嵌入式应用系统初始化部分BSP 的程序设计。本文引用的源码全部是基于HMS320C7202 芯片设计,并已成功运行。
1 ARM 开发教程之初始化过程
尽管各种嵌入式应用系统的结构及功能差别很大, 但其系统初始化部分完成的操作有很大一部分是相似的。嵌入式系统的启动流程如图1 所示。
1.1 设置入口指针
启动程序首先必须定义指针, 而且整个应用程序只有一个入口指针。一般地, 程序在编译链接时将异常中断向量表链接在0 地址处,并且作为整个程序入口点。入口点代码如下:ENTRY ( _start) ;开始
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !