找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2044|回复: 0
打印 上一主题 下一主题
收起左侧

实验16 单片机串口与PC通信

[复制链接]
跳转到指定楼层
楼主
ID:111332 发表于 2016-3-29 19:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*********************************************************************************
* 【Q      Q】: 348439350
* 【声    明】: 此程序仅用于学习与参考,引用请注明版权和作者信息!
* 【函数功能】: 串口中断程序实验——通过单片机向电脑发送数据,同时电脑将收到的数据发出                                                                                          
**********************************************************************************/


/*预处理命令*/
#include <reg52.h>                   //包含单片机寄存器的头文件
#define uchar unsigned char
#define uint unsigned int
uchar num,a;

/*
********************************************************************************
** 函数名称 : main(void)
** 函数功能 : 主函数
********************************************************************************
*/
void main()
{
        TMOD=0x20;                   //用定时器设置串口波特率           9600
        TH1=0xfd;
        TL1=0xfd;
        TR1=1;
        REN=1;          //串口初始化
        SM0=0;
        SM1=1;
        EA=1;           //开启总中断
        ES=1;
        while(1)
        {
                if(num==1)    //判断是否有串口数据的传送
                {
                        ES=0;
                        num=0;
                        SBUF=a;                         //发送数据a到SBUF,即将单片机的数据发送到计算机
                        while(!TI);
                        TI=0;
                        ES=1;
                }
        }        
}
void ser() interrupt 4
{
        RI=0;
        P2=SBUF;                        //接收数据SBUF,即将计算机的数据接收。
        a=SBUF;
        num=1;
}

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表