下载此文档

IO口模拟232测试程序.doc


文档分类:通信/电子 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
/*********************************************************IO口模拟232测试程序,仿单片机KeilCx51应用开发技术中的程序主要的功能是在利用串口调试工具发送一个8bit的数据,而后单片机接收后把这个数据发送给模拟串口*********************************************************/#include""sbitTx_Pin=P3^7;//发送端口sbitRx_Pin=P1^0;//接收端口sbitBaud0=P1^6;sbitBaud1=P1^7;//波特率选择bitFlag=0;//若标志位为1,则表示串口已经过了一位的时间#defineuncharunsignedchar#defineunintunsignedintuncharHighTime;uncharLowTime;/********************************************************/bitCheckAvailStartBit()//检测开始位{return(Rx_Pin==0);//若为0,则返回1,即有数据传送//若为1,则返回0,即没有接收到数据}/********************************************************/voidTimer0()interrupt1//定时器中断处理{Flag=1;TL0=LowTime;TH0=HighTime;}/********************************************************/uncharReceiveByte()//接收字节{uncharData;uninti;Data=0x00;TR0=1;//开始定时while(Flag==0);Flag=0;//开始位不采样for(i=0;i<=7;i++){Data>>=1;//移位处理if(Rx_Pin==1)//为1的话,则进行处理{Data|=0x80;}while(Flag==0);//若Flag为0,则时间还未到,等待//若Flag为1,则一位的时间已经到,准备接收数据Flag=0;}while(Flag==0);//对第9位停止位的处理Flag=0;while(Flag==0){if(Rx_Pin)//检测到停止位,退出{break;}}TR0=0;//关闭定时器return(Data);//返回数据}/********************************************************/voidSendByte(uncharData){uninti;TR0=1;//开始定时Tx_Pin=0;//起始位,0while(Flag==0);Flag=0;for(i=0;i<=7;i++){if(Data&0x01){Tx_Pin=1;}else{Tx_Pin=0;}Data>>=1;while(Flag==0);Flag=0;}Tx_Pin=1;//结束位TR0=0;//关闭定时器}/********************************************************/

IO口模拟232测试程序 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小20 KB
  • 时间2019-09-15
最近更新