proteus仿真ARM.doc

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
/embedded/ARM_notes/arm01.html 下面就是我学习ARM的第一阶段的记录,这段时间的学习基本上是使用Proteus配合KEIL做简单的实验(最后有实验的目录以及下载地址)。通过该阶段的学习,算是对ARM的基本结构有了了解。 该阶段主要学习资料是《基于PROTEUS的ARM虚拟开发技术》,以及另外一本ARM体系结构的书籍,感觉这类书都差不多。 学习ARM前需要的基础 前辈学习ARM的经验! (我是在嵌入式开发联盟的新人区看的帖子。) 掌握C语言编程。 了解简单的微机算计原理知识,例如二进制,计算机程序的执行过程,总线(数据、地址、控制),软件系统(系统软件与应用软件)。 听说过RISC与CISC,高级语言与低级语言的区别。 最好听说过串行传输与并行传输。 普林斯顿(ARM7)和哈佛结构(ARM9、10、11—)。 什么是ARM? 学ARM,自然要理解ARM是什么,也好明确学习目标。网上的资料很多,“ARM是一家公司,也是一个处理器体系”……我将学ARM分为以下几类: 做ARM的核心研发。也就是进ARM公司做IP核,应该是学电子之类的东西吧。 买ARM的IP核,做具体的嵌入式处理器、核心板,例如三星和NXP。 买ARM核心板,连接外围电路制作教育用或开发用的开发板,或者直接开发其它中断产品。 买ARM开发板做产品,要做系统软件和应用软件。 3和4基本并列了。 ARM基础 任何一本介绍ARM体系结构书籍都应该有这些内容。 处理器模式 用户模式、特权模式又分为系统模式、管理模式、快中断模式、中断模式、终止模式、未定义指令终止模式。 2. 寄存器 R0-R7、R15和CPSR是所有模式共享的。 R8-R12出快中断模式有RX-fiq外所有模式共享。 R13、R14和SPSR只有用户模式和系统模式共享,其它都有似有SPSR。 R15(PC)程序计数器 R16(CPSR)程序转台寄存器 R13(SP)堆栈指针 P14(LR)链接寄存器 ARM指令集 汇编程序设计 略了,我看了,但是做Proteus仿真实验没用上,两天就忘了。 LPC2000 我买的3本ARM入门书籍中有两本都是以LPC2000系列为例的,其实从网上可以下载到具体LPC2XXX处理器的datasheet,上面的资料是最权威和详尽的。 引脚选择 PINSEL0、PINSEL1设置各个引脚的功能。 中断 中断的寄存器太多了,没记。 GPIO 做输入输出。以P0口为例,寄存器有IO0PIN、IO0SET、IO0DIR、IO0CLR。 存储器 LPC2000可用地址为4GB,内部2GB(0~0x7FFFFFFF),外部2GB(00xDFFFFFFF),高0.5GB是I/O设备地址空间(0xE0000000~0xFFFFFFFF)。 内部最低128KB或256KB为Flash。 高1GB(00x7FFFFFFF)为SRAM。其中00x40001FFF为片内SRAM。 I/O部分,低2MB(0xE0000000~0xE001FFFFF)为VPB外设空间,高2MB(0xFFE00000~0xFFFFFFFF)为AHB外设空间。 FLASH加速模块。 MAMCR设置是否允许加速、MAMTIM设置预取处理器时钟。 时钟 cclk、pclk 分振荡器模式和从属模式,振荡器Fosc经PLL升频为cclk,cclk经过VPB分频后为pclk。 设置cclk PLLCFG 设置PLL倍频M,PLL分频器值P PLLCON PLL的允许与连接 PLLSTAT 读取PLL状态 PLLFEED 使PLL设置生效 例Fosc=12MHz,cclk=60MHz,则M=60/12-1=4,因为Fcco=P*cclk*2(要求156M~320MHz)。 设置pclk 由VPBDIV设置00为4分频、01为不分频、10为二分频。 定时器 pclk定时,定时器为32位,从0计数到0xFFFFFFFF。以T0为例 T0TC,计数器初值 T0PR,定时计数器分频,pclk/(PR+1) T0MR0~3,匹配值,当计数带到时候,按照T0MCR的设置触发不同动作。 T0MCR,计数器到达匹配值的动作(复位、中断、停止) T0EMR,外部匹配寄存器,到达匹配值时候外部引脚的操作(MAT0.0~3) T0CCR,外部引脚有特定动作时候,计数值存入T0CR0~3,设置是否触发中断 T0CR0~3,在T0CCR控制下存TC值。 T0TCR,复位与使能 T0IR,对应MR与CR中断 PWM 看门狗 Pclk四分频后控看门狗的32为计数器减一。 WDTC,看门狗计数器初值。 WDMOD,看门狗工作模式,可以开启和复位看门狗

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档