摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6558233++++++++++++++++++++++++++++++++++++++++++The Advanced Microcontroller Bus Architecture (AMBA) specification defines an on-chip communications standard for designing high-performance 阅读全文
posted @ 2011-06-21 11:54 little_raptor 阅读(3862) 评论(0) 推荐(1) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556451++++++++++++++++++++++++++++++++++++++++++1系统调用操作系统的主要功能是为应用程序的运行创建良好的环境,保障每个程序都可以最大化利用硬件资源,防止非法程序破坏其它应用程序执行环境,为了达到这个目的,操作系统会将硬件的操作权限交给内核来管理,用户程序不能随意使用硬件,使用硬件(对硬件寄存器进行读写)时要先向操作系统发出请求 阅读全文
posted @ 2011-06-20 15:42 little_raptor 阅读(3457) 评论(0) 推荐(0) 编辑
摘要: 由semihosting知识可知,semihosting只是将目标系统中的IO请求交给了调试环境来处理,但是在嵌入式系统实际应用中,往往嵌入式系统和主机调试环境是独立的,而嵌入式系统又想使用标准输入输出中的库函数,这时就要使用硬件重定向技术。应用程序中对外设的IO请求实际是对低层最基本IO硬件的封装,例如printf()函数,其实是对将数据写入到显示器相应寄存器的抽象封装,用户不用关心具体使用了什么硬件机制,也不用关心具体怎么将其打印到屏幕上。在ADS开发环境中,semihosting低层也进行了封装。在嵌入式应用系统中,常常需要重新实现一些低级的IO功能,以适应目标系统的具体情况。像这种将底 阅读全文
posted @ 2011-06-20 15:35 little_raptor 阅读(1700) 评论(1) 推荐(2) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556324++++++++++++++++++++++++++++++++++++++++++应用程序在执行过程中经常会和主机有IO交互请求,例如C程序中的printf,该系统函数被执行时,会通过软件中断将printf请求提交给操作系统内核,内核将printf要打印的数据拷贝到内核空间,通过调用显示器驱动程序接口,将数据显示到显示器上。如下图所示:图3-10本地主机IO请 阅读全文
posted @ 2011-06-20 15:06 little_raptor 阅读(533) 评论(0) 推荐(0) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556258++++++++++++++++++++++++++++++++++++++++++中断源按照硬件位置分为外部中断源和内部中断源,外部中断源和内部中断源又包含子外部中断源和子内部中断源,如上图所示(画了一整天)。1.子内部中断源的产生以UART0接收数据产生INT_RXD0中断为例,INT_RXD0产生后进入SUBSRCPND子中断源暂存寄存器,设置INT_RX 阅读全文
posted @ 2011-06-20 14:40 little_raptor 阅读(830) 评论(0) 推荐(0) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556195++++++++++++++++++++++++++++++++++++++++++1.1ARM处理器异常处理所谓异常就是正常的用户程序被暂时中止,处理器就进入异常模式,例如响应一个来自外设的中断,或者当前程序非法访问内存地址都会进入相应异常模式。1.1.1异常分类(1)复位异常当CPU刚上电时或按下reset重启键之后进入该异常,该异常在管理模式下处理。(2) 阅读全文
posted @ 2011-06-20 14:19 little_raptor 阅读(1817) 评论(0) 推荐(0) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556186++++++++++++++++++++++++++++++++++++++++++1.1S3C2440系统中断CPU和外设构成了计算机系统,CPU和外设之间通过总线进行连接,用于数据通信和控制,CPU管理监视计算机系统中所有硬件,通常以两种方式来对硬件进行管理监视:l查询方式:CPU不停的去查询每一个硬件的当前状态,根据硬件的状态决定处理与否。好比是工厂里的检 阅读全文
posted @ 2011-06-20 14:17 little_raptor 阅读(3075) 评论(1) 推荐(2) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556172++++++++++++++++++++++++++++++++++++++++++1.1.1ARM处理器模式切换(含MRS,MSR指令)除了用户模式和系统模式,其余模式下都有一个私有SPSR保存状态寄存器,用来保存切换到该模式之前的执行状态,之所以用户模式和系统模式没有SPSR是因为,通常CPU大部分时间执行在用户模式下,当产生异常或系统调用时会分别切换进入另 阅读全文
posted @ 2011-06-20 14:13 little_raptor 阅读(2943) 评论(0) 推荐(1) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556163++++++++++++++++++++++++++++++++++++++++++1.1.1ARM处理器不同模式下寄存器CPU的模式不同,在其对应模式下可以使用的寄存器也不相同,如表3-2所示:表3-2 ARM处理器模式下寄存器寄存器类别寄存器在汇编中的名称各模式下实际访问的寄存器用户系统管理终止未定义中断快中断通用寄存器和程序计数器R0(a1)R0R1(a2 阅读全文
posted @ 2011-06-20 14:11 little_raptor 阅读(553) 评论(0) 推荐(0) 编辑
摘要: ++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.csdn.net/mr_raptor/article/details/6556157++++++++++++++++++++++++++++++++++++++++++1.1ARM处理器工作模式ARM处理器共有7种工作模式,如表3-1所示:表3-1 ARM处理器工作模式处理器工作模式特权模式异常模式说明用户(user)模式用户程序运行模式系统(system)模式该组模式下可以任意访问系统资源运行特权级的操作系统任务一般中断(IRQ)模式通常由系 阅读全文
posted @ 2011-06-20 14:10 little_raptor 阅读(929) 评论(0) 推荐(1) 编辑