
ARM学习笔记:关键概念与实战技巧
下载需积分: 10 | 238KB |
更新于2024-11-01
| 103 浏览量 | 举报
收藏
"ARM学习笔记"
本文档主要涵盖了ARM架构的学习笔记,由作者曾生伟整理,旨在帮助初学者理解和掌握ARM处理器的相关知识。笔记中包含了常见的英文缩写解释、MAM和VIC使用注意事项、ARM启动代码设计以及IRQ和FIQ的区别。
1. ARM中常见英文缩写解释:
- MSB: 最高有效位 (Most Significant Bit)
- LSB: 最低有效位 (Least Significant Bit)
- AHB: 先进的高性能总线 (Advanced High-performance Bus)
- VPB: VLSI外设总线 (VLSI Peripheral Bus)
- EMC: 外部存储器控制器 (External Memory Controller)
- MAM: 存储器加速模块 (Memory Acceleration Module)
- VIC: 向量中断控制器 (Vector Interrupt Controller)
- SPI: 全双工串行接口 (Serial Peripheral Interface)
- CAN: 控制器局域网 (Controller Area Network)
- PWM: 脉宽调制器 (Pulse Width Modulation)
- ETM: 嵌入式跟踪宏 (Embedded Trace Macrocell)
- CPSR: 当前程序状态寄存器 (Current Program Status Register)
- SPSR: 程序保护状态寄存器 (Saved Program Status Register)
2. MAM使用注意事项:
- 更改MAM定时值时,需先关闭MAM,通过写入0到MAMCR,然后写入新的定时值到MAMTIM,最后根据需要的操作模式再次打开MAM。
- 对于不同频率的系统时钟,推荐的MAMTIM设定值有所不同,例如20MHz以下系统设置为001,20MHz至40MHz之间建议设置为2cclk,40MHz以上则推荐3cclk。
3. VIC使用注意事项:
- 当在片内RAM中运行代码并需要中断时,中断向量应重新映射到Flash地址0x0,因为所有异常向量都在这个地址之上。
- 这可以通过将系统控制模块中的MEMMAP寄存器配置为用户RAM模式来实现,使得中断向量表加载到0x40000000。
4. ARM启动代码设计:
- 启动代码通常用汇编语言编写,直接与处理器内核和硬件控制器交互。
- 主要任务包括:设置中断向量表、初始化存储器系统、初始化堆栈、配置特殊端口和设备、建立用户程序执行环境、切换处理器模式以及调用主应用程序。
5. IRQ和FIQ的区别:
- IRQ是中断模式,而FIQ是快速中断模式。
- FIQ设计用于快速响应,拥有更多的影子寄存器以提高效率。
- FIQ能中断IRQ,但IRQ不能中断正在处理FIQ的处理器。
- 在处理FIQ时,必须迅速完成任务并返回正常模式,以避免系统响应延迟。
这些笔记为读者提供了一个基础的ARM学习框架,包括基本概念、操作注意事项和关键编程要素,是理解ARM体系结构的重要参考资料。
相关推荐









liyasheng
- 粉丝: 0
最新资源
- C# 精美连连看项目源码解析与应用
- 使用SWING实现迷宫求解可视化教程
- Apache Commons Jar包功能详解与优势
- JAVA实例技术手册第二版深度解析164个实战案例
- Ajax组件包:提升页面无刷新交互体验
- C++STL程序员快速学习与应用指南
- 探索BOX2D API英文版资源稀缺的现状
- 多功能信息工具:ASCII、进制转换、MD5加密与子网划分
- 探索动易模板2动漫物语系列的创作奥秘
- Nutz新框架发布,挑战传统SSH框架地位
- 4x4x4立体LED显示程序的设计与实现
- 双绞线制作与以太网组网实验教程
- 7.1声卡KX驱动升级与连线图简易导入指南
- 10天速成英语词汇量破20000的有效方法
- C#实现角谷猜想验证程序的探索
- Java编程经典书籍推荐:从Ajax到Spring深入学习
- JMeter性能测试工具下载及使用手册指南
- 新闻管理与用户权限的新闻发布系统实现
- 华育国际软件工程师全面课件培训
- C语言编程:计算圆的面积与周长方法
- C#实现办公自动化系统毕业设计及数据库备份方案
- Java虚拟机规范深度解析与内部机制探究
- 西门子远程通信应用:安全远程访问SIMATIC站
- Flash相册制作与应用教程解析