打印
[国产单片机]

em78p447的中断问题帮忙看一下

[复制链接]
2557|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lostelf|  楼主 | 2008-10-22 13:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序如下:
    INCLUDE "E:程序BH上控EM78P447.INC"            ;寄存器定义头文件
    INCLUDE "E:程序BH上控clrEM78P447RamBank.INC"  ;所有RAM清零库文件
    INCLUDE "E:程序BH上控MACDEF.INC"              ;使用到的宏的定义
    INCLUDE "E:程序BH上控447REG.INC"              ;自定义寄存器名
    ORG    0XFFF
    JMP    MAIN        ;跳转到系统初始化
    ORG    0X001
    JMP    ENTER_INT    ;跳转到中断事件                 
    ORG    0X010
    
;**********************************************************************
; INT_EVENT PROCESS
;**********************************************************************
ENTER_INT:             ;现场保护
    MOV    ABUFF,A     ;A寄存器保护
    SWAP   ABUFF       
    SWAPA  SR          ;状态寄存器R3保护
    MOV    SRBUFF,A
    SWAPA  RSR         ;RAM选择寄存器保护
    MOV    RSRBUFF,A
    BC     SR,PS1
    BC     SR,PS0
    BC     R4,6
TCC_INT:
    BC    R3F,TCIF
    ;CLR   R3F
    BS    TCC100US_HAPPEN
    MOV   A,@60
    MOV   TCC,A
TIME20MS_INT:  
    DJZ   COUNT_FOR_1S1
    JMP   EXIT_INT
    MOV   A,@198
    MOV   COUNT_FOR_1S1,A
    BS    TCC20MS_HAPPEN
TIME1S_INT:  
    DJZ   COUNT_FOR_1S2
    JMP   EXIT_INT
    MOV   A,@49
    MOV   COUNT_FOR_1S2,A
    BS    TCC1S_HAPPEN
EXIT_INT:              ;中断现场返回
    SWAPA  SRBUFF
    MOV    SR,A
    SWAPA  RSRBUFF
    MOV    RSR,A
    SWAPA  ABUFF
    RETI


问题出现在,如果在把一个子程序放在org 0x400后面
主程序中
page1
call  xx
page0
就不能正常工作

放在0x400之前能正常工作
在子程序开头disi   ,结局eni 也能正常工作。
有类似经历的同志们帮忙看下

相关帖子

沙发
谈的元| | 2008-10-22 22:15 | 只看该作者

最好写个2个完整的程序。出错的现象是什么?

最好写个3个完整的程序。 一个出错,2个不出错的,最好写简单点。

并且指明怎么出错。单步错?全速错?你怎么判断错的?


那样好讨论

使用特权

评论回复
板凳
lostelf|  楼主 | 2008-10-23 09:48 | 只看该作者

发现问题所在了

ORG    0X001
JMP    ENTER_INT    ;跳转到中断事件  

必须在0x001后面直接跟中断入口程序,用跳转会出错,呵,希望大家引以为戒。唉,这回参照了一下义隆的应用笔记,结果反而多搞了老久。

使用特权

评论回复
地板
谈的元| | 2008-10-23 19:23 | 只看该作者

你中断入口在同一页面呀!并且在页面0呀,怎么会出现你说

除非你跳转地址不在页面0。才可能。

使用特权

评论回复
5
scytrenbin| | 2008-11-22 22:22 | 只看该作者

中断程式的跳转

在一进入中断程式时,不要用“JMP”,而是保存了A、R3、R4,并切换到page 0后,再用“JMP”跳转,这样就不会出错了。

使用特权

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

本版积分规则

13

主题

36

帖子

0

粉丝