导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→大家帮我分析一下这个程序[forever7]

 *第36124篇: 大家帮我分析一下这个程序

  
楼 主:forever7 2005年11月30日16:32
 大家帮我分析一下这个程序
ORG 0000H
        AJMP MAIN ;主程序
          ORG 0013H
        LJMP XAD   ;中断1 A/D采样子程序
;*********************************************
;* 初始化 主程序                             *
;*********************************************
        ORG 0030H
MAIN:   MOV SP,#60H     ;设置堆栈
               SETB EA
               SETB IT1
        
START:  LCALL  MNLCJ
;*****************************************
;* A/D采样子程序 初始化                  *
;*****************************************
AD1:    PUSH DPH
        PUSH DPL
        PUSH ACC
        MOV DPTR,#0C000H;打开 0 通道
        MOV A,#08H
        MOVX @DPTR,A
        MOV DPTR,#9000H ;启动A/D转换
        MOVX @DPTR,A
        SETB EX1
 
        POP ACC
        POP DPL
        POP DPH
        RET
;*****************************
;*  A/D 574的中断子程序       *
;*****************************
XAD:    PUSH DPH
        PUSH DPL
        PUSH ACC
        MOV DPTR,#9002H;读入高8位结果放入50H 
        MOVX A,@DPTR
        MOV 50H,A
        INC DPTR
      MOVX A,@DPTR   ;读入低4 位结果放入51H 
     MOV 51H,A
    CLR EX1
        POP ACC
        POP DPL
        POP DPH
        RETI        
;*********************************************
;模拟量采集                                  *
;*********************************************   
MNLCJ:    MOV   R0,#40H
          LCALL AD1  ;第一端口模拟量采集
          ajmp $
         ; MOV   A,50H
         ; MOV   @R0,A
          ;INC   R0
          ;MOV   A,51H
          ;MOV   @R0,A
         
         
         END
         NOP
         NOP
         LJMP   main 

我用校验仪进行调试,但是50H,51H中没有输入,是什么原因啊
芯片AD574,DG508,LF398,AT89C51

  
2楼:戈卫东 2005年12月1日04:05
 唉~~~多学学多练练啊~~~~
唉~~~多学学多练练啊~~~~
  
3楼:forever7 2005年12月1日18:16
 感觉这个论坛做广告的的多,回帖的少啊!!
感觉这个论坛做广告的的多,回帖的少啊!!还是自己顶吧
  
4楼:Lichunfu 2005年12月3日08:31
 堆栈会溢出,问题严重
你的程序有严重错误!START:  LCALL  MNLCJ  而你在MNLCJ的结尾处却有 LJMP   main 
这样的话你的堆栈在执行一会就溢出了。
  
5楼:yiala 2005年12月11日13:11
 先看下是否进了中断
先看下是否进了中断
  
6楼:blackrain 2005年12月15日10:46
 看法:[forever7]大家帮我分析一下这个程序86331
建议你将最后的LJMP MAIN 改成RET ,因为MAIN中LCALL后将PC值进栈后一直没有弹出

>>>>>>对该主题发表你的看法

本主题贴数6,分页: [第1页]


[上一篇主题]:光通信技术转让  pdh  e1  &n

[下一篇主题]:pcb断电后如何处理