推荐阅读最新更新时间:2024-03-16 15:26
ARM体系结构与编程-5
GET通常用于包含定义常量的源文件。 例如:GET 2440addr.inc 用AREA定义一个段,ENTRY用于指定程序的入口点,END用于告诉汇编器源文件已经结束。 例如: AREA init, CODE, READONLY ENTRY ...... END EQU用于定义常量,提醒:在每条ARM指令前必须有空格,但是用EQU定义常量时,必须顶格写,否则编译器报错。 LTORG用于声明一个文字池,所谓文字池就是一个数据缓存区。 ALIGN伪操作通过调整地址指针,使得当前地址满足一定的对齐方式。在ARM代码中要求地址标号是字对齐的。 MACRO和MEND伪操作用于宏定义。语法如下: MACRO {$label}
[单片机]
Cortex—M0单片机二-十进制整数转换的快速算法
引言 在单片机应用系统中,一般都需要高效快速地完成系统所需要的任务,并在任务完成后使系统进入睡眠或低功耗状态,以便最大限度地节省系统功耗,增强系统的抗干扰能力。因此,必须优化和提高系统中各个模块的运算速度,以最大限度地压缩软件运行时间。许多单片机应用系统中都需要进行二进制整数转换为十进制BCD码的操作,以便实现系统信息的显示。对于Cortex—M0系列单片机,由于其指令系统中没有十进制调整指令和除法指令,使得一些文献中提供的高效算法和技巧不再适用于这类单片机,从而造成上述转换操作成为影响系统性能的重要因素,因此提高上述数制转换速度对于提高系统运行效率有极大的促进作用。 1 传统的实现方法 要实现快速运算,很自然地想到经典
[单片机]
高端封装技术:攻克存储器系统性能与容量限制
在半导体行业竞争日趋激烈的背景下,封装工艺作为一种部署更小型、更轻薄、更高效、和更低功耗半导体的方法,其重要性日益凸显。同时,封装工艺也可响应半导体小型化技术的限制和满足其他市场需求。 封装工艺是指对半导体制成品进行包装的过程,使其免受损坏,同时将半导体电路中的电线与外部连接。此前,封装工艺通常被视为一种简单的辅助工作,属于半导体制造的后工序,而非确定半导体质量的前工序。然而,近年来,随着晶体管的特征尺寸缩小到5nm以下,加之半导体制造业在未来几年面临物理尺寸限制的可能性越来越大,封装技术也得到了前所未有的关注。 封装工艺关乎半导体产品,是与客户休戚相关的关键工艺,SK海力士肩负责任,承载使命,致力于实现最佳性能和最高品质。 下面
[手机便携]
《Cortex-M0权威指南》之体系结构---程序映像和启动流程
我们先来看看程序映像。 通常,Cortex-M0处理器的程序映像时从地址0x00000000处开始的。 程序映像开始处时向量表,其中包含了异常的其实地址(向量),每个中断向量的地址都等于“异常号*4”,比如,外部IRQ0的异常类型为16,因此其向量地址为16*4=0x40。这些向量的最低位都被置为1,以表示使用thumb指令。向量表的大小由实际使用的中断个数决定。 向量表中包含了MSP的初始值,它存储在向量表的头四个字节。 复位时,处理器首先读取向量表的前两个字(8个字节),第一个字为MSP的初始值,第二个字为复位向量,它表示程序执行的起始地址。 例如,如果启动代码位于地址0x000000C0,需要
[单片机]
51单片机的中断体系结构
80C51的中断系统有5个中断源(8052有 6个),2个优先级,可实现二级中断嵌套 。MCS-51系列单片机中断系统的机构如下: 与中断系统相关的特殊寄存器: 1)中断允许控制寄存器(IE)------ 控制各中断的开放和屏蔽 2)中断优先级控制寄存器(IP)------设置各中断的优先级 3)定时器/计数器控制寄存器(TCON)----定时器和外部中断的控制 4)串行口控制寄存器(SCON)------串行中断的控制 中断类型分为三类: 1)T0、T1是2个定时器/计数器中断,由片内定时器提供; 2)INT0、INT1是2个外部中断,由引脚P3.2和P3.2提供; 3)RX、TX为串行口中断所用,由片
[单片机]
学习ARM体系结构的意义
时常有些同学会问,在嵌入式开发中用得最多的是什么?我答,是C语言。那么最复杂的是什么?是嵌入式操作系统。只有Bootloader主要用到体系结构的知识吗?嗯,那当然。写Bootloader似乎也太麻烦了点,这要怎么开始啊?没有人要求你从车轮开始造的,提供开发板的厂商必然会附送一个具备基本功能的Bootloader的,你就分析它,按自己的意愿修改它,然后就可得到自己的Bootloader了。那岂不是学习体系结构没有多大用了? 换个视角来看。数学贵为科学的皇后,自打背上书包起,各类数学课本就没有离开过我们,也是各类国家级大考的“常委”,可毕业后的工作实践中,究竟有多少次用到过那些高深的数学知识了?大多数人都会迟疑片刻,接着把脑袋摇
[单片机]
MDK5新建stm32l0xx(Cortex-M0)工程步骤
目前,网络上关于stm32l0xx系列mcu的资料比较少,l0低功耗系列普遍应用了st公司新出的HAL库,由于没有中文资料,并且HAL库与原来的标准库有一些区别,因此开发起来有一定的难度。本文先从最基本的新建工程入手,后续将陆续记录关于stm32l051c8x的一些应用过程,记录开发过程中遇到的一些问题、思考及心得,以期在做导师项目的过程中最大限度的增添一些乐趣。给做项目的过程增加一点乐趣。新手记录,错误难免,也欢迎高手批评指正 第一步:ST官网下载固件库文件 首先从官网下载固件库文件包,顺便可以把datasheet等一并下载。文件包名称:en.stm32cubel0,drivers文件夹中,包含有Low Layer (LL)
[单片机]
虚拟仪器测试环境软件总线体系结构
测试技术是贯穿于产品全寿命周期各阶段的唯一的一项工程技术,测试的核心技术又是 软件,是实现货架产品(Commercial Off-The-Shelf,COTS)的关键。自动测试设备(Automatic Test Equipment)的软件平台应以 “互连、互通、互操作”原则作为基本要求,实现测试和诊断信息的融合和共享。 虚拟仪器测试环境 (Visual Instrument Test Environment, VITE)是支持IEEE 1226广域测试环境(A Broad –Based Environment for Test)标准的开放式通用测试软件平台产品,它采用软总线(对象总线)的结构形式,利用对象模型驱动的原理,
[测试测量]