《单片机原理实验报告一》由会员分享,可在线阅读,更多相关《单片机原理实验报告一(12页珍藏版)》请在金锄头文库上搜索。
1、 成绩:单片机原理实验报告一一、 实验目的实验五-8255 A.B.C口输出方波:掌握可编程I/O接口芯片8255的接口原理使用,熟悉对8255初始化编程和输入/输出软件的设计方法。实验六-8255 PA口控制PB口:掌握单片机系统中扩展外围芯片的方法,了解8255芯片的结构及编程方法。实验十-了解D/A转换与单片机的接口方法;了解D/A转换芯片0832的性能及编程方法;了解单片机系统中扩展D/A转换芯片的基本方法。二、 硬件原理(接线图)实验五:Figure 1 实验五接线图实际:用8255 PA、PB、PC口分别用导线连至LlL8,用示波器跟踪A、B、C口高低电平变化实验六:Figure
2、2 实验六接线图实际:PA0PA7接KlK8,PB0PB7接L1L8,拨K1K8,观察L1L8对应发亮实验十:Figure 3 实验十接线图实际:只需将CS选通口接到FF80H(数码管地址),实验书的JX0接JX2箱子内部已连好三、 软件代码1 实验五:表格 1 实验五程序ORG0000HLJMPSE09ORG0580HSE09:MOVDPTR,#0FF2BHMOVA,#80HMOVXDPTR,A;8255初始化MOVA,#55H;一位隔一位高电平LO15:MOVDPTR,#0FF28HMOVXDPTR,AINCDPTRMOVXDPTR,AINCDPTRMOVXDPTR,A;A、B、C口送入M
3、OVR2,#10H;延时LCALLDELYCPLA;取反SJMPLO15;循环ORG05A0HDELY:PUSH02HDEL2:PUSH02HDEL3:PUSH02H;延时DEL4:DJNZR2,DEL4POP02HDJNZR2,DEL3POP02HDJNZR2,DEL2POP02HDJNZR2,DELYRETEND2 实验六: 表格 2 实验六程序ORG0000hLJMPSE17ORG0770HSE17:MOVDPTR,#0FF2BHOVA,#90HMOVXDPTR,A;8255初始化LO32:MOVDPTR,#0FF28HMOVXA,DPTR;PA口状态读出INCDPTRMOVXDPTR,
4、A;送PB口SJMPLO32END3 实验十:表格 3 实验十程序ORG0000HLJMPSE13ORG05E0HSE13:MOVSP,#53HMOVp2,#0ffhMOVA,#81HMOVDPTR,#0FF23HMOVXDPTR,AMOV7EH,#00HMOV7DH,#08HMOV7CH,#03HMOV7BH,#02H;显示缓冲区初值LO20:MOVR6,#00HLO21:MOVDPTR,#0FF80HMOVA,R6MOVXDPTR,A;送0832转换MOVR0,#79HLCALLPTDSLCALLSSEE;显示MOVR2,#08HLCALLDELYA;延时INCR6;加1CJNER6,#0
5、FFH,LO21;不到FF继续加LO22:MOVDPTR,#0FF80HDECR6MOVA,R6;减1送0832转换MOVXDPTR,AMOVR0,#79HLCALLPTDSLCALLSSEE;显示MOVR2,#08HLCALLDELYA;延时CJNER6,#00H,LO22;不为0继续减SJMPLO20;循环PTDS:MOVR1,A;拆送显示缓冲区LCALLPTDS1MOVA,R1SWAPAPTDS1:ANLA,#0FHMOVR0,AINCR0RETORG0D50HSSEE:SETBRS1;换工作区MOVR5,#05HSSE2:MOV30H,#20HMOV31H,#7EHMOVR7,#06H
6、SSE1:MOVR1,#20HMOVA,30HCPLAMOVXR1,A;字位送入MOVR0,31HMOVA,R0MOVDPTR,#DDFFMOVCA,A+DPTR;取字形代码MOVR1,#21HMOVXR1,A;字形送入MOVA,30HRRA;右移MOV30H,ADEC31HMOVA,#0FFHMOVXR1,A;关显示DJNZR7,SSE1;六位显示完了吗?DJNZR5,SSE2;五次显示完了吗?CLRRS1RETDDFF:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H
7、,0DEHDELYA:PUSH02H;延时DELYB:PUSH02HDELYC:PUSH02HDELYD:DJNZR2,DELYDLCALLSSEE;调显示子程序POP02HDJNZR2,DELYCPOP02HDJNZR2,DELYBPOP02HDJNZR2,DELYARETEND 四、 实验结果1 实验五接线图:Figure 4 实验五接线图2 实验五的A、B、C口高低电平变化:(方波)Figure 5 实验五A、B、C口高低电平变化3 实验五修改延时常数后灯的改变为L1、L3、L5、L7和L2、L4、L6、L8分别亮灭。(改变R2的赋值)Figure 6 实验五修改延时常数LED1、3、5
8、、7亮Figure 7 实验五修改延时常数LED2、4、6、8亮4 实验六接线图与实验五类似。每拨动一个开关K,对应的LED灯亮。5 实验十接线图:Figure 8 实验十接线图6 测量0-5V:Figure 9 实验十0832输出0.13VFigure 10 实验十0832输出2.29VFigure 11 实验十0832输出4.61VFigure 12 实验十0832输出4.99V7 实验十输出三角波:Figure 13 实验十0832输出方波8 实验十修改程序,在判断R6加1循环再加一次1使得波形上升下降不对称,输出锯齿波:Figure 14 实验十0832输出锯齿波五、 思考与收获实验之
9、初,赵老师向我们介绍整个单片机实验内容,我们对单片机实验软件和硬件部分都有了初步的认识和了解。通过本次8255控制波形和I/O口接口实验,我懂得了单片机不仅仅局限于课上的理论学习,特别是对硬件部分的连线及程序单步调试工作过程有了更加深刻的认识,将课上学的理论知识进行了应用,也提高了我的动手操作能力。亲自动手是课堂学习的延续,在这次实验中,初次接触了单片机的硬件模块,并借用LED灯的点亮熟悉了软件模块keil C51结合硬件时的设置使用和试验箱上的器材。与此同时,通过LED亮灭时间的快慢理解了程序中的延时常数,并能够做出相应修改。在实验十D/A转换硬件连线中,也发现了一个问题,试验箱并不能找到JX2与8255的JX0口相连,在通过询问老师后,了解到试验箱内部已经接好。在测试示波器输出波形时,示波器如果没有将输入耦合口调为直流,也将显示不出三角波或者锯齿波这些都是通过动手调试才能学到的东西。其次,细节决定成败,在整个实验过程中,细节非常重要,软件编程中,稍有一点的小错误都会使整个程序不能运行。最后要感谢辛勤工作授课的仲老师、提供了全面实验指导的赵老师。我会更加努力学习电气的相关专业课,继续充实自己。