打印

8279问题求高手指点迷津

[复制链接]
1171|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guobin_lwh1258|  楼主 | 2012-3-13 18:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ov, se, ni, TI, AI
在单片机和8279调试的时候发现不能稳定的工作,下面是我写的程序,请高手看看那有问题
D8279 EQU 8000H
  C8279 EQU 8001H
     ORG 0000H
    LJMP START
     ORG 000BH
    LJMP TIMER0INT
     ORG 0013H
    LJMP KEYINT

     ORG 0040H
START:  MOV SP,#90H
  SETB P1.5
  MOV 73H,#00
  LCALL SERIALINIT
  LCALL TIMER0INIT
  LCALL C8279INIT
  SETB TR0
  SETB EA  
  SETB EX1
  CLR IT1
     ;MAIN PROGRAM BEGIN
MAIN:  
  MOV A,73H
  CLR C
  SUBB A,#5
  JC LOOP
  MOV DPTR,#C8279
  MOVX A,@DPTR
  MOV SBUF,A
  LCALL DELAY
  SETB P1.5
  MOV 73H,#00
LOOP:  JNB TI,MAIN
  CLR TI
  LJMP MAIN

     ;8279(keyboard) intrrupt sub-program
KEYINT:  
  PUSH ACC
  PUSH PSW
  PUSH DPL
  PUSH DPH
  SETB RS0   
  CLR RS1
  CLR P1.5
  MOV DPTR,#D8279
  MOVX A,@DPTR
  MOV SBUF,A
  POP DPH
     POP DPL
     POP PSW
     POP ACC
     RETI
TIMER0INT:
  PUSH ACC
  PUSH PSW
  PUSH DPL
  PUSH DPH
  MOV TH0,#2CH
  MOV TL0,#13H
  INC 73H
  POP DPH
  POP DPL
  POP PSW
  POP ACC
     RETI

SERIALINIT:       ;INIT SERIAL
  MOV SCON,#50H
  MOV TL1,#0F9H
  MOV TH1,#0F9H
  SETB TR1
  RET
TIMER0INIT:       ;INIT TIMER0
  MOV TMOD,#21H
  MOV TH0,#2CH
  MOV TL0,#13H
  SETB ET0
  RET
C8279INIT:       ;INIT 8279
  MOV DPTR,#C8279
     MOV A,#01H  ;KEY MODE
     MOVX @DPTR,A
  LCALL DELAY
     MOV A,#34H  ;CLK=100KHZ,2MHZ/20=100K
     MOVX @DPTR,A
  LCALL DELAY
     MOV A,#0C3H         ;CLEAR FIFO RAM
     MOVX @DPTR,A
  LCALL DELAY
WAIT:     MOVX A,@DPTR
  JB ACC.7,WAIT  
  RET
DELAY:                                      
      MOV R2,#250
         DJNZ R2,$
          RET
   
  END

相关帖子

沙发
蜗牛狂奔| | 2012-3-13 20:29 | 只看该作者
问问题的方法有问题!
不稳定?? 什么叫不稳定,怎么个不稳定法!叫人怎么帮你回答

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

1

帖子

0

粉丝