当前位置: 代码迷 >> 单片机 >> 既然T0是51规定的计时器,那么就不应该可以让它定义为全局变量,但却可以,怎么回事
  详细解决方案

既然T0是51规定的计时器,那么就不应该可以让它定义为全局变量,但却可以,怎么回事

热度:251   发布时间:2016-04-28 16:12:27.0
既然T0是51规定的计时器,那么就不应该可以让它定义为全局变量,但却可以,咋回事?
既然T0是51规定的计时器,那么就不应该可以让它定义为全局变量,但却可以,咋回事?

$ep
  T0   EQU   13
LF   EQU   10

PUBLIC   START
SAMP         SEGMENT   CODE
;ssfs
                RSEG   SAMP
START:     MOV   SCON,   #52H
MOV   TCON,   #0D2H
MOV   TH1,   #13
SETB   TR1
LOAD:       MOV   DPTR,   #MSG
LOOP:   CLR   A
MOVC   A,@A+DPTR
CJNE   A,#LF,MORE
  SJMP   LOAD
  MORE:     MOV   A,DPL
INC   A
MOV   DPL,A
JNC   LOOP
INC   DPH
SJMP   LOOP
MSG:   DB   "MESSAGE ",T0,LF

END


------解决方案--------------------
T0 EQU 13
这里汇编器只把它认为是一个变量,仅此而已

在汇编的层次,只认地址,其它的东西,只要你的其它库里没定义才不管你这么多呢

LZ觉得习惯用法不爽,可以把汇编里的那些个常用的再改成自己习惯的...
(不过,除非私活或是自己写着玩,不然没一个公司敢要这样的代码)
  相关解决方案