实验七 串行通信实验.docx
《实验七 串行通信实验.docx》由会员分享,可在线阅读,更多相关《实验七 串行通信实验.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验七串行通信实验班级 物联0901姓名 李王张 学号200908888888 指导老师 袁文澹一、实验目的掌握实现串行通信的基本方法;掌握键盘按键控制的串行通信实现方法;掌握定时控制的串行通信实现方法。根据电路和设计要求在PROTEUS平台仿真实现通信系统。二、实验内容实验内容自己创意!在实验报告中详细列出。三、实验原理PS:电路原理图(可局部图)、实验实现控制的原理表达。参照单片机实验板电路原理图四、实验方法与步骤设计思路和方法:根据电路图,分析交通灯的设计思路针对电路图及设计要求给出交通灯的程序框图。设计步骤:1、按照电路图上的MCU芯片与LED、7段数码管的连接方式,绘制交通灯控制系统
2、电路图。2、编写源代码。3、编译与调试。4、Proteus仿真运行及验证。五、实验结果与分析(实验程序设计必需先有程序框图,程序框图表达在实验报告中)1、软件设计过程a)源代码(汇编语言设计)ORG 00H ENDb)编译、调试过程c)编译结果分析2、控制系统设计实现过程、结果及分析a)控制系统电路图b)实现过程c)结果分析及结论(没有完成的过程或步骤请说明原因所在,实验结果偏差要分析原因,并给出可行的实验解决 方案或建议,得出正确的结果)六 实验结论(实验总结与实验心得)(给出实验的总结)(这是实验的心得)实验过程中经过对Wave6000仿真平台的操作,对软件仿真有了 XXXX 的认识。其中
3、,在进行编译时,刚开始没有成功,后来重新翻开软件再进行修改、编译就此解决 了问题。不过最后虽然输入了 XXXX并进行了保存,但是不知道如何检测XXXX是否保存到XXXX 中。对于XXXX平台的设定,在这次实验中XXXX。延时子函数void delay(unsigned int timer) while(timer);)注意:1、此模板框架、字体大小不要修改,框架下的具体内容请按照各自 试验自己认真完成。2、试验电路图是单片机实验电路板原理图。3、进实验室前请准备好程序流程框图和程序!请重视实验!喜欢实验!/ 2 T rT TW TW TW TW TW TW TW T TW TW 2 7 标题:
4、串口调试程序,查询法接收数据效果:运行本例子,翻开本例子文件夹中的上位机软件,设置波特率2400,再 进行发送数据,接收区返回接收内容*1 2k2 *!*2 *2 k2 *! *! *2/rjw rj* rj*rj* rj* rj rj rj* rj* rj* rj* rj* rj* rj*rj* rjw rj* rj*rj* rj* rj rj* rj* rj* rj* rjw rj* rj*rj*rjw rj* rj*rj* rj rj rj* rj* rj* rj* rj* rj* rj*r1*rj rj rj*rj* /ORG 0000HLJMP MAIN;主程序的开始ORG 0200
5、HMAIN: MOV TMOD,#20H ;设置定时器1为模式2,做为波特率发生器MOVTL1,#OF3H ;2400波特率的初值,板子使用12M 晶振,初值 =256-12000000/32/12/2400MOV THl,#0F3H ;SETB TRI ;启动波特率发生MOV SCON,#50H ;串口的工作方式,设置为方式2Ml: JNB RI,Ml ;查询是否有数据接收MOV A,SBUF ;数据暂存于ACLR RI;允许接收MOVSBUF,A ;将接收到的数据发送出去M2: JNB TI,M2 ;等待发送完成CLR TISJMP Ml;循环扫描串行通讯接口数据END2* *2* *2
6、2# 9# 2 *2* *2*2* *2#2# *2* 3 2#2* *2 *2 *2* kJ 2# *2* *2 *2#*2* *2# q rj* rj*rj* rj* rj* rjrj* rj*rj rj* rj*rj* rj,Jrj rjrj rj rj* ej rj,J rj力-rj rjw JJ- .一标题:串口调试程序,中断法接收数据效果:运行本例子,翻开本例子文件夹中的上位机软件,设置波特率2400,再 进行发送数据,数码管显示接收内容 ?7* 7*.?,?!“!,? ?”“ .! ! .! *1 / . 1 .J rj . rj ej* ej. 1 e|. . rj 1J. r
7、j ejw . rj. 1 Re|. ,. . rj 1J. rj rj J;脚功能定义KEY1 EQU P3.7 ;定义按键 1KEY2 EQU P3.6KEY3 EQU P3.5KEY4 EQU P3.4KEY5 EQU P3.3;定义按键2;定义按键3;定义按键4;定义按键5;定义按键5;定义按键2;定义按键3;定义按键4;定义按键5;定义按键5SMG_q EQU P1.0 SMG_b EQU Pl.lSMG_s EQU Pl.2SMG_g EQU Pl.3 ;定义数藉RAM空间;定义数码管阳级控制脚, ;定义数码管阳级控制脚, ;定义数码管阳级控制脚, ;定义数码管阳级控制脚,位位位位
8、 千百十个KEY6 EQU P3.2LDB EQU 30H ;定义一个变量存放显示值OLDKEY EQU 31H;保存按键接口状态;数据存放ORG 0100TABLE: DB0C0h,0F9H,0A4H,0b0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0AlH,86H,8EH;表:共阳数码管0-9A-FORG 0000HLJMP MAINORG 0023H;串 口中断LJMP COMORG 0100HMAIN: MOV TMOD,#20H ;设置定时器1为模式2,做为波特率发生器MOV TL1,#OF3H ;2400波特率的初值,板子使用12M 晶振,初值
9、 =256-12000000/32/12/2400MOV THl,#0F3H ;SETB TRI ;启动波特率发生MOV SCON,#50H ;串口的工作方式,设置为方式2SETB ES;翻开串口中断SETB EA;翻开总中断MOV LDB,#0MOV LDB,#0;变量复值0M0: LCALL READKEY;JZ M10M0: LCALL READKEY;JZ M10M0: LCALL READKEY;JZ M10DECA JNZ Ml INC LDBSJMPM10Ml: DECAJNZ M2 DEC LDBSJMPM10;按下1键;显示数据加1处理;处理后转入显示;处理按键2按下,与上类
10、同;减1处理M2: DEC AJNZ M3MOV A,LDB ADD A,#16 MOV LDB,A SJMP MIOM3: DEC AJNZ M4MOV A,LDB SUBB A,#16 MOV LDB,A SJMP MIOM4: DEC AJNZ M5MOV LDB,A SJMP MIOM5: DEC A JNZ MIO;处理键3按下;将变量加16处理,十六进制数;按键4按下;将变量减16处理;按键5按下;将变量清0;按键6按下,发送数据到串口MOV A,LDBMOV SBUF,AJNBTI,$ ;等待发关完成CLR TI ;MIO: MOV A.LDB ;用A做参数传递到显示子程序进行显
11、示LCALL DISPLAY ;调用显示子程序LJMP M0;循环扫描按键;串口中断,串口中断其实很简单,设置正确通讯的波特率,中断一来接收数据即COM: JNB RI.CR ;判断是接收中断处理CLR RI;允许接收下一字节,等待下一次中断MOVA.SBUF ;将当前接收的数据存入变量空间MOV LDB,ACR: RETI;读键值READKEY:MOV A,P3 ;ANLA,#0XFC ;CJNE AQLDKEY,K01;CLR A ;SJMP K10 ;KOI: MOV R7,#10 ;延时约 10MS,消抖动CALL DELAYM ;MOV A,P3 ;ANLA,#0XFC ;CJNE
12、A,#0XFC,K02 ;SJMP K09 ;K02: MOV OLDKEY,A ;JB KEY1.K1 ;MOV A,#l ;SJMP K10 ;KI: JB KEY2,K2 ;MOV A,#2 ;SJMP K10 ;K2: JB KEY3,K3 ;MOV A,#3 ;SJMP K10 ;K3: JB KEY49K4 ;MOV A,#4 ;SJMP K10 ;K4: JB KEY5,K5 ;MOV A,#5 ;SJMP K10 ;K5: JB KEY6,K10 ;MOV A,#6 ;SJMP K10 ;K09: CLR A ;MOV OLDKEY,#OXFC;K10: RET;延时子程序,可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验七 串行通信实验 实验 串行 通信
限制150内