1、利用串口调试助手,往单片机发送数据,单片机接收到数据再发回电脑,进行串口调试
2、#include "reg52.h"//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
3、#define uint unsigned int#define uchar unsigned charuchar a,flag;
4、/***********************************************涯箨唁峦*******************//* 延时函数声明 *//******************************************************************//*void mdelay(uint t){ uchar n; for(;t>0;t--) for(n=0;n<125;n++) {;}}*/void mdelay(uint t){ uchar n; while(t--) { for(n=0;n<123;n++) {;} } }
5、/***********************************************涯箨唁峦*******************//* 主函数 *//******************************************************************/void main(){ TMOD=0x20;//设置定时器0为工作方式1 TH1=0xfd;//设置初值 TL1=0xfd; TR1=1;//启动定时器 SM0=0; SM1=1;//设置串口为方式1 REN=1;//接收使能 EA=1;//开总中断开关 ES=1;//打开串口中断开关
6、 while(1)//单片机发送数据 { if(flag==1) { ES=0;//关闭串口中断 flag=0;//数据清零 SBUF=a;//写数据 while(!TI);//数据没有发完TI一直是1,等待数据发送结束 TI=0;//数据发送完毕要软件清零 ES=1;//打开串口中断 } }}
8、/***********************************************涯箨唁峦*******************//* 定时器0 *//******************************************************************/void serial() interrupt 4//单片机接收数据{ a=SBUF;//往单片机写入一个数据 P0=a; RI=0;//数据接收完毕软件清零 flag=1;//标志位 收到数据为1}
9、本经验只供参考,如有不足,还请见谅,如果有什么疑问请在下边留言,及时给你解答。。。