单片机里EQU是什么指令?作用?

P1EQU8200HP0EQU8300Horg0000HSJMPSTARORG0040H。。。。。。。。。。。。这个是我用74LS138与AT89S52连接,把138当作... P1 EQU 8200H
P0 EQU 8300H
org 0000H
SJMP STAR
ORG 0040H
。。。。。
。。。。
。。。这个是我用74LS138与AT89S52连接,把138当作数据分配器来使用。把整个P1、P0共16个地址全部定义到138的分配的空间上。
然后编译后
P1 EQU 8200H
P0 EQU 8300H 这两句显示的错误是:
error A10:ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL.
error A10:ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL.
中文意思是:试图确定一个已经定义的符号。
请问这个要如何解决。
知道138译码器当作数据分配使用时,三个选通端G1、G2A、G2B怎么接的也可以回答。非常感谢啦。。谢谢啦。谢谢啦。非常感谢。
展开
 我来答
意法半导体(中国)投资有限公司 2023-06-12
展开全部
单片机其实就是一种可以由人对它进行编程从而通过它控制一些与它相连的器件的微型处理器。通俗地说就是你用某种特定的语言在特定的软件里(如keil)编写好一段程序后通过一定的方法转到一个芯片里(这个芯片就是单片机),给芯片上电后它就可以根据你编的程序控制它所连接的其他器件了。希望能帮到你了… 更专业的解答可联系意法半导体,产品服务:意法半导体单片机产品线拥有业界宽广、极具创新力的32位产品系列 – STM32,覆盖超低功耗、超高性能方向.目前提供16大产品线 (F0, G0, F1, F2, F3, G4, F4, F7, H7, MP1, L0, L1, L4, L4+,L5, WB),超…
哎呀小白妞
2019-07-01 · TA获得超过7629个赞
知道小有建树答主
回答量:488
采纳率:96%
帮助的人:23.4万
展开全部

单机片中EQU指令是伪指令,作用是用赋值伪操作给重复出现的数值或寄存器赋予一个名字,即把一个符号名称与一个整数表达式或一个任意文本连接起来,方便操作。

在单片机中用EQU指令来赋值以后数据或者寄存器的字符名,可以用来代表数据地址、代码地址、或者用来当做立即数进行使用。  

扩展资料:

在同一源代码文件中,用EQU定义的符号不能被重新定义,这与=伪指令不同,这个限制可以防止现有符号在无意中被赋予新值。其中,EQU有3种格式,分别是:

1、name EQU expression。这种格式中,EQU中的expression必须是一个有效整数表达式。

2、name EQU symbol。这种格式中,EQU中symbol是一个已存在的符号名称,已经用=或EQU定义过了。

3、name EQU <text>。这种格式中,EQU中任何文本都可以岀现在<…>内。当汇编器在程序后面遇到 name 时,它就用整数值或文本来代替符号。

参考资料来源:百度百科-equ

参考资料来源:百度百科-伪指令

意法半导体(中国)投资有限公司
2023-06-12 广告
要入门STM32单片机,可以按照以下步骤进行学习:1. 首先学习51单片机,了解其基本结构和特点。2. 学习STM32的内部架构,了解其核心部件如何与外设连接。3. 学习STM32的寄存器和总线结构,理解如何使用寄存器来控制外设。4. 编写... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
四舍五不入6
高粉答主

2020-02-28 · 还没有填写任何签名哦
四舍五不入6
采纳数:27 获赞数:71405

向TA提问 私信TA
展开全部

单机片中EQU指令是伪指令,作用是用赋值伪操作给重复出现的数值或寄存器赋予一个名字,即把一个符号名称与一个整数表达式或一个任意文本连接起来,方便操作。

在单片机中用EQU指令来赋值以后数据或者寄存器的字符名,可以用来代表数据地址、代码地址、或者用来当做立即数进行使用。

扩展资料:

EQU 指令格式: 符号名 EQU 表达式

符号名:EQU 寄存器名

表达式必须是一个简单再定位表达式。

用 EQU 指令赋值以后的字符名,可以用作数据地址、代码地址、位地址或者直接当做一个立即数使用。

比如:

s equ bx+si

mov cx,[s]

那么上面两句代码相当于如下指令:

mov cx,[bx+si]

参考资料来源:百度百科-伪指令

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-05
展开全部
我来回答吧。
EQU其实就是为了书写的方便,用EQU左边的来等价右边的,不参与编译的。
比如PPP EQU 20H,在编译之前,会将你程序里出现的所有的PPP,都用20H替换。

你程序里用到的P1和P0是系统已经定义的P口,这样你程序里出现P0、P1系统就不知道是8200H还是真正的P口了,所以这样的定义是不符合要求的,改个名字就可以了。

第三个问题:138的G1是接高电平的,G2A、G2B是接低电平的,这样138才会有输出。
输出的就是CBA对应的译码值,比如CBA是001,那么Y1输出低电平,其他都为高。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2017-05-18
展开全部
EQU 的意思就是 给地址定义一个标识。相当于别称。 比如:P1 EQU 8200H 的意思就是 P1相当于8200H单元 很久没碰汇编,不知道说的对不对
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-05
展开全部
EQU 是一条伪指令,是在你程序被编译时,就将P0指向8300H。P1同理。

但是P0/P1这在头文件里(regXX.h)已经定义过了,指向了SFR中的P0和P1口。

所以你这里定义,要将P0,P1改成别的头文件里没有的,当然程序的P0和P1,也要相应的改动。

根据74LS138的规格书(网上搜“74ls138 pdf”),可以知道G1接高电平;G2A、G2B接低电平有效。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式