导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→经过验证的源代码........

* 18026: 初学者:有关单片机接收字符的命令,我不太懂,请求您的帮助!

   白莲 
白莲发表的帖子 

 经过验证的源代码........
        ORG     0000H
        SJMP    START
        ORG     0023H           ;串口中断
        LJMP    CHUAN           
        ORG     0030H
START:  MOV     SP,#70H         ;设置SP
        SETB    EA              ;总中断允许
        SETB    ES              ;串口中断允许
        MOV     TMOD,#20H       ;T1 方式2
        MOV     TL1,#0FDH       ;晶振11.0592MHz,波特率9600。
        MOV     TH1,#0FDH       ;8位重载
        SETB    TR1             ;启动 T1
        MOV     SCON,#40H       ;串口模式1
        SETB    REN             ;允许接收
        mov     R0,#40H         ;设置RAM 40H为接受缓冲区首地址
        MOV     R1,#30H         ;设置RAN 30H为发送缓冲区首地址
        mov     r5,#16          ;定义接受16个数据
        mov     r6,#16          ;定义发送16个数据
        setb    20h.1           ;定义发送
        sjmp    $
;串口中断服务子程序
CHUAN:  PUSH    ACC
        PUSH    PSW
        JNB     RI,SEND         ;判断是不是接收引起的中断如果是顺序执行,不是一
定是发送,转发送
        MOV     A,SBUF          ;把SBUF里的数据收下来
        mov     @r0,a           ;保存数据
        inc     r0              ;接受缓冲区加1 
        djnz    r5,tiao         ;判断是否接收齐16个数据
        mov     r0,#40h         ;重新设置RAM 40H为接受缓冲区首地址
        mov     r5,#16          ;重新设置接受16个数据计数器
        lcall   renwu           ;调用你的任务子程序,就是收完数想干什么?     
TIAO:   CLR     RI              ;清除发送中断标志为,等待下一次中断的到来
        SJMP    NEXT            ;
SEND:   CLR     TI              ;清除接收中断标志为,等待下一次中断的到来
        CLR     20H.1
NEXT:   POP     PSW
        POP     ACC
        RETI
;你的任务子程序
renwu: ...........
       ...........
       ...........
       ret
;你的发送子程序,在发送前,你要写入你要发送的数据!
SOUT:   MOV     A,@R1
        INC     R1
        MOV     SBUF,A          ;FA SONG SHU JU
        JB      20H.1,$
        SETB    20H.1
        DJNZ    R6,SOUT
        MOV     R1,#30H          ;重新设置RAM 30H为接受缓冲区首地址
        mov     r6,#16           ;重新设置发送16个数据计数器
        RET
帮人帮到底吧!我写的可以说够详细的了,你几乎可以拿来就用!你要仔细看懂了,然后用
到你的硬件上!
       
       



发表时间:2003年1月24日15:59:00

  
回复该帖

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

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

  18233.[详细]Hi, White Lotus Flower
摘要:Hi, White Lotus Flower, Happy to you this Chinse New Year , ......(112字)
- [Kuang-chingTsui][1225次] 2003年2月2日

  18235.[详细]学51单片机
摘要:各位大虾,我想学51单片机,不知需要那些东东。L32K仿真器好用吗?给我个建议好吗?......(42字)
- [dirty][1266次] 2003年2月3日

  18028.[详细]非常感谢!
摘要:非常感谢您!......(6字)
- [weeknjzy][741次] 2003年1月24日

[上一篇帖子]:电流通过开关后又干什么?
[下一篇帖子]:这种集电极开路门74LS06, 六集电极开路反相器,这种集电极开路门输出可以带30mA的负