北航单片机原理及其应用实验报告班级:110323姓名:赵敏杰学号:11031064同组者:郑硕学号:11031105实验一单片机开发环境以及I/O使用实验一.实验目的1.熟悉MCS-51系列单片机开发软件的使用2.掌握单片机I/O口的使用3.学习延时子程序的编写和使用二.实验内容1.验证性实验(1)实验内容:I/O口做输出口,I/O口接一个LED发光二极管,使其闪烁。有关说明:根据LED的单向导通性,可以用单片机的P1.0(也可以是其他I/O口)作为LED的控制端。当P1.0输出为低电平时,LED灭,反之,LED亮。本实验系统晶振为11.0592MHz,则一个机器周期为12/11.0592us=1.085us,为方便编写延时函数,认为一个机器周期为1us。硬件连接:用导线将试验箱中的P1.0与L1相连。程序:C语言程序#include
//89S52寄存器定义头文件/*---延时子程序(有参函数),t=n*10ms---*/voiddelay(unsignedcharn){unsignedchari,j,k;for(i=0;i//89S52寄存器定义头文件voidmain(){while(1){P0=0xff;//对端口写"1",作为高阻抗输入端用if(P0_0)//判断P0.0是否为高电平{P1_0=0;}else//如果P0.0不是高电平,则执行后面的语句{P1_0=1;}}}汇编语言参考程序ORG00HLJMPMAIN3ORG30HMAIN:JBP0.0,DEL;识别按键是否闭合SETBP1.0LJMPMAINDEL:CLRP1.0LJMPMAINEND实验现象:可以看到LED1的状态和开关1的状态一致。2.设计性实验实验内容:模拟舞台灯光控制实验具体要求:P0.0和P0.1口连接两路拨动开关,P1口连接8路LED。不同的开光状态控制LED进行流水灯、闪烁等,从而达到模拟舞台炫耀灯光控制的目的。当P0.1和P0.0的状态为00时,8路LED从右至左流水点亮,具体循环顺序为:L1L2L3L4L5L6L7L8L1,如此重复循环;当P0.1和P0.0的状态为01时,8路LED从左至右流水点亮,具体循环顺序为:L8L7L6L5L4L3L2L1L8,如此重复循环;当P0.1和P0.0的状态为10时,8路LED交替闪烁,具体循环顺序为:L1、L3、L5、L7L2、L4、L6、L8L1、L3、L5、L7,如此重复循环下去;当P0.0和P0.1的状态为11时,8路LED一起闪烁,具体循环顺序为:全灭全亮全灭,如此重复下去。硬件连接:用导线将实验箱中的P0.0与开关K1相连,P0.1与开关K2相连,P1.0~P1.7分别与LED发光二极管L1~L8相连。程序:C语言程序#include//89S52寄存器定义头文件voiddelay(unsignedcharn){unsignedchari,j,k;for(i=0;i>1;if(P0_1!=0|P0_0!=1)break;}}if(P0_1==1&P0_0==0){P1=0x01;for(i=1;i<=4;i++){delay(100);P1=P1<<2;if(P0_1!=1|P0_0!=0)break;}P1=0x02;for(i=1;i<=4;i++){delay(100);P1=P1<<2;if(P0_1!=1|P0_0!=0)break;}}if(P0_1==1&P0_0==1){P1=0xff;de...