ARM7(lpc2146)学习笔记-0606

发布者:冰山火影1977最新更新时间:2015-10-21 来源: eefocus关键字:ARM7  lpc2146  学习笔记 手机看文章 扫描二维码
随时随地手机看文章
一.ADS
1.保存文件名要全名(即包括扩展名)
2.*.tdt文件删除则整个工程都会重新编译
3.*.axf为工程的调试文件
4.*.scf  分散加载描述文件
5.ADS的RelinFLASH版本设置了JTAG的加密,下载这个版本的代码之后,JTAG调试就不能用了,通过周立功提供的LCP的ISP软件,擦除掉芯片内的程序就OK了。
 
二.ARM指令
6.小端方式:较低字节存放在较低地址(arm7)
  大端方式:较低字节存放在较高地址
7.通过对一个单元执行两次相同的写操作,可保证复位后数据的写入。因为人SRAM控制器包含一下回写缓冲区,要在进行第二次写时上一次的数据才真正被写入SRAM
8.VHB:0xffe00000~0xffffffff,每个外设16KB
  VPB:0xe0000000~0xe01fffff,第个外设16KB
9.存储器映射的基本概念是:每个存储器组在存储器映射中都有有下“物理上的”位置.
10.BOOT Block是芯片设计厂家在LPC2000系列ARM内部固化的一段代码,它在芯片复位后被首先运行,其功能主要是判断运行哪个存储器上的程序、检查用户代码是否有效、判断芯片是否被加密、芯片的在应用编程(IAP)以及在系统编程功能(ISP)。这其中有些程序是可以被用户调用的,比如擦写片内FLASH的IAP代码。为了增加用户代码的可移植性,所以最好能把BOOT Block的代码固定在某个地址上。但是因为各个芯片的片内FLASH大小不尽相同,如果把BOOT Block的地址安排在片内FLASH结束的位置上,那么就无法实现BOOT Block地址的固定。所以芯片生产商就把BOOT Block的地址重映射到片内存储器空间的最高处,即接近2G(0x80000000)的地方,这样无论片内存储器大小如何,都不会影响BOOT Block的地址。可以让包含有IAP操作的用户代码,不用修改IAP操作地址,就可以在不同的LPC2000系列ARM上运行。
11.
 — MRS 程序状态寄存器到通用寄存器的数据传送指令
 — MSR 通用寄存器到程序状态寄存器的数据传送指令
MSR 指令的格式为:
MSR{条件} 程序状态寄存器(CPSR 或SPSR);域,操作数
MSR 指令用于将操作数的内容传送到程序状态寄存器的特定域中。其中,操作数可以为通用寄存器或立即数。域用于设置程序状态寄存器中需要操作的位,32 位的程序状态寄存器可分为4 个域:
位[31:24]为条件标志位域,用f 表示;
位[23:16]为状态位域,用s 表示;
位[15:8]为扩展位域,用x 表示; 
位[7:0]为控制位域,用c 表示;
该指令通常用于恢复或改变程序状态寄存器的内容,在使用时,一般要在MSR 指令中指明将要操作的域。
12.BIC 指令用于清除操作数1 的某些位,并把结果放置到目的寄存器中。
13.SPACE 伪指令用于分配一片连续的存储区域并初始化为0。其中表达式为要分配的字节数。
 

关键字:ARM7  lpc2146  学习笔记 引用地址:ARM7(lpc2146)学习笔记-0606

上一篇:stm32 fsmc 功能讲解
下一篇:ARM7(lpc2146)学习笔记-0607

推荐阅读最新更新时间:2024-03-16 14:36

【STM32学习笔记】USART 硬件流控
流控的概念源于 RS232 这个标准,在 RS232 标准里面包含了串口、流控的定义。大家一定了解,RS232 中的“RS”是Recommend Standard 的缩写,即”推荐标准“之意,它并不像 IEEE-1284、IEEE-1394 等标准,是由“委员会定制”。因而,不同的厂商在做 RS232 时,多少会有不同,流控也都会存在差异。以下我们与大家一起探讨流控的作用、搭建及如何操作。 本文着重探讨硬件流控。 为什么需要流控? 数据在两个串口之间进行通讯的时候常常会出现丢失数据的现象,比如两台计算机或者是一台计算机和一个单片机之间进行通讯,当接收端的数据缓冲区已经满了,这个时候如果还有数据发送过来,因为接收端没有时
[单片机]
ARM7启动过程
嵌入式系统资源有限,程序通常都固化在ROM总运行。ROM中程序执行前,需要对系统硬件和软件运行环境进行初始化,这些工作是用汇编语言编写的启动程序完成。启动程序是嵌入式程序的开头部分,应与应用程序一起固化在ROM中,应首先在系统上运行的启动程序应包含各模块中可能出现的所有段类,并合理安排他们的次序。   启动程序一般流程如下:   (1) 设置入口指针   (2) 设置中断向量     ARM7要求中断向量必须设置从0地址开始,连续8*4字节的空间,分别是复位、未定义指令错误、软件中断、预取指令中断、数据存取错误、IRQ、FIQ和一个保留的中断向量   (如果ROM位于0地址,向量表包含一系列指令跳转到中断服务程序,
[单片机]
基于STM32的USB枚举过程学习笔记(三)
上一篇介绍到了主机上电复位USB设备,在控制传输的建立过程,发送了8个字节的数据给设备,这8个字节为0x80 0x06 0x00 0x01 0x00 0x00 0x40 0x00,该请求为USB标准设备请求中的GET_DESCRIPTOR请求。0x80表示标准设备请求,数据方向是设备到主机。0x60表示请求类型GET_DESCRIPTOR。0x01表示描述符类型是设备描述符。0x40表示描述符长度。 设备在收到该请求以后,首先进行解析,根据请求中的0x40表示该控制传输有数据过程,因此进入到Data_Setup0()函数。该函数根据请求的不同描述符,执行不同的回调函数 CopyRoutine(),并在DataStage
[单片机]
基于STM32的USB枚举过程<font color='red'>学习</font><font color='red'>笔记</font>(三)
STM32学习笔记:ADC理解
ADC 简介 12 位 ADC 是逐次趋近型模数转换器。它具有多达 19 个复用通道,可测量来自 16 个外部 源、两个内部源和 VBAT 通道的信号。这些通道的 A/D 转换可在单次、连续、扫描或不连续 采样模式下进行。ADC 的结果存储在一个左对齐或右对齐的 16 位数据寄存器中。 ADC 主要特性 可配置 12 位、10 位、8 位或 6 位分辨率 ● 在转换结束、注入转换结束以及发生模拟看门狗或溢出事件时产生中断 ● 单次和连续转换模式 ● 用于自动将通道 0 转换为通道“n”的扫描模式 ● 数据对齐以保持内置数据一致性 ● 可独立设置各通道采样时间 ● 外部触发器选项,可为规则转换和注入转换配置极性
[单片机]
STM32<font color='red'>学习</font><font color='red'>笔记</font>:ADC理解
【STM32学习笔记】SPI不够用? USART来帮忙
如果您在使用STM32的时候,恰好缺少一个SPI接口,同时片上的资源还有多余的USART(一般来说,USART的接口都较丰富,比如STM32L0系列的产品),我们完全可以 用USART来替代SPI ,效果非常不错。 本文将向大家介绍 如何把USART当做SPI来用 。 USART是指全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备。那么, 它与UART有什么区别呢?它的硬件连接方式是怎样的?该如何使能USART的SPI模式?把USART当做SPI来使用的时候和标准的SPI有什么区别,需要注意哪些事项? 本文将逐一为大家解读。 UART与USART的区别 早期在开发8051的时候使用的都是UART
[单片机]
STM32学习笔记:基础例子
本例子代码参考了STM32库开发实战指南中的代码,由于使用的板子是尚学STM32F103ZET6,为了配合板上已有资源,也参考了其配套代码。为了便于书写文本,我尽量将代码都写到了一个文件中,这种方式是不推荐的,在做具体工程时最好代码分类管理,使工程逻辑清晰。 现在对板上一些资源说明:板上有两个LED灯,引脚为PE5、PE6,均为ResetBits时点亮。有三个按钮,依次为黄色复位,红色PE4(按下接GND)、红色PA0(按下接3.3V,WAKE UP按钮)。ISP口为靠近电源开关的USB,也是USART1口。USART2口为PA3(Rx)、PA2(Tx)。IPD为高电平中断(按键一边接高电平),IPU为低电平中断。 接下来
[单片机]
STM32<font color='red'>学习</font><font color='red'>笔记</font>:基础例子
STM32学习笔记— 电源管理及低功耗设计要点
STM32电源介绍 每一块STM32芯片中都有一个电源控制器(PWR),不同系列的STM32有相似,也有差异。 1.电压 绝大部分STM32的电压要求介于 1.8 V 到 3.6 V 之间,嵌入式线性调压器用于提供内部 1.2 V 数字电源。 2.类型 STM32的电源通常分为三类:数字电源、模拟电源、备份电源。 数字电源:VDD也是其主电源,主要用于数字部分; 模拟电源:VDDA用于模拟部分的电源,比如ADC,这样可以单独滤波并屏蔽 PCB 上的噪声。 备份电源:VBAT用于备份区域的电源,比如RTC、备份SRAM等,一旦主电源断开,VBAT可以为这些区域提供电源。 ▲ STM32F4备份域 3.调压器多数STM3
[单片机]
STM32<font color='red'>学习</font><font color='red'>笔记</font>— 电源管理及低功耗设计要点
掉电保护在嵌入式系统中的设计应用
    中心议题: 掉电保护在嵌入式系统中的设计应用 基于掉电保护方案的硬件设计     解决方案: 在S3C4510B和μClinux构建的嵌入式平台实现 使用5V和3.3V的直流稳压电源 采用守候进程的方式     在嵌入式系统设计过程中,系统的掉电保护越来越受到重视。本文介绍的方法是在用ARM7系列芯片S3C4510B和μClinux构建的嵌入式平台上实现的。整个掉电保护实现的基本思路是:产生掉电信号,捕捉掉电信号和处理掉电信号。重点介绍这个过程的具体实现。     系统防掉电设计的目的是:采用一种机制,使得系统在意外失去供电的情况下,可以保证系统运行状态的确定性以及记录数据的完整性;
[电源管理]
掉电保护在嵌入式系统中的设计应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved