专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

单片机汇编实验五-2:单片机与PC机串行通信实验

作者:韩冰   来源:本站原创   点击数:  更新时间:2013年11月30日   【字体:

实验要求:AT89S52串行通信口工作在方式1,8位UART方式,允许接收,9600bps。在PC机上运行串口调试软件。编程实现:AT89S52内部定时器1,按方式1工作,每1秒钟内部RAM30H单元内容加1,并通过串行通信口送PC机显示。
//This is the fifth_2 program of homework
//This is made by WQ    Data:2013/3/4/
        ORG 0000H     
        AJMP MAIN
        ORG 0023H       //0023H 串口中断程序的入口地址
        AJMP Transfer  
        ORG 000BH       //000BH 计时器程序T0入口地址      
        AJMP WT0        
MAIN:
       MOV TMOD,#21H      //定时器的工作方式寄存器
       MOV TH0,#4CH      //定时器0
       MOV TL0,#00H     //定时器0
       MOV R3,#40          //R3做一个计数器
       SETB EA              //开总中断
       SETB ET0              //允许计时器
       SETB TR0              //开启计时器0
       MOV TH1,#0FDH       
       MOV SCON,#50H         ;传口工作方式1,允许中断接受
       SJMP $
       ORG 0100H
WT0:   MOV TH0,#4CH  //计时器0置数
       MOV TL0,#00H
    DJNZ R3,RETN   //1秒钟到来了
    MOV R3,#50
       SETB ES        //打开串口中断
       SETB TR1       //打开定时器1
    MOV R1,#30H
    MOV @R1,#89H
    MOV R1,#030H
    MOV A,@R1           
       MOV SBUF,A     //将内存中的数据传送给计算机
RETN:RETI             //中断子程序的返回指令

Transfer:
        JNB TI,$
        CLR TI
        MOV P1,A
        RETI
        END
 

关闭窗口

相关文章