资源描述:
《单片机实验四实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、单片机实验报告四姓名学号0615212016评时间—地点单片机实验室阅实验题目串行口实验==一、实验目的1.学习MCS-51串行口的工作原理及使用方法。2.学习MCS-51串行口的初始化程序、应用程序的编写和调试。二、实验主要仪器及环境:PC机、WAVE软件、仿真器+仿真头、实验板、屯源等。三、实验内容1、Pl.0-P1.7作输入口接拨动开关S0-S7,每当有开关动作(低电平)时,1)将开关编号(0—7)存入内部数据存储器,要求存入的开关编号数据不少于10个,存储空间自定;2)采用工作寄存器记录开关动作总次数;3)通过本机的TXD和RXD进行串行通信,发送开
2、关编号,接收的数据存入另一内部数据存储器,存储空间自定(不能重叠),要求采用方式1,波特率为4800b/s,fosc=ll.0592MHz;4)将接收到的数据显示在LED数码管。编写初始化程序和中断服务程序,在实验板上调试通过。2、双机通信1)甲机Pl・0-P1.7作输入口接拨动开关S0-S7,每当有开关动作(低电平)A、将开关编号(0—7)存入内部数据存储器,开关编号数据显示在LED数码管上。B、采用工作寄存器记录开关动作总次数,数据以二进制形式显示在LED上。C、通过木机的TXD发送开关编号及开关动作总次数,要求采用方式3,奇校验,波特率为2400b/s
3、,fosc=11.0592MHz;2)乙机通过本机的RXD接收甲机发送的开关编号及开关动作总次数数据,要求采用方式3,奇校验,波特率为2400b/s,fosc=11.0592MHz;将接收到的开关编号数据显示在LED数码管,开关动作总次数数据以二进制形式显示在LED±o编写初始化程序和中断服务程序,在实验板上调试通过。将接收和发送互换,将波特率改为9600b/s,完成上述双机通信任务。五、实验步骤首先分析试验要求,设置实验电路和软件部分。软件部分先分析算法,画出算法流程图,然后编写程序,调试,最后用wave仿真机硬件测试。六、实验程序流程框图、实验程序(必须
4、加注释)一、试验一:程序:ORGOOOOHAJMPMAINORG001BHAJMPTIME1ORG0023HLJMPTRXORG0030H;定义数码管显示码DB0BFH,30H,5BH,4FH,66HDB6DH,7DH,07H,0FFH,6FHORG0050H;定义LED显示码DB00H,01H,02H,04H,08H•DB10H,20H,40H,80HMAIN:MOVSP,#60HMOVSCON,#50HMOVPCON,#OOHCLRPSSETBES;串口屮断初始化MOVTMOD,#22HMOVTL1,#OFAHMOVTH1,#OFFHSETBET1SET
5、BPT1SETBTRISETBEACLRRI;MOVR6,#00HMOVR0,#30H;发送数据存储开始地址MOVR1,#5()H;接收数据存储开始地址START:LCALLREADMOV@R0,AINCROINCR6CLRTI;CLRESMOVSBUF,AWAIT1:JNBTI,WAIT1SETBES■AJMPSTART流程图:TIME1:NOPRETITRX:PUSHAJNBRI,FINSH1MOV@R1,SBUFINCR1MOVA,SBUFLCALLSHUMAGUANCLRRIFINSH1:POPARETIREAD:NOPMOVP1,#OFFHMOVA
6、,PlJZFINSHCLRCMOVR7,#00HLOOP1:RRCAINCR7JNCLOOP1FINSH:MOVA,R7RETSHUMAGUAN:MOVDPTR,#0030HMOVCA,@A+DPTRMOVP2,ARETEND测试结果:二、实验二甲机程序:甲机流程图:ORGOOOOHAJMPMAINORG001BHAJMPTIME1;T1工作在2方式ORG0023HLJMPTRXORG0030H;定义数码管显示码DB0BFH,30H,5BH,4FH,66HDB6DH,7DH,07H,0FFH,6FHORG0050H;定义LED显示码DB00H,01H,02H
7、,04H,08H•DB10H,20H,40H,80HMAIN:MOVSR#60HMOVSCON,#OCOHMOVPCON,#OOHCLRPSSETBES;串口中断初始化SETBET1SETBPT1MOVTMOD,#22HMOVTL1,#OF4HMOVTH1,#OFFHSETBTRI;定时器中断初始化SETBEAMOVR0,#00HMOVR1,#00HSTART:LCALLREADMOVRO,A;存开关编号CLRTI;・MOVTB8,PSW.O;奇偶校验位置CLRESMOVSBUF,AWAIT1:JNBTI,WAIT1SETBESLCALLSHUMAGUANI
8、NCR1;总开关次数加一CLRTlMOVA,R1MO