
ARM 基础
文章平均质量分 76
wang-bob
嵌入式系统开发和研究
展开
-
S3C2410A的异常机制[中断处理]
<br />以YLE2410A开发板为例,说说ARM的异常是如何处理滴。<br /> <br /> <br />;Pre-defined constants<br />USERMODE EQU 0x10<br />FIQMODE EQU 0x11<br />IRQMODE EQU 0x12<br />SVCMODE EQU 0x13<br />ABORTMODE EQU 0x17<br />UNDEFMODE EQU 0x1B<原创 2010-12-20 11:15:00 · 2256 阅读 · 0 评论 -
浅谈volatile的作用
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables) 3). 多线程应用中被几个任务共享的变量 回答不出这个问题的人是不会被雇佣的。我认为这是原创 2011-05-16 09:56:00 · 1126 阅读 · 0 评论 -
ARM BL或中断返回需要注意的一些细节问题
上图为ARM处理器的各个状态下的寄存器示意图1: ARM3级流水线由ARM7-TDMI-S技术参考手册P2可知,ARM的流水线结构为: 取指----->译码------>执行ARM代码: PC PC- 4 PC - 8 0x1008 0x1004 0x1000在此页,还注明,PC是指向被取指的指令,而不是正在执行的指令。(也就是说在此 PC值为0x1008 ?)2: 当发生BL跳转前,会在寄存器 R14 (原创 2011-05-16 13:46:00 · 1858 阅读 · 0 评论 -
ARM 指令集版本和ARM 版本
在GCC编译中,常常要用到 -march, -mcpu等。他们分别表达什么涵义呢?ARM(Advanced RISC Machines)是微处理器行业的一家知名企业。设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。1985年,第一个ARM原型在英国剑桥诞生。ARM公司的特点是只设计芯片,而不生产。ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商...原创 2012-12-29 15:39:18 · 1743 阅读 · 0 评论