SP(R13)
特殊寄存器
LR(R14)
1、当存在子程序时,保存有子程序的返回地址
2、当异常中断发生时,保存有异常模式的返回地址
PC(R15)
保存程序的当前地址
例 :(bootloader中start.S文件)
reset:
bl set_svc @设定svc模式,bl跳转至相应分支
bl disable_watchdog @关闭开门狗
set_sv
mrs r0, cpsr @Current Program Status Register(CPSR)当前程序状态寄存器 ,mrs(move register from special register)
bic r0, r0, #0x1f @按位取反
orr r0, r0, #0xd3 @按位取或
msr cpsr, r0 @mrs(move special register from register)
mov pc, lr @返回
#define pWTCON 0x53000000 @watchdog control register
disable_watchdog: @disable watchdog branch
ldr r0, =pWTCON @将地址装载至寄存器
mov r1, #0x0
str r1, [r0] @存储数据到内存
mov pc, lr @返回
注意:
mov 指令只能用于通用寄存的传送;
ldr 与str 是内存与数据之间的传送;
关键字:ARM 特殊寄存器
引用地址:
ARM中的特殊寄存器
推荐阅读最新更新时间:2024-03-16 16:10
ARM 平台上的Linux系统启动流程
开始学习嵌入式开发就一直在使用Linux系统作为学习的平台,到现在无论是PC机还是ARM开发板都已经能顺利地跑起了Linux系统,但是对Linux 的启动流程还是不甚了解。于是开始各种百度谷歌,当然看到了各路大神写的介绍。总的来说就是:bootloader - kernel- root filesystem,当然还介绍了哪个阶段完成了哪些工作。比如bootloader 是一上电就拿到cpu 的控制权的,而bootloader实现了硬件的初始化。bootloader俨然就成了power on 之后 第一个吃螃蟹 的代码。 谈到这就得想到硬件机制是如何满足这个功能的了。就拿S3C2440 这个芯片来说(我的硬件平台就是拿这个芯片
[单片机]
二、冯式结构与哈佛结构及ARM处理器状态和处理器模式
2.1 冯式结构与哈佛结构 2.1.1 两者的区别 如果是独立的存储架构和信号通道那就是哈佛结构,否则就是冯式结构 结构与是否统一编址没有关系,也与 CPU 没有关系,与计算机的整体设计有关 CACHE 的引入(CPU 内部哈佛结构) 总结:高性能单片机的为冯式结构,单片机为哈佛结构 8086 冯式结构 相同存储(RAM) 相同的通道 统一编址 STM32F103 哈佛结构 不同的存储(ROM/RAM) 不同的通道 统一编址 8051 改进型的哈佛结构 不同的存储(ROM/RAM) 相同的通道 独立编址 ARM9 改进型的冯式结构 相同的存储(RAM/ROM) 不同的通道 统一编址 2.
[单片机]
基于ARM9和USB摄像头的网络视频采集系统设计
0 引言 通信网络已经普及到人类生活的各个方面,布控区域广阔的网络视频采集系统也在迅速的发展,嵌入式视频采集系统的服务器直接连入已经建成的网络,既没有线缆长度的限制,也没有信号衰减的限制,通过没有距离概念的网络,彻底抛弃了地域的限制。系统具有几乎无限的无缝扩展能力,所有设备都以IP地址划分,增加设备只是意味着IP地址的增加,可组成非常复杂的视频采集系统,服务器输出的视频数据已完成模拟到数字的转换并压缩,采用TCP/IP协议在网络上传输,支持跨网关、跨路由器的远程视频信息传输。 本文根据网络视频采集的需要,将网络传输与视频采集相结合,设计了以S3C2440为核心的USB摄像头视频采集和嵌入式Linux系统下的视频服务器,从而实
[单片机]
专用于ARM的NI LabVIEW嵌入式模块进行嵌入式系统教学
通过一系列面向机器人开发的实验室实践课程与团队项目,吸引电子工程和计算机科学学院的同学们积极投入嵌入式系统设计。 The Solution: 采用专用于ARM单片机的NI LabVIEW嵌入式模块,对连接到iRobot Create移动机器人平台的Cortex-M3单片机编程,使得同学们可开发一个嵌入式系统,与具有实时约束的真实世界进行交流。 加州大学伯克利分校工程师采用专用于ARM单片机的NI LabVIEW嵌入式模块,对连接到iRobot Create移动机器人平台的Cortex-M3单片机编程,使得同学们可开发一个嵌入式系统。 通过使用LabVIEW,同学们可以更快地开发复杂的功能,使整个过程
[测试测量]
ARM-Linux自动创建设备结点
硬件平台:FL2440 内核版本:2.6.28 主机平台:Ubuntu 11.04 内核版本:2.6.39 1、首先配置busybox busybox Linux System Utilities --- mdev Support /etc/mdev.conf Support command execution at device addition/removal 2、配置内核 3、修改文件系统里的/etc/init.d/rcS #!/bin/sh /bin/mount -a /sbin/ifconfig eth0 192.168.0.3 up #exec /usr/etc/rc.mouse
[单片机]
国内首个ARM架构云平台发布 完善国产芯片生态产业链
中新网贵阳10月13日电 (记者 刘鹏)13日,国内首个完全基于ARM商业架构的云平台“ARM架构云平台”在贵阳发布。该平台的推出旨在吸引和集成ARM阵营在芯片、硬件、软件平台的上下游产业链,从而推动国产服务器芯片领域的应用开发,完善和融合产业生态系统。 据了解,“ARM架构云平台”的建立基于贵州华芯通半导体技术有限公司生产的ARM架构中央处理器,充分利用了该服务器CPU的高性能、低功耗和低成本的优势。同时,基于华芯通半导体的服务器参考评估设备(REP),并通过与云服务提供商——云上贵州大数据产业发展有限公司(以下简称:云上贵州)合作,实现了典型的云服务应用。 华芯通半导体由贵州省及美国高通公司共同出资成立,注册地为贵州贵安新区,
[网络通信]
基于ARM的嵌入式Linux移植真实体验(5)――应用实例
应用实例的编写实际上已经不属于Linux操作系统移植的范畴,但是为了保证本系列文章的完整性,这里提供一系列针对嵌入式Linux开发应用程序的实例。 编写Linux应用程序要用到如下工具: (1)编译器:GCC GCC是Linux平台下最重要的开发工具,它是GNU的C和C++编译器,其基本用法为:gcc 。 我们应该使用arm-linux-gcc。 (2)调试器:GDB gdb是一个用来调试C和C++程序的强力调试器,我们能通过它进行一系列调试工作,包括设置断点、观查变量、单步等。 我们应该使用arm-linux-gdb。 (3)Make GNU Make的主要工作是读进一个文本文件,称为makefile。这个文件记
[单片机]
uC/OS-II在ARM系统上的移植与实现
摘要:使用ARM公司提供的ADS 开发工具,将uC/ OS - II 移植到ARM 处理器上,并将移植结果应用在跑马灯和数码管的实现上,运行正常,表明移植成功.
关键词:uC/ OS - II ;ARM;移植
0 引言
在开发嵌入式系统时,一般选择基于ARM 和uC/ OS - II 的嵌入式开发平台,因为ARM 微处理器具有处理速度快、超低功耗、价格低廉、应用前景广泛等优点 . 将uC/ OS - II 移植到ARM 系统之后,可以充分结合两者的优势. 如果一个程序在一个环境里能工作,我们经常希望能将它移植到另一个编译系统、处理器或者操作系统上,这就是移植技术.移植技术可以使一种特定的技术在更加广泛的范围使用,使软件使用更
[应用]