在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1687|回复: 0

[资料] 基于单片机经由过程串口与电脑邻接通信

[复制链接]
发表于 2011-4-11 15:01:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本实施实现串口中止实施,经由过程中止和较劲争论机进行通信             *
起首接管联机旗子暗记,然后接管较劲争论机的相关节制旗子暗记            *
本实施中,采用发送不合的字符给较劲争论机来模拟领受到的不合的较劲争论机节制敕令      *
经由过程扩展,可以实现不合的功能                 *
                                        *                                         *
                                             *
                               *                                             *
********************************************************************************/
  
#include
#define uchar  unsigned char
uchar time,b_break,b_break_3;
uchar buf;
void waitsend()
{
     while(!TI)
     {
     };
     TI = 0;
}
//串行中止法度
void int_s(void) interrupt 4 {
ES = 0;    //封闭串行中止
RI = 0;    //没落串行接管标记位
buf = SBUF;  //除夜串口缓冲区取得数据
P1 = buf;    //数据送往p1口显示出来
if(buf == 255) SBUF = 255; //发送联络旗子暗记
else{
     switch(buf)
     {
         case 1: SBUF = 'M',waitsend();break;   //假如接管到1,发送字符'M'给较劲争论机
         case 2: SBUF = 'C',waitsend();break;   //假如接管到2,发送字符'C'给较劲争论机
         case 3: SBUF = 'S',waitsend();break;   //假如接管到3,发送字符'S'给较劲争论机
         case 4: SBUF = '5',waitsend();break;   //假如接管到4,发送字符'5'给较劲争论机
         case 5: SBUF = '1',waitsend();break;   //假如接管到5,发送字符'1'给较劲争论机   
                          
         default: SBUF = 'n',waitsend();break;  //假如接管到其它数据,发送n给较劲争论机
         
     }
}
ES = 1;    //准许串口中止

}
void main(void) {
    P0 = 0;
    P2 = 255;    //封闭数码管显示
   
EA=1;
SCON=0x50CON=0X80;
TMOD=0x20;ES = 1;
TL1=TH1=0xf3;TR1=1;   //串口工作在模1,波特率4800@12Mhz)

    while(1);
                    //无限轮回守候串行中止
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-2-8 22:56 , Processed in 0.028290 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表