资源描述:
《单片机原理及应用实验指导书》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《单片机原理及应用》实验指导书信息学院2010年3月36目录实验一熟悉单片机软件开发环境1实验二MCS-51单片机I/O实验4实验三七段数码管动态显示实验7实验四键盘扫描及显示实验12实验五MCS-51单片机中断实验15实验六定时器计数器实验19实验七单片机AD转换及串行异步通信23实验八单片机软件实现IIC存储接口29实验九单片机综合应用设计实验3336实验一熟悉单片机软件开发环境一、实验目的1、了解单片机软件开发环境的主要软件PROTEUS和KEIL;2、掌握软件的安装、使用、程序的调试方法,包括跟踪、单步运行和断点设置等;3、熟悉51单片机的指令系统,掌握汇编语言程序的
2、设计方法。二、实验仪器P4电脑一台,软件PROTEUS6.7、KEILUV2以上版本。三、实验内容1、PROTEUS、KEIL软件的安装。2、PROTEUS和KEIL软件联合调试的设置。3、简单程序调试(1)传送指令设置内部RAM的值,(30H)=40H,(40H)=10H,单步执行下列程序,检查结果。MOV30H,#40HMOV40H,#10HMOVR0,#30HMOVA,@R0MOVR1,AMOVB,@R1SJMP$执行后:(R0)=,(R1)=,(A)=,(B)=,(30H)=,(40H)=。(2)运算指令单步执行MOVA,#0BFHMOV20H,#85HSETBCAD
3、DA,20HMOVA,#0BFHMOV20H,#85HSETBCADDCA,20HMOVA,#0BFHMOV20H,#85HSETBCSUBBA,20HMOVA,#0BFHMOVB,#85HMULABSJMP$结果标志(A)=CY=AC=OV=P=(A)=CY=AC=OV=P=(A)=CY=AC=OV=P=(A)=(B)=CY=AC=OV=P=364、多字节十进制数加法被加数加数结果低位20H6730H6520H21H4531H7221H22H2332H9822H23H0133H8923H高位图1-24字节十进制数相加两个4字节十进制数1234567和89987265相加,将
4、其8421-BCD码按低位到高位存放在地址为20-23H、30-33H的RAM中,运算结果存放在20-23H的地址中,如上图示。运算程序如下,ADD_BCD为多字节十进制数加法子程序的首地址。分别按“跟踪”、“单步”和“全速”方式调试程序。检查运算结果,区别“跟踪”、“单步”调试方式的不同。在“ADD_BCD子程序”的指令“DAA”处设置断点,再用“全速”方式运行,到达断点后,观察“A”的值,然后用“单步”运行,观察指令“DAA”的功能。同时理解“断点”方式调试程序的特点。;;;;;;;;;;;;;;;;;;;主程序;;;;;;;;;;;;;;;;;;;;;MOVR0,#20
5、H;置被加数首地址MOVR1,#30H;置加数首地址MOVR2,#04H;置被加数和加数的长度(字节数)ACALLADD_BCD;调用多字节十进制数加法子程序ADD_BCDSTOP:SJMPSTOP;停止;;;;;;;;;;多字节十进制数加法子程序;;;;;;;;;;;入口:R0、R1为被加数和加数的首地址,按低位到高位存放;出口:R0为运算结果的首地址,也按低位到高位存放ADD_BCD:CLRC;进位清零LOOP:MOVA,@R0;一字节的被加数→AADDCA,@R1;一字节加DAA;十进制数调整36MOV@R0,A;存一字节的运算结果INCR0;被加数指向下一字节INCR
6、1;加数指向下一字节DJNZR2,LOOP;循环控制RET;子程序返回END四、预习要求1、读懂各程序;2、预先给出运算结果,以便和实验结果比较;3、回忆“跟踪”、“单步”和“断点”调试方式的特点。五、思考题1、为什么程序结束用“STOP:SJMPSTOP”指令?用没有其他的停止方式?51单片机启动后,是否一直不断地在执行指令?2、比较“跟踪”、“单步”和“断点”调试方式的特点。36实验二MCS-51单片机I/O实验一、实验目的1、掌握单片机基本I/O口的使用特点,了解扩展I/O口的方法;2、了解LED动态显示电路结构,掌握LED动态显示方法;3、掌握程序延时的计算及应用;二
7、、实验仪器P4电脑一台,软件PROTEUS6.7、KEILUV2以上版本。三、实验内容1、P1口输出在PROTEUS中绘制仿真原理图,P1口做输出口,P1口连接8只发光二极管,如图2-1所示,编写程序,使发光二极管指示灯循环点亮,并进行仿真。图2-1P1口输出CPUAT89C51的振荡频率为12MHz,36发光二极管循环点亮需要一个延时子程序DELAY1S。延时时间为((14+2)×250+2)×250=1.0005(秒)。参考程序ORG0000HLJMPSTARTORG0100HSTART:MOVA,