基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx

基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx

ID:57256384

大小:88.70 KB

页数:6页

时间:2020-08-07

基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx_第1页
基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx_第2页
基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx_第3页
基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx_第4页
基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx_第5页
资源描述:

《基于Proteus虚拟终端51单片机仿真:串口发送字符串-数码管显示.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、先上图:实验程序:/**********************************************************************************【编写时间】:2016年6月17日*【作者】:小瓶子*【实验平台】:Proteus7*【外部晶振】:11.0592mhz*【主控芯片】:STC89C51*【编译环境】:KeilμVisio4*【程序功能】:在虚拟终端发送8个字符,通过数码管和虚拟*终端显示出来,8个字符发送完毕,显示发送完毕************************************************

2、**********************************/#include#include#defineucharunsignedchar#defineuintunsignedintucharbufr[]="------r";//存放接收数据uchar*prx=&bufr;//接收指针bitstr;//接收完毕标志位//段码ucharcodeleddata[]={0xC0,//"0"0xF9,//"1"0xA4,//"2"0xB0,//"3"0x99,//"4"0x92,//"5"0x82,//"6"0xF8

3、,//"7"0x80,//"8"0x90,//"9"0x88,//"A"0x83,//"B"0xC6,//"C"0xA1,//"D"0x86,//"E"0x8E,//"F"0x89,//"H"0xC7,//"L"0xC8,//"n"0xC1,//"u"0x8C,//"P"0xA3,//"o"0xBF,//"-"0xFF,//熄灭0xFF//自定义};//延时函数voiddelay(uinti){uintm,n;for(m=i;m>0;m--)for(n=90;n>0;n--);}//数码管显示函数voidled_display(){uchari;P2=0x01;fo

4、r(i=0;i<8;i++){P0=0xff;P2=_cror_(P2,1);P0=leddata[bufr[i]-'0'];delay(2);}}//字符发送函数voidputchar(uchardata1){SBUF=data1;//将待发送的字符送入发送缓冲器while(!TI);//等待发送完成TI=0;//发送中断标志请0}//字符串发送函数voidputstring(uchar*dat){while(*dat!='')//判断字符串是否发送完毕{putchar(*dat);//发送单个字符dat++;//字符地址加1,指向先下一个字符delay(5)

5、;}}//串口初始化函数voidserial_init(){TMOD=0x20;//定时器工作方式2SCON=0x50;//串行口工作方式2PCON=0x80;//SMOD=1,波特率加倍TH1=0xfa;TL1=0xfa;//波特率设置9600ES=1;EA=1;//开总中断}voidmain(){serial_init();TR1=1;putstring("Receivingfrom8051...r");putstring("----------------------r");delay(50);while(!str);//等待接收完毕while(1

6、){P0=0xff;while(!str);led_display();}}voidserial()interrupt4{if(RI!=1)return;//判断是否接收{str=0;ES=0;*prx=SBUF;//接收存放数据putchar(*prx);RI=0;prx++;//指针自加if(*prx=='')//是否接收完成{prx=&bufr;//指针初始化str=1;//标志位置1putstring("r");putstring("translateover!r");ES=1;return;}ES=1;return;//退出中断}}仿真原理

7、图:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。