首页 | 供应信息 | 采购信息 | PDF资料 | 技术资料 | 行业资讯 | 产品展示 | 人才市场 进入会员区
   技术文章分类:单片机/DSP 嵌入式系统 测试仪表 电源技术 接口电路 存储器 传感与控制 通信网络 无线通信 模拟技术 显示与光电 EDA/PLD 汽车电子 消费电子 电子综合
   电子综合工具:PDF资料大全 电子缩略语 IC型号替换 IC厂家 电子电路图 技术参数 设计应用 解决方案
技术资料 行业资讯 PDF资料 IC价格 IC替换 缩略语 IC供应 IC采购
  您所在的位置: IC37首页 > 技术问答 > 单片机 > 关于keil 编译的问题

  关于keil 编译的问题 

这段时间做了一个时钟的程序。硬件什么的都准备好了。

软件写好了,上keil编译,出现点问题,不知道是KEIL本身的事,还是我的程序的问题。

主要现象是这样的,编译后发现错误,指示为第一条的EQU指令错误。但我实在发现不了是啥错误,没办法我就把EQU指令取消了。但再编译还是出现错误,还是指向第一条指令,这次是ORG指令,我就晕了。

后来我又拿了一个朋友的程序(此程序,已经在工作了)进行编译,也是第一条指令错误,所以就怀疑是不是KEIL本身有问题啊,但不敢肯定,所以求教各位大虾,给指点指点。


作者:yl520  2008-1-23 10:35:00

  回复1  我把程序也粘过来,哪位高手有空指点指点.167461

DIS0 EQU 30H

DIS1 EQU 31H

DIS2 EQU 32H

DIS3 EQU 33H

DIS4 EQU 34H

DIS5 EQU 35H

TIME1 EQU 36H

TIME2 EQU 37H

ORG0000H

LJMP ZHU

ORG001BH

LJMP TT

ORG 0030H

ZHU:MOVSP,#6FH;堆栈指针

MOVTMOD,#10H;计数器工作方式

MOVTH1,#3CH;赋初值

MOVTL1,#B0H

SETB EA;开中断

SETB ET1;开定时器T1中断

SETB TR1;启动T1

MOV50H,#20;定时1秒循环次数

MOV51H,#60;定时一分循环次数

MOV52H,#60;定时一小时循环次数

MOV53H,#24;定时一天循环次数

MOV54H,#7

CLRF0;清标志位

OO:LCALL MOD;调显示子程序

LCALL START;调整子程序

LJMP OO

TT:MOVTH1,#3CH;重赋初值

MOVTL1,#B0H

DJNZ 50H,TT1;未到一秒继续循环

MOV50H,#20

INC55H;到一秒,秒计数单元加1

MOVA,55H

MOVB,#10

DIVAB;分离秒计数单元个位十位

MOVDIS4,A;秒十位存储

MOVDIS5,B;秒个位存储

MOVA,51H;

CJNE A,55H,TT1;未到一分继续循环

INC56H;到一分,分计数单元加1

MOVA,56H

MOVB,#10

DIVAB;分离分计数单元个十们

MOVDIS2,A;分十位存储

MOVDIS3,B;分个位存储

MOV55H,#00H;到一分秒计数单元清0

MOVA,52H

CJNE A,56H,TT1;未到一小时继续循环

INC57H;到一小时小时计数单元加1

MOVA,57H

MOVB,#10

DIVAB;分离小时计数单元个位十位

MOVDIS0,A;存小时高十位

MOVDIS1,B;存小时个位

MOV56H,#00H;到一小时分计数单元清0

MOVA,53H

CJNE A,57H,TT1;未到一天继续循环

MOV57H,#00H;一天,小时清0

TT1:RETI

MOD:PUSH ACC;保护现场

PUSH DPH

PUSH DPL

MOVR0,#DIS0;指向显示缓冲区首单元

MOVR6,20H;选中最左数码管

MOVR7,00H;显示延时值

MOVA,#00H;位选口清0

MOVP2,A

DIR:MOVA,R0;取要显示的数

MOVDPTR,#WEI;指向字形表首址

MOVC A,@A+DPTR;查表得字形码

MOVP0,A;送字形码

MOVA,R6;取位选字

MOVP2,A;送位选字

YAN:DJNE R7,YAN;显示延时

INCR0;更新显示单元

CLRC

MOVA,R6;取位选字

RRCA;位选字右移

MOVR6,A;更新位选单元

JNZDIR;A不等于0继续循环

POPDPL;恢复现场

POPDPH

POPACC

RET

START:CLRC

MOV A,#0FFH;置输入方式

MOVP1,A

MOVA,P1;键状态输入

MOVR4,#0;初始键号

LP:RRCA

JNCN1;C等于0,有键按下

INCR4

DJNZ 54H,LP1

MOVR4,#00H;过7清0

MOV54H,#7

LP1:SJMP LP

N1:LCALL DLY-6MS

JC NEXT

JB F0,GAI;叛别是第几次按下功能键,第一次顺序执行

CJNE R4,#00H,NEXT;叛别是否第一功能键按下,IF否则转

MOVDIS0,#00H;清秒计数单元为0

SETB F0;置标志位

CLRET1;关中断

CLRTR1;关定时

LJMP NEXT

GAI:CJNE R4,#00H,L1;第二次按键转到此,如不是功能键则转

LJMP RES

L1:CJNE R4,#01H,L2;如按键为分加一键,则顺序执行

INC56H;分计数单元加1

MOVA,56H

CJNE A,#60,NEXT

MOV56H,#00H

LJMP NEXT

L2:CJNE R4,#02H,NEXT

INC57H

MOVA,57H

CJNE A,#24,NEXT

MOV57H,#00H

LJMP NEXT

RES:CLRF0

SETB TR1

SETB ET1

NEXT:RET

DLY-6MS:MOVTIME1,#10

L3:MOVTIME2,#120

L4:NOP

NOP

DJNZ TIME2,L4

DJNZ TIME1,L3

RET

WEI:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;0,1,2,3,4,5,6,7,8,9,

END


作者:yl520  2008-1-23 10:52:00

  回复2  硬件部分167462

硬件部分
作者:yl520  2008-1-23 10:59:00

  回复3  怎么没有人来指点呢167463

怎么没有人来指点呢
作者:yl520  2008-1-23 15:02:00

  回复4  我用keil只是写过C程序,汇编不清楚167464

也许需要某些类似C的头文件的一些预定义文件


作者:dai_weis  2008-1-23 20:49:00

  回复5  /\167465

编译后发现错误,指示为第一条的EQU指令错误。但我实在发现不了是啥错误,

KEIL 没有办法找出错误准确的地方,

只能在KEIL指示地方的附近寻找错误

你尝试把 DLY-6MS:MOVTIME1,#10

改为 DLY_6MS:

因为 - 是减号

瞎说而已 不知道是否对


作者:太空穿梭机  2008-1-23 22:45:00

  回复6  还是一样的167466

改了还是不行啊

那附近的错误也没有什么啊

我还特意的找了一个可以运行的程序编译,但还是一样.


作者:yl520  2008-1-24 7:46:00

  回复7  硬件部分167467

这是本程序的硬件部分.http://bbs.21ic.com/upfiles/img/20081/2008124104629575.jpg


作者:yl520  2008-1-24 10:47:00

  回复8  看下这个行不行167468

http://bbs.21ic.com/upfiles/img/20081/2008124104629575.jpg


作者:yl520  2008-1-24 10:49:00


我要投稿 注册会员
客服咨询热线:0755-26000950 0755-26007355
 相关技术问答
·问做过电动车朋友一个问题  2008-1-21
·浅谈“鲁棒性”  2008-1-21
·AD转换问题  2008-1-22
·请大侠推荐一款c8051  2008-1-22
·串口接受的疑问??  2008-1-22
·步进电机四个线圈  2008-1-22
·那位能提供一个类似8550..  2008-1-22
·请教51的/PSEN信号的..  2008-1-22
·带关断功能的LDO会不会贵..  2008-1-22
·关于双电源上电和掉电次序的..  2008-1-23
·LDO应用问题  2008-1-23
·程序代码  2008-1-23
·上电迅间误操作问题  2008-1-23
·看一段关于通讯的程序  2008-1-23
·请教问题  2008-1-23
·下面这个函数的功能是给结构..  2008-1-23
·请教一个串口波特率的问题  2008-1-23
·XD们谁用过4V左右的电压..  2008-1-23
·请教I2C多个从设备读写。..  2008-1-23
·帮忙看看这个烂定时器  2008-1-24
·欢迎大家进行程序结构的讨论  2008-1-24
 
 热门IC
NM24C65ULEN  MCR10EZHF3301  MIG75Q7CSB1X  MCH185A561JK  BDW40  BZV49C47  UM95086  ISPLSI1048E-125LT  OPA344UA  XCV200-5FG456I  2N4902  SDA1810N  BZX84C4V7LT3  BTS412A  HD74LVC138TELL  S-80927CLMC-G6X-T2  PS2832-1-F3  AME8809BEHA  TA78L07F  P89C54BBD  NX26F160-5TR  IR7416  272AC  LE8577JFJC  KM416V1204AJ-6  24LC41A  PI74FCT162823TAC  ISL84523IV  LMV248LQX  MB88346LPFV-G-BND-ER  DDR110-56T7RL  MIC4426YMM  ZXM64N03XTR-ND  TL431CDBVT  OM4068H  TLP124BV-TPL  SVM7100MOA-TE1  G960T63U  P3000AA61  UPB569G2-T1  S112S02  74AC541MTR  K6F2016U4D  2SC3547B  MIC5245-3.2BM5  OZ964SN  FQU2N60C  MC14556BDR2  MIC2564A-0BTS  HF70ACB322513-T