




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机指导书范文 单片微型计算机实验指导书二六年十月修订实验一清零实验7实验二拆字实验9实验三拼字实验9实验四数据块传送实验10实验五数据排序实验11实验六查找相同数的个数11实验七多分支程序12硬件实验一P1口亮灯实验15硬件实验二P1口转弯灯实验15硬件实验三P3.3口输入P1口输出13硬件实验四工业顺序控制15硬件实验五8255控制交通灯17硬件实验六A/D转换实验20硬件实验七D/A转换实验21硬件实验八8279键盘显示实验23硬件实验九128*64LCD液晶显示23硬件实验十单片机RS232/RS485串行发送实验(双机通讯)硬件实验十一单片机RS232/RS485串行接收实验(双机通讯)实验一清零实验 一、实验目的掌握汇编语言设计和调试方法,熟悉键盘的操作。 二、实验内容把2000H20FFH的内容清零。 三、实验程序框图及参考程序开始结束R0=00H,DPTR=2000H,A=00HA DPTRR0=00?DPTR+1DPTRR0+1R0否ORG0000H LJMPSE01ORG0640H SE01:MOV R0,#00H MOV DPTR,#2000H LOO1:CLR A MOVXDPTR,A INC DPTR;DPTR+1INC R0;字节数加1CJNE R0,#00H,LOO1;不到FF个字LOOP:SJMP LOOPEND 四、实验步骤用连续或单步方式运行程序,检查200020FF中执行程序前后的内容变化。 五、思考若要把7000H70FFH中的内容改成FFH,应如何编制程序?实验二拆字程序 一、实验目的掌握汇编语言设计和调试方法。 二、实验内容把2000H的内容拆开,高位送xxH低位,低位送xxH低位,xxH、xxH高位清零,一般本程序用于把数据送显示缓冲区时用。 三、实验程序框图开始DPTR=2000H,(DPTR)A,A BA的高低位互换,屏蔽高四位DPTR+1DPTR,A(DPTR)DPTR DPTR+1,B A,屏蔽A的高四位A(DPTR)结束 四、实验步骤用连续或单步方式运行程序,检查2000HxxH中内容变化情况。 五、思考如何用断点方式调试本程序。 实验三拼字程序 一、实验目的进一步掌握汇编语言设计和调试方法。 二、实验内容把2000H.xxH的低位分别送入xxH高低位,一般本程序用于把显示缓冲区的数据取出拼装成一字节。 三、实验程序框图开始DPTR=2000H,(DPTRA,将A屏蔽高位,高低位互换,送BDPTR+1DPTR,(DPTR)A将A屏蔽高位,与B相或DPTR DPTR+1,A DPTR结束 四、实验步骤单步或用断点方式运行程序,检查xxH内容变化情况。 实验四数据区传送子程序 一、实验目的掌握RAM中的数据操作。 二、实验内容把R2.R3源RAM区首址内的R6.R7字节数据传送到R4.R5目的RAM区。 三、实验程序框图开始R2=00H,R3=00H,R4=20H,R5=00H,R6=1FH,R7=FFHR3DPL,R2DPL,(DPTR)AR5DPL,R4DPH,A(DPTR)源地址加1,目的地址加1,字节数减1结束R6=00H,R7=00H?否 四、实验步骤在R2.R3中输入源首址(例如0000H),R4.R5中输入目的地址(例如2000H),R6.R7中输入字节数(例如lFFFH),运行程序,检查0000HlFFFH中内容是否和2000H3FFFH中内容完全一致。 实验五数据排序实验 一、实验目的熟悉51指令系统,掌握程序设计方法。 二、实验内容编写并调试一个排序子程序,其功能为用冒泡法将内存RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。 三、程序框图及参考程序ORG0000H LJMUE ORG09B0H QUE:MOV R3,#50H QUE1:MOV A,R3MOV R0,A MOV R7,#0AH CLR00H MOV A,R0QL2:INC R0MOV R2,A CLR C MOV22H,R0CJNE A,22H,QL3SETB CQL3:MOV A,R2JC QL1SETB00H XCH A,R0DEC R0XCHA,R0INC R0QL1:MOV A,R0DJNZ R7,QL2JB00H,QUE1LOOP:SJMP LOOPEND开始结束清标志位,置地址指针R0(R0)A(R0)+1R0A(R0)?置标志位,交换内容长度L=0?标志位=0?是否否 四、实验步骤将RAM50H5AH中放入不等的数据,用断点方法运行本实验程序后检查50H5AH中的内容是否按从小到大的次序排列。 五、思考修改程序把50H5AH中内容从大到小排列。 实验六查找相同数个数 一、实验目的熟悉汇编语言编程。 二、实验内容在2000H200FH的N个单元中填入零,运行本程序后检查2100H中是否为N。 三、实验程序框图开始查找字节数10H R0相同字数初值00H R12000H DPTR(DPTR)AA=00H?R1+1R1DPTR+1DPTRR0-1=00H?结束是否 四、实验步骤在2000H200FH的几个单元中填入零,运行本程序后检查2100H中是否是几个单元数。 五、思考修改程序,查找其它内容。 实验七多分支程序 一、实验目的掌握汇编语言的编程。 二、实验内容编写程序,根据送入的数据转移运行。 三、实验程序框图及参考程序开始(20H)A散转表首址DPTR散转至A+DPTR处3字循环2字循环1字循环0字循环(A)*2A ORG0000H LJMPMEMS ORG0A10H MEMS:MOV A,#43H MOV DPTR,#0FF20H MOVXDPTR,A MOV A,20H MOV DPTR,#KKKK;散转地址RL A; (20)*2JMPA+DPTR;转到 (20)*2+DPTR KKKK:AJMP MEMSP0AJMP MEMSP1AJMP MEMSP2SJMP MEMSP3MEMSP0:MOV20H,#0C0H;0字循环LJMP SOX0MEMSP1:MOV20H,#0F9H;1字循环LJMP SOX0 四、实验步骤在20H中分次送入00.01.02.03,每次运行程序后,观察数码管上数字循环情况。 硬件实验一P1口亮灯实验 一、实验目的(l)学习P1口的使用方法; (2)学习延时子程序的编写。 二、实验内容P1口输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。 三、实验程序框图及参考程序开始P1口初始化点亮一位发光二极管左移一位循环ORG0000H LJMPSE18ORG0790H SE18:MOV P1,#0FFH;送P1口LO34:MOV A,#0FEH;L1发光二极管点亮LO33:MOV P1,A LCALLSE19;延时RL A;左移位SJMP LO33;循环ORG07A0H SE19:MOV R6,#0A0H LO36:MOV R7,#0FFH LO35:DJNZ R7,LO35DJNZ R6,LO36;延时RET END 四、实验接线图 五、实验步骤P1.0P1.7用插针连至L1L8,运行程序后,观察发光二极管闪亮移位情况。 六、思考改变延时常数,使发光二极管闪亮时间改变。 修改程序,使发光二极管闪亮移位方向改变。 实验二P1口转弯灯实验 一、实验目的进一步了解P1口的使用,学习汇编语言编程方法及调试技巧。 二、实验内容P1.0开关接5V,右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮,P1.0,P1.1开关同时接5V或接地时,转弯灯均不闪亮。 三、实验程序框图及参考程序开始关灯关灯关灯延时,清标志位延时,置标志位延时,置标志位延时,清标志位开右灯关左灯只是P1.0高吗只是P1.1高吗标志位为1吗标志位为1吗NNYYYNN开左灯关右灯ORG0000H LJMP PX00ORG0C30H PX00:MOV P1,#0FFH;初始化PX03:MOV A,P1MOV B,A ANL A,#03H CJNE A,#01H,PX01;只是P1.0为高?JB00H,PX04;闪烁标志位CLR P1.4CLR P1.5;开右灯SETB P1.6SETB P1.7;关左灯MOV R2,#20H LCALL DELY;延时SETB00H;置标志位LJMP PX03;继续查找状态PX04:SETB P1.4SETB P1.5SETB P1.6;关灯SETB P1.7MOV R2,#20H LCALLDELY;延时CLR00H;清标志位AJMP PX03;继续查找状态PX01:CJNE A,#02H,PX02;只是P1.1为高吗?JB01H,PX05;判标志位SETB P1.4SETB P1.5;开左灯CLR P1.6CLR P1.7;关右灯MOV R2,#20H LCALLDELY;延时SETB01H;置标志位LJMP PX03;继续查找PX05:SETB P1.4SETB P1.5SETB P1.6;关灯SETB P1.7MOV R2,#20H LCALLDELY;延时CLR01H;清标志位LJMP PX03;继续查找状态PX02:SETB P1.4SETB P1.5SETB P1.6;关灯SETB P1.7LJMPPX03;继续DELY:PUSH02H DEL2:PUSH02H DEL3:PUSH02H;延时DEL4:DJNZ R2,DEL4POP02H DJNZ R2,DEL3POP02H DJNZ R2,DEL2POP02H DJNZ R2,DELY RET END 四、实验接线图 五、实验步骤P1.0接K1,P1.1接K2,P1.4P1.7接L 1、L 5、L 9、L13,连续运行本程序,应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序,(例可把延时程序第一个字节改成返回指令22H),以便观察。 实验三P3口输入,P1口输出 一、实验目的掌握P3口P1口简单使用。 二、实验内容P3.3口输入一脉冲,PI口按16进制加一方式点亮发光二极管。 三、实验程序框图及参考程序ORG0000H LJMPJ100ORG0810H J100:MOV A,#00H J101:JB P3.3,J101MOV R2,#10H LCALLDELY JBP3.3,J101;P3.3电平为低吗?J102:JNB P3.3,J102MOV R2,#10H LCALLDELY JNB P3.3,J102;P3.3电平为高吗?INC A;加1PUSH ACCCPL A;取反MOV P1,A;驱动发光二极管POP ACCAJMP J101;循环DELY:PUSH02H DEL2:PUSH02H DEL3:PUSH02H DEL4:DJNZ R2,DEL4;延时POP02H DJNZ R2,DEL3POP02H DJNZ R2,DEL2POP02H DJNZ R2,DELY RETEND 四、实验接线图 五、实验步骤P3.3用接针连至K1P1.0P1.7插针连至L1L8,K1拨动一次,L1L8发光二极管按16进制方式加一点亮。 六、思考修改程序,使发光二极管左移方式点亮。 实验四工业顺序控制 一、实验目的掌握工业顺序控制程序的简单编程,中断的使用。 二、实验内容由P1.01.6控制注塑机的七道工序,现模拟控制七只发光二极的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平启动。 P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。 三、实验程序框图及参考程序ORG0000H LJMPPO10ORG0013H LJMPPO16ORG0190H PO10:MOV P1,#7FH ORLP3,#00H PO11:JNB P3.4,PO11;开工吗?ORL IE,#84H ORLIP,#04H MOV PSW,#00H;初始化MOV SP,#53H PO12:MOV P1,#7EH;第一道工序ACALL PO1B MOVP1,#7DH;第二道工序ACALL PO1B MOVP1,#7BH;第三道工序ACALL PO1B MOVP1,#77H;第四道工序ACALL PO1B MOVP1,#6FH;第五道工序ACALL PO1B MOVP1,#5FH;第六道工序ACALL PO1B MOVP1,#0FH;第七道工序ACALL PO1B SJMPPO12PO16:MOV B,R2;保护现场PO17:MOVP1,#7FH;关输出MOV20H,#0A0H;振荡次数PO18:SETB P1.7;振荡ACALL PO1A;延时CLR P1.7;停振ACALL PO1A;延时DJNZ20H,PO18;不为0转CLR P1.7ACALL PO1A;停振JNBP3.3,PO17;故障消除吗?MOV R2,B;恢复现场RETI PO19:MOV R2,#10H ACALLDELY;延时1RET PO1A:MOV R2,#06H ACALLDELY;延时2RET PO1B:MOV R2,#30H ACALLDELY;延时3RET DELY:PUSH02H DEL2:PUSH02H DEL3:PUSH02H;延时DEL4:DJNZ R2,DEL4POP02H DJNZ R2,DEL3POP02H DJNZ R2,DEL2POP02H DJNZ R2,DELY RETEND 四、实验接线图 五、实验步骤JP向下短接,按图接好连线。 执行程序,把K1接到低电平,观察发光二极管点亮情况,确定工序执行是否正常,然后把K2置为低电平,看是否有声音报警,恢复中断1.报警停,又从刚才报警时一道程序执行下去。 可用单步、单步跟踪,非全速断点、全速断点,连续执行功能调试软件,直到符合自己程序设计要求为止。 六、思考修改程序,使每道工序中有多位输出。 实验五8255控制交通灯 一、实验目的进一步了解8255芯片的结构及编程方法,学习模拟交通控制的实现方法。 二、实验内容用8255做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。 三、实验程序框图及参考程序ORG0000H LJMP JOD0ORG0BB0H JOD0:MOV SP,#60H MOV DPTR,#0FF2BH MOV A,#88H MOVXDPTR,A;8255初始化MOV DPTR,#0FF28H MOV A,#0B6H MOVXDPTR,A INC DPTR MOV A,#0DH MOVXDPTR,A;点亮4个红灯MOV R2,#25H;延时LCALLDELYJOD3:MOV DPTR,#0FF28H MOV A,#75H MOVXDPTR,A INC DPTR MOV A,#0DH MOVXDPTR,A;东西绿灯亮,南北红灯亮MOV R2,#55H LCALLDELY;延时MOV R7,#05H;闪烁次数JOD1:MOV DPTR,#0FF28H MOV A,#0F3H MOVXDPTR,A INCDPTR MOV A,#0CH MOVXDPTR,A;东西黄灯亮,南北红灯亮MOV R2,#20H LCALLDELY;延时MOV DPTR,#0FF28H MOV A,#0F7H MOVXDPTR,A INCDPTR MOV A,#0DH MOVXDPTR,A;南北红灯亮MOV R2,#20H LCALLDELY;延时DJNZ R7,JOD1;闪烁次数未到继续MOV DPTR,#0FF28H MOV A,#0AEH MOVXDPTR,A INCDPTR MOV A,#0BH MOVXDPTR,A;东西红灯亮,南北绿灯亮MOV R2,#55H LCALLDELY;延时MOV R7,#05H;闪烁次数JOD2:MOV DPTR,#0FF28H MOV A,#9EH MOVXDPTR,A INCDPTR MOV A,#07H MOVXDPTR,A;东西红灯亮,南北黄灯亮MOV R2,#20H LCALLDELY;延时MOV DPTR,#0FF28H MOV A,#0BEH MOVXDPTR,A INCDPTR MOV A,#0FH MOVXDPTR,A;东西红灯亮MOV R2,#20H LCALLDELY;延时DJNZ R7,JOD2;闪烁次数未到继续LJMPJOD3;循环ORG0C30H DELY:PUSH02H DEL2:PUSH02H DEL3:PUSH02H;延时DEL4:DJNZ R2,DEL4POP02H DJNZ R2,DEL3POP02H DJNZ R2,DEL2POP02H DJNZ R2,DELY RETEND 四、实验接线图 六、实验步骤8255PA0PA7PB0PB3接发光二极管L15L 13、L11L 9、L7L 5、L3L1。 执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后东西路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,再切换到东西路口方向,之后重复以上过程。 实验六A/D转换实验 一、实验目的 (1)掌握A/D转换与单片机接口的方法; (2)了解A/D芯片0809转换性能及编程方法; (3)通过实验了解单片机如何进行数据采集。 二、实验内容利用实验系统上的0809做A/D转换器,实验系统上的电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。 三、实验接线图4,实验程序框图ORG0000H LJMPSE11ORG05A0H SE11:MOV SP,#53H MOV A,#43H MOV DPTR,#0FF20H MOVXDPTR,A MOV7EH,#00H MOV7DH,#08H MOV7CH,#00H MOV7BH,#09H MOV7AH,#10H MOV79H,#10H;显示缓冲区初值LO18:LCALL SSEE;显示MOV A,#00H MOV DPTR,#8000H MOVXDPTR,A;0809的0通道采样MOV R7,#0FFH;延时LO17:DJNZR7,LO17MOVX A,DPTR;取出采样值MOV R0,#79H LCALL PTDS SJMP LO18;采样值送显示缓冲区ORG05D0H PTDS:MOV R1,A;拆送显示缓冲区ACALL PTDS1MOV A,R1SWAP APTDS1:ANL A,#0FH MOVR0,A INC R0RET ORG0D50H SSEE:SETB RS1;换工作区MOV R5,#05H SSE2:MOV30H,#20H MOV31H,#7EH MOV R7,#06H SSE1:MOV R1,#21H MOV A,30H CPL A MOVXR1,A;字位送入MOV R0,31H MOV A,R0MOV DPTR,#DDFF MOVC A,A+DPTR;取字形代码MOV R1,#22H MOVXR1,A;字形送入MOV A,30H RRA;右移MOV30H,A DEC31H MOV A,#0FFH MOVXR1,A;关显示DJNZR7,SSE1;六位显示完了吗?DJNZR5,SSE2;5次显示完了吗?CLR RS1RET DDFF:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH END 五、实验步骤把0809的零通道INT0用插针接至AOUT1孔,CS4接8000H孔,JX0接JX6,运行程序,数码管上显示0809.XX,,后二位显示当前采集的电压转换的数字量,调节W1,该二位将随着电压变化而相应变化。 六、思考修改程序,用其它通道轮流采样显示。 实验七D/A转换 一、实验目的 (1)了解D/A转换与单片机的接口方法; (2)了解D/A转换芯片0832的性能及编程方法; (3)了解单片机系统中扩展D/A转换芯片的基本方法; 二、实验内容利用0832输出一个从0V开始逐渐升至5V再降至0V的可变电压。 三、实验接线图 四、实验程序框图与参考程序ORG0000H LJMPSE13ORG05E0H SE13:MOV SP,#53MOV A,#43H MOV DPTR,#0FF20H MOVXDPTR,A MOV7EH,#00H MOV7DH,#08H MOV7CH,#03H MOV7BH,#02H;显示缓冲区初值LO20:MOV R6,#00H LO21:MOV DPTR,#8000H MOV A,R6MOVXDPTR,A;送0832转换MOV R0,#79H LCALLPTDS LCALLSSEE;显示MOV R2,#08H LCALLDELYA;延时INC R6;加1CJNE R6,#0FFH,LO21;不到FF继续加LO22:MOV DPTR,#8000H DEC R6MOV A,R6;减1送0832转换MOVXDPTR,A MOV R0,#79H LCALLPTDS LCALLSSEE;显示MOV R2,#08H LCALLDELYA;延时CJNE R6,#00H,LO22;不为0继续减SJMP LO20;循环ORG0620H PTDS:MOV R1,A;拆送显示缓冲区LCALLPTDS1MOV A,R1SWAP APTDS1:ANL A,#0FH MOVR0,A INC R0RET ORG0D50H SSEE:SETB RS1;换工作区MOV R5,#05H SSE2:MOV30H,#20H MOV31H,#7EH MOV R7,#06H SSE1:MOV R1,#21H MOV A,30H CPL A MOVXR1,A;字位送入MOV R0,31H MOV A,R0MOV DPTR,#DDFF MOVC A,A+DPTR;取字形代码MOV R1,#22H MOVXR1,A;字形送入MOV A,30H RRA;右移MOV30H,A DEC31H MOV A,#0FFH MOVXR1,A;关显示DJNZR7,SSE1;六位显示完了吗?DJNZR5,SSE2;五次显示完了吗?CLR RS1RET DDFF:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH DELYA:PUSH02H DELYB:PUSH02H DELYC:PUSH02H DELYD:DJNZR2,DELYD LCALLSSEE;调显示子程序POP02H DJNZR2,DELYC POP02H DJNZR2,DELYB POP02H DJNZR2,DELYA;延时RETEND 五、实验步骤把0832译码线CS5接至8000孔,JX0接JX2,运行程序,数码管上显示不断加大或减小的数字量,用万用表测试D/A输出孔AOUT应也能测出不断加大或减小的电压值。 六、思考修改程序,使能产生锯齿波实验八8279键盘显示实验 一、实验目的掌握8051系统中,扩展8279键盘显示接口的方法。 二、实验内容按下数字键,数码管上应相应能显示数字,按下功能键,能相应执行其它程序。 三、实验接线图 四、实验程序框及参考程序O RG0000H LJMP H900ORG00D0H H900:MOV SP,#53H MOV DPTR,#8001H MOV A,#00H;MOVXDPTR,A;8279方式字写入MOV A,#32H MOVXDPTR,A;分频MOV A,#0DFH MOVXDPTR,A H901:MOVX A,DPTR;清缓冲区JB ACC.7,H901MOV A,#85H MOVXDPTR,A MOVDPTR,#8000H MOV A,#0c8H MOVXDPTR,A;字形送入INCDPTR MOV A,#85H MOVXDPTR,A;字位送入,显示PH902:MOV30H,#85H MOV31H,#40H H903:MOVDPTR,#8001H MOVX A,DPTR ANLA,#07H CJNE A,#00H,H904;有键按下吗?AJMP H903H904:MOVDPTR,#8000H MOVX A,DPTR MOVB,A;取出键值MOV R1,#00H MOVDPTR,#GOJZ H905:MOV A,#00H MOVC A,A+DPTR;查键值表是否相同CJNE A,B,H906AJMP H907;转数字外处理程序H906:INCDPTR;键表地址加1INC R1;查找次数加1MOV A,R1JB ACC.4,H908;是功能键吗?AJMP H905;继续查找H908:MOV R1,#00H MOVDPTR,#GOJZ1H909:MOV A,#00H MOVC A,A+DPTR;功能键键值取出CJNE A,B,H90A;键值相等吗?AJMP H90B;转功能键处理子程序H90A:INCDPTR INC R1MOV A,R1JNB ACC.2,H909;继续查找AJMP H900;无键按下返回H907:MOV A,30H MOVDPTR,#8001H;字位送入8279MOVXDPTR,A MOV A,R1MOV R0,31H MOVR0,A INC31H;字形缓冲区加1MOVDPTR,#ZOE0MOVC A,A+DPTR;取出字形代码MOVDPTR,#8000H MOVXDPTR,A;送入8279显示DEC30H;字位加1MOVA,30H CJNEA,#7fH,H90C;显示到第8位,从头显示AJMP H902H90C:AJMP H903H90B:MOVDPTR,#CKEY3;功能键散转处理MOVA,R1RL AADD A,R1JMPA+DPTR CKEY3:LJMP L240LJMP L241LJMP L242LJMP H900GOJZ:DB0C9H,0C1H,0D1H,0E1H,0C8H,0D8H,0E8H,0C0H,0D0H DB0E0H,0F0H,0F8H,0F1H,0F9H,0E9H,0D9H GOJZ1:DB0F2H,0FAH,0F3H,0FBH ZOE0:DB0CH,9FH,4AH,0BH,99H,29H,28H,8FH,08H,09H,88H DB38H,6CH,1AH,68H,0E8H ORG0E41H L240:MOV R5,#0CH LJMPL245;0字循环L241:MOV R5,#9FH LJMPL245;1字循环L242:MOV R5,#4AH L245:MOV R6,#80H;2字循环L246:MOVA,R6MOVDPTR,#8001H MOVXDPTR,A;字位送入8279MOVA,R5MOVDPTR,#8000H MOVXDPTR,A;字形送入8279MOV R2,#20H LCALLDELY;延时MOVA,#0FFH MOVXDPTR,A;关显示INC R6;下一位显示CJNE R6,#88H,L246AJMP L245;不到最后一位继续RET DELY:PUSH02H DEL2:PUSH02H DEL3:PUSH02H DEL4:DJNZR2,DEL4POP02H DJNZR2,DEL3POP02H DJNZR2,DEL2POP02H DJNZR2,DELY RETEND 五、实验步骤把CS6孔用插针连至8000孔,JSL接JS,JRL接JR,JOUT接JLED,SW3,SW4,SW5置OFF(实验完后置ON),运行程序,数码管上显示P,按下数字键,数码管上应能显示相应数字,按下功能键,数码管上显示相应的0字l字2字循环。 六、思考修改程序,高四位数码管显示数字当地址看待,按功能键1后,按下的数字只显示在后二位上,当数据看待,功能键2和功能键3当地址加一和减一键使用。 实验九128*64LCD液晶显示 一、实验目的 (1)掌握单片机与液晶显示器之间接口设计与编程。 (2)利用点阵式液晶显示器显示汉字或图形。 二、实验内容编制程序,利用标准字库,在液晶显示器上显示汉字。 三、编程指南 (1)显示内存与液晶显示屏关系Correspondence withdata bitsand arrowdirectionDB0DB1DB2DB3DB4DB5DB6DB7 (2),利用P1口作为液晶显示器接口的数据线,P3口作为其控制线,利用取模软件建立标准字库后,通过查表程序依次将字库中的字形代码送显示内存显示汉字或图形。 (3),编程流程开显示设置页地址设置Y地写数据表1写数据表2。 (4),显示控制指令表 四、实验接线图 五、实验步骤用扁平线连JX10座(P1口)到JX12座(DB0DB7),连JX11座(P3口)到JX14座,运行程序LCDQDASM。 实验十单片机RS232/RS485串行发送实验(双机通讯) 一、实验目的 (1)了解单片机8051串行口的工作原理以及收/发送方式 (2)了解RS232以及RS485接口的工作原理及收/发送方式。 二、实验内容用两台5203K进行双机通讯,一台作为发送,另一台作为接收。 三、实验原理在实际使用中,RS232主要完成电平匹配(通讯距离最远为15米),RS485为有线远程通讯(最远距离为1200米),我们在这里使用的RS485芯片75176或MAX485功能一样,都是半双功,所以在发送和接收时,需要一个控制脚,实验时插孔为R/TEN,如用P1.0=1时,RS485可以发送,在进行RS232/RS485接口实验时,实验程序是相同的,只是接线略有不同。 四、实验接线图 五、实验步骤 (1)准备两台5203K实验机,确定1号机为发送,2号机为接收; (2)当作RS232接口实验时,1号机和2号机的RXD(89C58)、TXD(89C58)交叉相连,且两机共地; (3)当作RS485接口实验时,1号机和2号机的A(89C58)、B(89C58)作对应连接,同时1,2号机的R/TEN,接P1.0. (4)先运行2号机,使2号机处于待命状态P。 ,后运行1号机使1号机处于发送状态P。 ,在1号机键盘上按动数字键,在2号机的数码管上应显示对应的数字键值。 六、程序ORG0000H LJMPSTART TENEQU P1.0START:MOVA,#43H MOVDPTR,#0FF20H MOVXDPTR,A MOVTMOD,#21H MOVTL1,#0E8H;F=11.0592,BPS=2400MOV TH1,#0E8H SETBTR1MOV87H,#80H MOVSCON,#0D8H L0:MOV R0,#79H MOVA,#10H LT1:MOVR0,A INC R0CJNE R0,#7EH,LT1MOVA,#11H MOVR0,A MOV R0,#59H MOVA,#7EH MOVXR0,A L1:LCALL X2CJNEA,#1FH,L3setb TENLCALL SENDclr TENSJMPL0L3:setb TENLCALL SENDclr TENLCALL X3DB79H,7EH SJMPL1;-X3:MOV R4,A MOV R0,#59H MOVXA,R0MOV R1,A MOVA,R4MOVR1,A movb,a CLR A POP DPH POP DPL MOVCA,A+DPTRINCDPTR CJNEA,01H,X30CLRA MOVCA,A+DPTR X31:MOVXR0,A INCDPTR PUSH DPL PUSH DPH RETX30:DEC R1MOVA,R1SJMP X31;-X2:MOV R6,#50H X0:ACALL XLEJNB ACC.5,XX0DJNZR6,X0MOV R6,#20H MOV R0,#59H MOVXA,R0MOV R0,A MOVA,R0MOV R7,A MOVA,#10H MOVR0,A X1:ACALL XLEJNB ACC.5,XX1DJNZR6,X1MOVA,R7MOVR0,A AJMPX2XX1:MOV R6,A MOVA,R7MOVR0,A MOVA,R6XX0:RET;-XLE:ACALL DISLCALL KEYMOV R4,A MOV R1,#48H MOVXA,R1MOV R2,A INCR1MOVXA,R1MOV R3,A MOVA,R4XRL A,R3MOV R3,04H MOV R4,02H JZ X10MOV R2,#88H MOV R4,#88H X10:DEC R4MOVA,R4XRL A,#82H JZX11MOVA,R4XRL A,#0EH JZX11MOVA,R4ORL A,R4JZX12MOV R4,#20H DEC R2SJMP X13X12:MOVR4,#0FH X11:MOVR2,04H MOVR4,03H X13:MOVR1,#48H MOVA,R2MOVXR1,A INCR1MOVA,R3MOVXR1,A MOVA,R4RET LS3:DB07H,04H,08H,05H,09H,06H,0AH DB0BH,01H,00H,02H,0FH,03H,0EH DB0CH,0DH;-DIS:PUSH DPHPUSH DPLSETB RS1MOVR0,#7EH MOVR2,#20H MOVR3,#00H MOVDPTR,#LS0LS2:MOVA,R0MOVCA,A+DPTR MOVR1,#22H MOVXR1,A MOVA,R2DECR1CPL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (2025年标准)工程合资入股协议书
- (2025年标准)更换房门协议书
- (2025年标准)干粉回收协议书
- (2025年标准)改厕施工协议书
- (2025年标准)民房粉刷协议书
- 市政供水管网输水能力与压力平衡优化
- (2025年标准)家庭宾馆承包协议书
- (2025年标准)关于息诉协议书
- 绿色施工技术在建筑工程中的应用与评估
- 高校档案馆的社会合作机制与发展路径
- 旧油罐防腐施工方案
- 急诊与灾难医学课件
- 统编语文五年级上册第一单元作业设计
- 屋顶分布式光伏项目
- 园林绿化工(技师)技能鉴定理论考试题库(含答案)
- 介入科护理常规最终版
- DL∕T 1608-2016 电能质量数据交换格式规范
- 马克思主义与社会科学方法论课后思考题答案全
- 《军事理论》教案第七章 射击与战术训练
- 全国各省(直辖市、自治区)市(自治州、地区)县(县级市)区名称一览表
- 电子产品原理分析与故障检修(第2版)高职全套教学课件
评论
0/150
提交评论