下载此文档

单片机IO口模拟串口程序(发送 接收).doc


文档分类:通信/电子 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
NurfürdenpersönlichenfürStudien,Forschung,,由于串口不够,需要用IO口来模拟出一个串口。经过若干曲折并参考了一些现有的资料,基本上完成了。现在将完整的测试程序,以及其中一些需要总结的部分贴出来。程序硬件平台:,STC单片机(兼容51)/****************************************************************在单片机上模拟了一个串口,****************************************************************/#include<>#include<>#include<>typedefunsignedcharuchar;inti;ucharcodeinfo[]={0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55};sbitnewTXD=P2^1;//(){SCON=0x50;//SCON:serailmode1,8-bitUARTTMOD|=0x21;//T0工作在方式1,十六位定时PCON|=0x80;//SMOD=1;TH0=0xFE;//定时器0初始值,延时417us,目的是令模拟串口的波特率为2400bpsfosc==0x7F;//定时器0初始值,延时417us,目的是令模拟串口的波特率为2400bpsfosc=//TH0=0xFD;//定时器0初始值,延时417us,目的是令模拟串口的波特率为2400bpsfosc=//TL0=0x7F;//定时器0初始值,延时417us,目的是令模拟串口的波特率为2400bpsfosc=}voidWaitTF0(void){while(!TF0);TF0=0;TH0=0xFE;//定时器重装初值fosc==0x7F;//定时器重装初值fosc=//TH0=0xFD;//定时器重装初值fosc=//TL0=0x7F;//定时器重装初值fosc=}voidWByte(ucharinput){//发送启始位ucharj=8;TR0=1;newTXD=(bit)0;WaitTF0();//发送8位数据位while(j--){newTXD=(bit)(input&0x01);//先传低位WaitTF0();input=input>>1;}//发送校验位(无)//发送结束位newTXD=(bit)1;WaitTF0();TR0=0;}voidSendata(){for(i=0;i<sizeof(info);i++)//外层循环,遍历数组{WByte(info[i]);}}voidmain(){UartInit();while(

单片机IO口模拟串口程序(发送 接收) 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人一花一叶
  • 文件大小32 KB
  • 时间2019-10-29