




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
_ _专业 _单片机原理与应用系统设计 实验报告实验者 学号 班级 组别同组者_ 实验评阅教师签名_ 实验编号_ 实验名称 _单片机和PC通信 一、 实验目的1、 掌握单片机与PC或其他非单片机系统的通信原理及编程。2、掌握串行口中断的设置和中断服务程序的编程方法。二、实验电路 实验电路图三、 相关知识1,PC设备的通信接口2, 在Proteus中实现单片机和PC通信接口3, 在PC上配置虚拟串行接口4,PC上的串行口通信软件5,设置仿真元件COMPIM与串行口调试助手四、实验内容1、打开ISIS 7 Professional,参照“二;实验电路”设计仿真电路原理图。2、编写程序实现: 设置单片机串行口设为工作方式1,波特率为9600.PC从串行口发送符1、2、3或4到单片机串行口,单片机接受到该字符后,首先在P2口显示该字符,然后根据字符不同返回不同的字符串。 单片机和PC机通信内容PC发送字符 单片机返回11:what do you plan to do this Friday?22: I plan to go to zhe concert.33:what are you doing next week?44: i am thinking of going to my grandmas.其他字符D: plaese select a character 1,2,3or4!五、 实验程序 #include#include#include#include#include#include#define byte unsigned char#define uchar unsigned char#define word unsigned int#define uint unsigned int#define ulong unsigned long#define BYTE unsigned char#define WORD unsigned int#define TURE 1#define FALSE 0void time(unsigned int ucMs);/延时单元:msvoid initUart(void);/*初始化串行口波特率,使用定时器2*/void sendString(uchar *ucString);/往串行口发送字符串/* main 函数 */void main(void) time(1);/*延时等待外围器件完成复位*/ initUart();/*初始化串行口*/ IE=0x90;/*打开串行口中断*/ while(TURE)/*初始化串行口波特率*/void initUart(void)SCON=0x50;TMOD=0x20;PCON=0x00;TH1=0xfd;TCON=0x40; /* RCAP2H=(65536-(3456/96)8;RCAP2L=(65536-(3456/96)%256;T2CON=0x34; */*串行口中断服务程序*/void seria10_int(void) interrupt 4 uchar rChar; uchar code str1=what do you plan to do this Friday?;/收到0x01时的返回 uchar code str2=I plan to go to zhe concert.;/收到0x02时的返回 uchar code str3=what are you doing next week?;/收到0x03时的返回 uchar code str4=i am thinking of going to my grandmas.;/收到0x04时的返回 uchar code strdefault=plaese select a character 1,2,3or4!;/收到其他时的返回 unsigned char DispTab =0xf9,0xa4,0xb0,0x99; EA=0; RI=0; rChar=SBUF; P1=0xfe; P2=DispTabrChar-1; switch(rChar) case 1:/收到字符1 SBUF=1;while(TI=0)TI=0;/发送字符1 SBUF=:;while(TI=0)TI=0;/发送字符: sendString(str1);/发送字符串str1 break; case 2:/收到字符2 SBUF=2;while(TI=0)TI=0;/发送字符2 SBUF=:;while(TI=0)TI=0;/发送字符: sendString(str2);/发送字符串str2 break; case 3:/收到字符3 SBUF=3;while(TI=0)TI=0;/发送字符3 SBUF=:;while(TI=0)TI=0;/发送字符: sendString(str3);/发送字符串str3 break; case 4:/收到字符4 SBUF=4;while(TI=0)TI=0;/发送字符4 SBUF=:;while(TI=0)TI=0;/发送字符: sendString(str4);/发送字符串str4 break; default: SBUF=d;while(TI=0)TI=0;/发送字符d SBUF=:;while(TI=0)TI=0;/发送字符: sendString(strdefault);/发送字符串strdefault break; EA=1;/*开关中断*/void sendString(uchar *ucString)uchar i,stringLength=strlen(ucString);REN=0;for(i=0;istringLength;i+)SBUF=ucStringi;while(TI=0);TI=0; SBUF=0x0d;while(TI=0);TI=0;/* SBUF=0x0a;while(TI=0);TI=0;SBUF=0x0a;while(TI=0);TI=0;*/REN=1;void delay_5us(void) _nop_(); _nop_(); /_nop_(); /_nop_();void delay_50us(void) unsigned char i; for(i=0;i0) for(j=0;j10;j+) delay_100us(); ucMs-;六、 实验小结通过这次的实验,我掌握了单片机与PC或其他非单片机的通信原理。虽然之前没看过这个实验,但是在编程的时候还是很顺利的,一开始,不知道怎么做,只知道单纯的去连线,可是搞了半天,自己还是不会,即使有程序也没用。后来,在和同学的讨论过程中自己会做了,而且,还教会了其他同学怎么做。同时,我还掌握了串行口
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业电气安全知识培训课件
- 年度商场安全培训安排表课件
- 工业消防安全培训心得课件
- 绩效管理实务 习题及答案 5绩效沟通与绩效信息收集
- 平面图优化讲解课件
- 2025年安乡事业单位真题
- 2025年安福事业单位真题
- 2025年新能源行业质量认证技术挑战与机遇报告
- 夜间骑行安全培训内容课件
- 2025年金融衍生品市场创新与风险防范策略案例分析
- 广西福泰印染有限公司年产全棉针织面料3.6万吨生产项目环境影响报告书
- 【《我国小学生课外培训现状调查及问题和建议浅析》10000字(论文)】
- 民航招飞面试常见的面试问题及答案
- 每日食品安全检查记录 (一)
- GB/T 2481.1-2025固结磨具用磨料粒度组成的检测和标记第1部分:粗磨粒F4~F220
- 航空技术革新与发展趋势
- 四川日普精化有限公司年产3000吨脂肪酸酰胺与1000吨有机硅树脂涂剂配套设施改造项目环评报告
- 2025四川成都广播影视集团有限责任公司招聘22人笔试参考题库附带答案详解
- 北师大版三年级数学上册第二单元 测量(二)素养达标(A卷)(含答案)
- 2025年(高级)政工师理论考试题库及答案
- 2025年教育督导员督导知识试卷及答案
评论
0/150
提交评论