数据定义伪指令用来为数据分配存储单元,建立变量和存储单元之间的联系,并可实现已分配存储单元的初始化。每个双精度浮点数占据两个字单元。例如:9.数据域定义伪指令FIELD格式:标号FIELD表达式功能:FIELD伪指令用于定义一个结构化内存表中的数据域。MAP伪指令定义内存表的首地址,FIELD伪指令定义内存表中的各个数据域,并可以为每个数据域指定一个标号供其他指令引用。......
2023-11-21
符号定义(Symbol Definition)伪指令用于定义ARM汇编程序中的变量、对变量赋值及定义寄存器的别名等操作常见的符号定义伪指令有如下几种:
1.全局变量定义伪指令GBLA、GBLL和GBLS
格式:GBLA(GBLL或GBLS) 全局变量名
功能:GBLA、GBLL和GBLS伪指令用于定义一个ARM程序中的全局变量,并将其初始化。其中各伪指令含义如下:
(1)GBLA伪指令用于定义一个全局的数字变量,并初始化为0。
(2)GBLL伪指令用于定义一个全局的逻辑变量,并初始化为F(假)。
(3)GBLS伪指令用于定义一个全局的字符串变量,并初始化为空。
注意:由于这3条伪指令用于定义全局变量,因此在整个程序范围内变量名必须唯一。
例如:
2.局部变量定义伪指令LCLA、LCLL和LCLS
格式:LCLA (LCLL或LCLS) 局部变量名
功能:LCLA、LCLL和LCLS伪指令用于定义一个ARM程序中的局部变量,并将其初始化。其中各伪指令含义如下:
(1)LCLA伪指令用于定义一个局部的数字变量,并初始化为0。
(2)LCLL伪指令用于定义一个局部的逻辑变量,并初始化为F(假)。
(3)LCLS伪指令用于定义一个局部的字符串变量,并初始化为空。
注意:这3条伪指令用于声明局部变量,在其作用范围内变量名必须唯一。(www.chuimin.cn)
例如:
3.变量赋值伪指令SETA、SETL和SETS
格式:变量名 SETA(SETL或SETS) 表达式
功能:伪指令SETA、SETL、SETS用于给一个已经定义的全局变量或局部变量赋值。其中各伪指令含义如下:
(1)SETA伪指令用于给一个数学变量赋值。
(2)SETL伪指令用于给一个逻辑变量赋值。
(3)SETS伪指令用于给一个字符串变量赋值。
注意:变量名为已经定义过的全局变量或局部变量,表达式为将要赋给变量的值。
例如:
4.寄存器列表定义伪指令RLIST
格式:名称 RLIST{寄存器列表}
功能:RLIST伪指令可用于对一个通用寄存器列表定义名称,使用该伪指令定义的名称可在ARM指令LDM/STM中使用。
注意:在LDM/STM指令中,列表中的寄存器访问次序为根据寄存器的编号由低到高,而与列表中的寄存器排列次序无关。
例如:
有关嵌入式系统原理及应用:基于ARM Cortex-M4体系结构的文章
数据定义伪指令用来为数据分配存储单元,建立变量和存储单元之间的联系,并可实现已分配存储单元的初始化。每个双精度浮点数占据两个字单元。例如:9.数据域定义伪指令FIELD格式:标号FIELD表达式功能:FIELD伪指令用于定义一个结构化内存表中的数据域。MAP伪指令定义内存表的首地址,FIELD伪指令定义内存表中的各个数据域,并可以为每个数据域指定一个标号供其他指令引用。......
2023-11-21
颜色参数可参阅头文件LCD.h中的颜色常量,也可按照RGB565格式自己定义。2.与英文或数字显示有关的接口函数接口函数中与英文或数字显示有关的主要是void LCD_ShowChar、void LCD_ShowNum、void LCD_Show2Num和void LCD_ShowString,功能介绍如下。此外,由于hanzi[]数组中字模都是预先存入的汉字,因此只能显示这部分汉字,适用于一定数量固定汉字显示的情况。void LCD_DrawRectangle的函数功能:以点和点为对角定点画矩形。......
2023-11-21
在初始化时,需对RTC和数码管部分进行初始化,其中数码管部分初始化在本章的8.4节有详述,此处不再赘述。开启LSE的库函数如下:同时,选择RTC时钟源及使能时钟函数如下:初始化RTC,设置RTC的分频和配置参数。第2个日期初始化参数结构体RTC_DateTypeDef的定义如下:这4个参数分别用来设置日期的星期、月份、日期、年份。2.读取RTC信息并显示过程RTC模块初始化完成后,在需要使用时直接调用固件函数获取RTC模块当前日期和时间即可。......
2023-11-21
1.像素像素是组成图像的最基本单元要素,显示屏的像素指它成像最小的点,即前面讲解液晶原理中提到的一个显示单元。2.分辨率一些嵌入式设备的显示屏常以“行像素值×列像素值”表示屏幕的分辨率。4.显示屏尺寸显示屏的大小一般以英寸表示,如5英寸、21英寸、24英寸等,这个长度是指屏幕对角线的长度,通过显示屏的对角线长度及长宽比可确定显示屏的实际长宽尺寸。LED点阵显示屏的点距一般比较大,适合远距离观看。......
2023-11-21
汇编控制伪指令用于控制汇编程序的执行流程,常用汇编控制伪指令包括IF、ELSE、ENDIF、WHILE、WEND、MACRO、MEND、MEXIT。例如:2.循环控制伪指令WHILE、WEND格式:功能:该组伪指令能根据条件的成立与否决定是否循环执行某个指令序列。包含在MACRO和MEND之间的指令序列称为宏定义体。MACRO、MEND伪指令可以嵌套使用。4.宏退出伪指令MEXIT格式:MEXIT功能:MEXIT用于从宏定义中跳转出去。......
2023-11-21
汇编结构伪指令用于建立汇编程序的结构框架,常用的伪指令包括以下几条。上述常用属性中,ALIGN实际也是一个伪指令。例如:2.状态切换伪指令CODE16、CODE32格式:CODE16功能:CODE16伪指令通知编译器,其后的指令序列为16位Thumb指令。CODE32伪指令通知编译器,其后的指令序列为32位ARM指令。例如:4.程序结束伪指令END格式:END功能:END伪指令用于通知编译器已经到了源程序的结尾。......
2023-11-21
DAC通道1触发使能位:本次不使用触发,所以该位设为0。DAC通道1噪声/三角波生成使能位:本次未用到波形发生器,该位设为0。本实例使用了DAC通道1的12位右对齐数据格式,所以需使用12位右对齐数据保持寄存器DAC_DHR12R1。将输出的12位数字量存入该存储器,就可以在DAC输出通道1得到转换后模拟量结果了。......
2023-11-21
相关推荐