风波邪人

幸福,幸福就是心里有那么一个人,不管你走到哪儿,也不管她走到哪儿,心里永远想着她

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

/****实验现象:通过PC的超级终端向MCU发'A',能给返回'B',以此类推;

               并且按下S4键能向PC机发'A'。******/

 

 #include <reg52.h>

 sbit WINT1=P3^3;        // 外部中断,接S4按键

 

/*

*****初始化子函数

*/

void init() {

PCON=0x00;            //波特率不加倍

TMOD=0x20;            //定时器1用作波特率发生器(具有自动重装载初值的功能)

 SCON=0x50;            //8为异步收发,波特率可变(由定时器控制)选择串口方式1,接收允许

TH1=0x0fd;

TL1=0x0fd;            //设置波特率为9600bps,晶振11.0592MHz

RI=0;           //清标志位

 TI=0;

TR1=1;              //开启计数T1

ES=1;      //开串口中断

IT1=1;      //设置为跳变触发方式

EX1=1;      //开外部中断1

EA=1;      //开总中断       

}

 

/*

*****主函数

*/

void main(){

init();

while(1);             //延时等待中断

}

 

/*

*****串口中断服务子函数

*/

void uart_interrupt (void) interrupt 4{

char date;

ES=0;              //关闭串口中断

if(TI) {           //判断是发送中断

TI=0;          //清除发送中断标志

}

else {

date=SBUF;     //数据缓存到date中

RI=0;   //清除接收中断标志

date++;   //数据处理

SBUF=date;   //返回数据

}

ES=1;              //打开串口中断

}

 

/*

*****外部中断服务子函数

*/

void int1_interrupt(void) interrupt 2 {

while(!WINT1);      //按键松手检测

SBUF=0X41;          //发送字符数据A

}

 

posted on 2011-12-26 14:48  风波邪人  阅读(1137)  评论(0编辑  收藏  举报