欢迎来到天天文库
浏览记录
ID:57096208
大小:647.00 KB
页数:12页
时间:2020-08-02
《实验3 串行通信实验教学文案.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验3串行通信实验精品文档单片机原理及应用学院计算机与电子信息学院专业电子信息工程班级电信11-班姓名学号110340301指导教师左敬龙实验报告评分:_______收集于网络,如有侵权请联系管理员删除精品文档实验3串行通信实验一、实验原理及电路利用单片机串行通信系统来实现数据的传输。本次串行通信实验,我是通过利用串行口中断来接收数据和利用按键来发送特定的信息。接收的数据将由P1口的8个LED灯的亮与灭来表示,我的实验板为低电平有效,所以想要那些LED灯亮起来就发送相应的16进制代码就可以进行控制了。发送的特定信息则通过按键K1(P3^2)来进行发送,发送的内容是由数组的形式来表示。然后通过发
2、送函数循环地将数组里的数据独个地发送出去。既然要用按键来进行发送数据,那么就要对按键进行消抖处理,我则采用了软件方法去抖动,也就是通过延时函数来进行延时10ms-20ms后再次判断按键是否已闭合的方法。接下来就要对串行口进行初始化:第一、按选定串行口的工作方式设定SCON的SM0、SM1。(SCON=0x50表示工作方式一并允许接受数据);第二、设定接受/发送的波特率(TH1=TL1=0xfd表示比特率为9600b/s);第三、设定SMOD的状态,以控制波特率是否加倍(PMOD=0x00表示波特率不加倍);第四、若选定工作方式1或3,则应对定时器T1进行初始化操作,即设定T1的工作方式和初值,
3、以设定其溢出率。这样就可以实现基本串行通信了。收集于网络,如有侵权请联系管理员删除精品文档电路原理图一、功能说明通过串口调试大师来对实验板进行数据的传送,传送的数据将通过P1口来显示。而实验板则通过按键K1控制来对电脑进行传输特定的数据(DianXin11-1ZXF)。二、实验框图收集于网络,如有侵权请联系管理员删除精品文档 四、实验代码#include#defineucharunsignedchar#defineuintunsignedintucharidatatemp[]={'D','i','a','n','X','i','n','1','1','-','1','Z','
4、X','F',0x00};sbitK1=P3^2;voiddelay1ms(uinti){ucharj;while(i--){for(j=0;j<115;j++){;}收集于网络,如有侵权请联系管理员删除精品文档}}voidint_1()interrupt4{uchari=0;if(RI){RI=0;i=SBUF;P1=SBUF;}}voidSend(){ucharj=0;while(temp[j]!=0x00){SBUF=temp[j];while(!TI);TI=0;j++;}}main(){TMOD=0x20;TH1=0xfd;TL1=0xfd;SCON=0x50;PCON=0x00;T
5、R1=1;ES=1;EA=1;while(1){if(K1==0){delay1ms(20);if(K1==0){Send();收集于网络,如有侵权请联系管理员删除精品文档while(!K1);}}}}五、实验过程第一步 启动Keil,新建一个工程第二步 新建一个zd.C,并加入到工程中,输入如下内容:收集于网络,如有侵权请联系管理员删除精品文档收集于网络,如有侵权请联系管理员删除精品文档第三步 编译并调试程序第四步将单片机学习板与计算机连接,并将编译完成后生成的*.hex文件下载到开发板收集于网络,如有侵权请联系管理员删除精品文档收集于网络,如有侵权请联系管理员删除精品文档第六步收集于网络,
6、如有侵权请联系管理员删除精品文档实验现象:将程序下载到学习板后,能够按照一开始设计的想法进行,没有出错。 六、实验小结通过本次实验,使我对Proteus 7 Professional软件的使用方法有了进一步的了解,并对串行口中断的结构、异步通信、串行通信模式、波特率的设置的认识都有了进一步的加深。还有对书写程序的格式有了进一步的提高。虽然在本次试验中遇到了的问题,但经过自己的不断探索、查阅资料和看视频教程,问题都得到了解决,同时,每次实验成功的时候都有一定的喜悦感和信心。收集于网络,如有侵权请联系管理员删除
此文档下载收益归作者所有