导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→帮帮忙看下这个串口程序出什么问题了……

* 96971: 帮帮忙看下这个串口程序出什么问题了……

   lee40106 
lee40106发表的帖子 

 帮帮忙看下这个串口程序出什么问题了……
ORG 0000H
                JMP START
                ORG 23H                        ;串口中断入口地址
 JMP SIO_INT
 ORG 0100H

START: CLR EA                         ;关所有中断
T1_SET: MOV     TMOD,#20H                ;设定T1定时器,方式2定时
 MOV TL1,#0D0H           
 MOV TH1,#0D0H
SIO_SET:  MOV     PCON,#80H                   ;波特率加倍 1200
 MOV     SCON,#0D0H              ;设定串口工作在多机模式3,允许接收
 SETB TR1                      ;启动定时器1
 SETB ES                         ;------------
 SETB EA                        ;串口中断允许


BEGIN1: MOV     A,#0BFH                       ;没有中断是发送BF
            MOV     SBUF,A
WAIT1:  JNB     TI,WAIT1
             CLR     TI
             CALL    DELAY
            JMP     BEGIN1

SIO_INT:   CLR EA                ;串口中断地址入口
 CLR ES
 CLR RI
                MOV A,SBUF
                CJNE    A,#0H,QUIT
                MOV     SBUF,A
 MOV     R3,#30
                CALL    DELAY
                CJNE    A,#0FFH,QUIT
BEGIN:      MOV     A,#0AFH           ;收到FF后发送AF
               MOV     SBUF,A
WAIT3:    JNB     TI,WAIT3
              CLR     TI
              CALL    DELAY
             JMP     BEGIN

DELAY:
             MOV    R1,#0
DL2:       MOV    R2,#0
DL1:       DJNZ   R2,DL1
             DJNZ   R1,DL2
             RET

QUIT:   RETI

        END

不知道怎么回事,程序一运行就进入中断了,串口助手显示收到一个00触发了中断,而我真正给它发数据请求中断时它又不理,怎么回事啊??

发表时间:2006年8月22日19:28:32

  
回复该帖

本主题共有 5 帖,分页:>>>>>该主题的所有内容[5]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  96983.[详细]你是否需要这样的程序吗
摘要: ORG 0000H             JMP   &......(1727字)
- [Kallor][980次] 2006年8月23日

  96988.[详细]程序里有些问题
摘要:第一次进中断是因为你发数据时引发了串口中断。 另外在你的中断服务程序里你关了中断,忘记打开了。 所以之后既使有串口数据进来,也不会再引发中断。  仔细看看书上的例程,好好想清楚再动手。......(184字)
- [galiu][801次] 2006年8月23日

  96991.[详细]中断服务程序有点乱
摘要:另,中断服务程序里有点乱,还真是看不出你的意图... ......(51字)
- [galiu][819次] 2006年8月23日

[上一篇帖子]:寻求1688LCD模块资料那位大虾有1688LCD模块的资料啊?能给俺提供一份吗?? 先谢谢
[下一篇帖子]:你好你好,你能帮我设计一个用超声波避障或者超声波测移动物体的电路出来吗,最好说明再详细一点,距离大概