下载
文章具体介绍了关于ARM的22个常用概念。
1、ARM中一些常见英文缩写解释
MSB:最高有效位;
LSB:最低有效位;
AHB:先迚的高性能总线;
VPB:连接片内外设功能的VLSI外设总线;
EMC:外部存储器控制器;
MAM:存储器加速模块;
VIC:向量中断控制器;
SPI:全双工串行接口;
······
更多详情请点击下载附件进行查看
首先你应该了解intel汇编语言,熟悉寄存器的组成和功能。你必须有堆栈和存储分配方面的基础知识,有关这方面的计算机书籍很多,我将知识简单阐述原理,着重在应用。其次,你应该了解linux,本讲中我们的例子将在linux上开发。
1、首先复习一下基础知识。
从物理上讲,堆栈是就是一段连续分配的内存空间。在一个程序中,会声明各种变量。静态全局变量是位于数据段并且在程序开始运行的时候被加载。而程序的动态的局部变量则分配在堆栈里面。
从操作上来讲,堆栈是一个先入后出的队列。他的生长方向与内存的生长方向正好相反。我们规定内存的生长方向为向上,则栈的生长方向为向下。压栈的操作 push=ESP-4,出栈的操作是 pop=ESP+4.换句话说,堆栈中老的值,其内存地址,反而比新的值要大。
ARM处理器是一种16/32位的高性能、低成本、低功耗的嵌入式RISC微处理器,由ARM公司设计,然后授权给各半导体厂商生产,它目前已经成为应用最为广泛的嵌入式处理器。
本书主要对ARM处理器的体系结构、指令系统和开发工具作了比较全面的介绍。其中包括ARM体系介绍、ARM程序设计模型、ARM汇编语言程序设计、ARM C/C++语言程序设计、ARM连接器的使用、ARM集成开发环境CodeWarrior IDE的介绍及高性能的调试工具ADW的使用。并在此基础之上介绍一些典型的基于ARM体系的嵌入式应用系统设计时的基本技术。通过阅读本书可以使读者掌握开发基于ARM的应用系统的各方面的知识。
本书既可作为学习ARM技术的培训材料,也可作为嵌入式系统开发人员的参考手册。
摘要:本文首先分析了C语言的陷阱和缺陷,对容易犯错的地方进行归纳整理;分析了编译器语义检查的不足之处并给出防范措施,以Keil MDK编译器为例,介绍了该编译器的特性、对未定义行为的处理以及一些高级应用;在此基础上,介绍了防御性编程的概念,提出了编程过程中就应该防范于未然的多种措施;提出了测试对编写优质嵌入式程序的重要作用以及常用测试方法;最后,本文试图以更高的层次看待编程,讨论一些通用的编程思想。
本文主要分享差分信号PCB布局布线时的几个常见误区:
误区一:认为差分信号不需要地平面作为回流路径,或者认为差分走线彼此为对方提供回流途径。造成这种误区的原因是被表面现象迷惑,或者对高速信号传输的机理认识还不够深入。虽然差分电路对于类似地弹以及其它可能存在于电源和地平面上的噪音信号是不敏感的。地平面的部分回流抵消并不代表差分电路就不以参考平面作为信号返回路径,其实在信号回流分析上,差分走线和普通的单端走线的机理是一致的,即高频信号总是沿着电感最小的回路进行回流,最大的区别在于差分线除了有对地的耦合之外,还存在相互之间的耦合,哪一种耦合强,那一种就成为主要的回流通路。
简介:
IAR 编译 ZStack-CC2530 为可下载运行的 HEX 文件的正确配置:
1、正确配置输出文件格式 在菜单 Project-Options-Linker-Output 标签中,勾 上 Allow C-SPY-specific extra output file 选项。再到 extra output 把编辑框中的文 件名的后缀改为 hex 文件名可以任意修改哦
2、菜单选择 Project-Options-Linker-extra output-Format。右边的 Output format 下拉框选 intel-extended,Format variant 下拉框选 None 具体如下图所示:
<strong> 1、 TTL 器件和 CMOS 器件的逻辑电平</strong>
<strong> 1.1 逻辑电平的一些概念</strong>
要了解逡辑电平的内容,首先要知道以下几个概念的含义:
1、输入高电平(VIH): 保证逡辑门的输入为高电平时所允许的最小输入高电平,当输入电平高于 VIH 时,则认为输入电平为高电平。
2、输入低电平(VIL):保证逡辑门的输入为低电平时所允许的最大输入低电平,当输入电平低于 VIL 时,则认为输入电平为低电平。
3、输出高电平(VOH):保证逡辑门的输出为高电平时的输出电平的最小值,逡辑门的输出为高电平时的电平值都必须大于此 VOH。
欲了解更多详情请点击下方附件:
当今嵌入式处理器的生产已经远远超过为桌面系统所设计的处理器。本文通过介绍微控制器 (MCU)的开发原理和C语言的相关知识,向读者展示了如何用C语言编写嵌入式MCU程序,内容涉及数据类型和变量、函数库、优化和测试嵌入式C语言程序等。利用贯穿全文 的样例工程,揭示了特定设备硬件开发的详细细节,以及用C语言进修嵌入式程序设计所带来的快速开发、增强的可移植性和再利用等优越性能。
本文适合于从事嵌入式研究的相关技术人员使用。
本文将详细介绍ADC入门的基础知识。
目录
1、ADC是什么
2、背景、发展
3、现状
4、发展方向
5、ADC的基本框架
6、Nyquist采样定理
7、ADC的输入输出
8、ADC的性能参数
9、CMOS ADC 的结构
10、pipeline ADC
11、集成电路的设计方法
更多详情请点击附件进行下载:
简介:查IAR编译信息和程序大小和XDATA溢出的个人理解与总结
一、
1、单片机的存储器分为数据存储器(RAM)和程序存储器(ROM/FLASH):
RAM:用来存取各种动态的输入输出数据,中间计算结果以及与外部存储器交 换的数据和暂存数据。设备掉电后,数据就会丢失。
ROM:通常用来固化存储一些用户写入程序或数据,用于启动设备和控制设备 工作方式。设备掉电后可保存数据。
FLASH:通常也是用来固化存储一些用户写入程序或数据。设备掉电后不会丢 失数据,同时可以快速读取数据。U 盘、MP3 多用这种存储器。
很多朋友都在想,怎么让keil C51与ARM能够并存使用。有安装经验的朋友都知道,安好C51后再安ARm,C51不能正常工作;安好ARM后再安C51,ARM不能正常工作。本文将详细介绍Keil C51与MDK-ARM并存的方法。
首先我们看下本历程系统及软件相关版本:
<center><img src="http://mm32.eetrend.com/files/2016-09/wen_zhang_/100002926-9541-1.jpg&q…; alt=""></center>
<strong>1、 MDK5.18 安装</strong>
打开从Keil官方网站下载的MDK5,双击mdk518.exe,进行安装。这里我们将 其安装到D 盘,MDK5.18
文件夹下,需要设置安装路径,如图1.1 所示:
<center><img src="http://mm32.eetrend.com/files/2016-09/wen_zhang_/100002899-9471-1.png&q…; alt=""></center>
1. 实验设备:
MM32f103 测试板,stm32 测试板, Jlink、ulink2 以及 keil 5.15、keil5.18 版本
2. 实验现象:
复制一个 MM32f103 的软件工程文件到任意别的目录下,然后修改工程文件名,打开后,直接编译,然后下载,会发现下载报错,出现如下图所示。(stm32 同样会出错)
<strong>1. 系统时钟</strong>
<strong>1.1 外部高速时钟接法</strong>
外部无源晶振电路如下图所示,晶振两脚接约 22pf 电容,并上 1M 反馈电阻。因芯片内部没有集成反
馈电阻,为保证 XTAL 起振,必须接 1M 欧姆电阻;
本应用笔记主要介绍了IAR for ARM集成开发环境及调试工具的安装,及在 IAR环境下添加 MM32 MCU Device ,建立一个 MM32 的 IAR项目及编译下载调试。
<strong>1、IAR EWARM 集成开发环境介绍与安装</strong>
<strong>1.1 IAR EWARM 简介</strong>
<strong>第一章 DK103R-EVB开发平台介绍</strong>
<strong>1.1 内容提要</strong>
本章介绍DK103R-EVB的功能、硬件电路、跳线器和连接器、板上的外围器件等,帮助用户快速地对DK103R-EVB形成整体的认识。
<strong>1.2 DK103R-EVB开发平台简介</strong>
<strong>1.2.1.接口设备</strong>
串口烧录PC端软件使用说明
1. 当您加压文件包后将得到以下文件
<center><img src="http://mm32.eetrend.com/files/2016-09/wen_zhang_/100002802-9164-1.png&q…; alt=""></center>
2. 点击PC_ISP.exe 打开烧录软件,界面如下:
<strong>IcpProgram下载器使用说明</strong>
1、将压缩包中上位机软件pclcpProgramV1.1复制到电脑本地,系统为WIN7以下需要安装dotNetFx40。
下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=17718
2、使用USB线将烧录器接至PC,将烧录器上的VCC,GND,PA2,PA3和待烧录芯片上的VCC,GND,PA13,PA14对应连接。
3、双击打开上位机软件IcpProgram。
更多详情请点击附件下载!
<strong>Core031C核心板快速入门使用手册</strong>
<strong>1. Core031C 核心板简介</strong>
<strong>硬件资源:</strong>
MM32F031K6 主芯片一片
4K RAM,32K Flash
8M 晶振(通过芯片内部 PLL 最高达 48M)
LM1117-3.3V 稳压芯片,最大提供 800mA 电流
一路 MicroUSB 接口,可以给系统版供电
复位按键
标准 20PIN SWD下载口一个,支持 J-Link,U-Link
BOOT 选择端口
正如前文已经多次提到的,向量中断控制器,简称NVIC,是Cortex‐M3 不可分离的一部分,它与CM3 内核的逻辑紧密耦合,有一部分甚至水乳交融在一起。NVIC 与CM3 内核同声相应,同气相求,相辅相成,里应外合,共同完成对中断的响应。NVIC 的寄存器以存储器映射的方式来访问,除了包含控制寄存器和中断处理的控制逻辑之外,NVIC 还包含了MPU的控制寄存器、SysTick 定时器以及调试控制。本章中,我们将体检NVIC 的中断处理控制逻辑。MPU 与调试控制逻辑在后续章节中讨论。
NVIC 共支持1 至240 个外部中断输入(通常外部中断写作IRQs)。具体的数值由芯片厂商在设计芯片时决定。此外,NVIC 还支持一个“永垂不朽”的不可屏蔽中断(NMI)输入。NMI 的实际功能亦由芯片制造商决定。在某些情况下,NMI 无法由外部中断源控制。