




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、proteus基于proteus的串口通信仿真班 级: 电信13-2 姓 名: 段学亮 邓成智 崔俊杰 邓石磊 陈亮 高金玉 成 绩: 电子与信息工程学院信息与通信工程系1. 设计要求1.1甲单片机向乙单片机机发送控制命令字符,甲单片机同时接收乙单片机机发送的数字,并显示在数码管上。1.2乙机程序接收甲机发送字符并完成相应动作乙机接收到甲机发送的信号后,根据相应信号控制led完成不同闪烁动作。2. 仿真电路图串口通信仿真电路图如图一图1:串口通信仿真电路图3串口通信c51程序/*名称:甲机串口程序说明:甲机向乙机发送控制命令字符,甲机同时接收乙机发送的数字,并显示在数码管上。*/#includ
2、e<reg51.h>#define uchar unsigned char#define uint unsigned intsbit led1=p10;sbit led2=p13;sbit k1=p17;uchar operation_no=0;/操作代码/数码管代码uchar code dsy_code=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/延时void delayms(uint ms)uchar i;while(ms-) for(i=0;i<120;i+);/向串口发送字符void putc_to_seria
3、lport(uchar c)sbuf=c;while(ti=0);ti=0;/主程序void main()led1=led2=1;p0=0x00;scon=0x50;/串口模式1,允许接收tmod=0x20;/t1工作模式2pcon=0x00;/波特率不倍增th1=0xfd;tl1=0xfd;ti=ri=0;tr1=1;ie=0x90;/允许串口中断while(1)delayms(100);if(k1=0)/按下k1时选择操作代码0,1,2,3while(k1=0);operation_no=(operation_no+1)%4;switch(operation_no)/根据操作代码发送a/b
4、/c或停止发送case 0:putc_to_serialport('x');led1=led2=1;break;case 1:putc_to_serialport('a');led1=led1;led2=1;break;case 2:putc_to_serialport('b');led2=led2;led1=1;break;case 3:putc_to_serialport('c');led1=led1;led2=led1;break; /甲机串口接收中断函数void serial_int() interrupt4if(ri)r
5、i=0;if(sbuf>=0&&sbuf<=9) p0=dsy_codesbuf;else p0=0x00;/*名称:乙机程序接收甲机发送字符并完成相应动作说明:乙机接收到甲机发送的信号后,根据相应信号控制led完成不同闪烁动作。*/#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit led1=p10;sbit led2=p13;sbit k2=p17;uchar numx=-1;/延时void delayms(uint ms)uchar i;while(ms
6、-) for(i=0;i<120;i+);/主程序void main()led1=led2=1;scon=0x50;/串口模式1,允许接收tmod=0x20;/t1工作模式2th1=0xfd;/波特率9600tl1=0xfd;pcon=0x00;/波特率不倍增ri=ti=0;tr1=1;ie=0x90;while(1)delayms(100);if(k2=0)while(k2=0);numx=+numx%11;/产生010范围内的数字,其中10表示关闭sbuf=numx;while(ti=0);ti=0;void serial_int() interrupt 4if(ri)/如收到则le
7、d则动作ri=0;switch(sbuf)/根据所收到的不同命令字符完成不同动作case 'x':led1=led2=1;break;/全灭case 'a':led1=0;led2=1;break;/led1亮case 'b':led2=0;led1=1;break;/led2亮case 'c':led1=led2=0;/全亮4.交通灯仿真效果4.1 按下甲单片机的按钮向单片机乙发送数据,再松开甲单片机的按钮,此时甲单片机的led1和乙单片机的led3亮如下图4-1。4-1:甲机的led1和乙机的led3分别点亮4.2 再次按下甲
8、单片机的按钮向单片机乙发送数据,再松开甲单片机的按钮,此时甲单片机的led2和乙单片机的led4亮如下图4-2。4-2:甲机的led2和乙机的led4分别点亮4.3 再次按下甲单片机的按钮向单片机乙发送数据,再松开甲单片机的按钮,此时甲单片机的led1、led2和乙单片机的led3、led4亮如下图4-3。4-3:甲机的led1、led2和乙机的led3、led4全部点亮4.4 按下乙单片机的按钮向单片机甲发送数据,再松开乙单片机的按钮,此时甲单片机的数码管显示0如下图4-4。此乙单片机的串口程序可以控制甲单片机的数码管从0显示到9.4-4:甲机的数码管点亮,显示04.5 不停按下和松开乙单片机的按钮向单片机甲发送数据,甲单片机的数码管显示从0到9,以此循环。当数码管显示9时,如下图4-5。4-4:甲机的数码管点亮,显示95. 总结在进行串口通信仿真任务的时候,我们通过在网上查阅单片机串口通信的基本原理,搞懂了其工作原理后,便开始了对串口通信的电路进行了构建,再proteus设计原理图的过程中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园科研项目支持合作合同(2篇)
- 《建筑设备与安装建模 》课件-项目三 设备与系统
- 2025年上海市新版房屋租赁合同范本
- 2025中外影视合作合同样本
- 浙江省台州十校2024-2025学年高二下学期4月期中物理试题(含答案)
- 四年级下册语文园地四教学设计
- 老年足病的临床护理
- 硬肿症的临床护理
- 第十四课使用表格规划网教学设计
- 新质生产力定义
- 2025年吉林省民航机场集团长白山机场公司招聘笔试参考题库附带答案详解
- 小学生涯课件
- 目光礼仪培训
- 西藏拉萨中学2024-2025学年高三第二学期英语试题4月月考试卷含解析
- 设备验收方案
- 高中家长会 高三高考冲刺家长会课件
- 2025-2030中国触觉马达行业市场发展趋势与前景展望战略研究报告
- 修订版中小学生行为守则(2024版)
- 青岛 地块西海岸新区项目投标设计方案
- 【高考真题】河北省2024年普通高中物理学业水平选择性考试试卷(含答案)
- PE特种设备焊工理论复习题库(带解析)
评论
0/150
提交评论