欢迎来到天天文库
浏览记录
ID:38698209
大小:46.50 KB
页数:3页
时间:2019-06-17
《实验一LED指示灯循环控制》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一LED指示灯循环控制一、实验目的1.进一步熟悉编程和程序调试2.学习P1口的使用方法3.学习延时子程序的编写和使用二、实验说明P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。三、实验步骤及参考例子实验步骤说明:本实验需要用到单片机最小应用系统和十六位逻辑电平显示模块。用P1口做输出口,接十六位逻辑电平显示,程序功能使发光二极管点亮。1.使用单片机最小应用系统。根据实验要求,用proteus仿真软件绘制电路原理图,用数据线连接单片机P1口与
2、LED灯。2.打开KeiluVision4仿真软件,首先建立本实验的项目文件,输入源程序,进行编译、调试,直到编译无误,生成hex文件。可通过单步调试,来查看I/O的状态3.在proteus环境中,把.hex文件下载到单片机中,运行观察发光二极管显示情况是否与设计程序中一致。参考例子:1)点亮板子上的第一个灯L02)点亮板子上的L0、L2、L4、L6灯,与L1、L3、L5、L7灯交替闪烁3)流水灯:从L0—L7依次点亮四、参考程序1)#includevoidmain(){P1=0xfe;}2)#include#defineuin
3、tunsignedint#defineucharunsignedcharvoiddelay();voidmain(){while(1){P1=0xaa;delay();P1=0x55;delay();}}voiddelay(){uintx,y;for(x=100;x>0;x--)for(y=600;y>0;y--);}3)#include#include#defineuintunsignedint#defineucharunsignedcharuchartemp;voiddelay(uint);voidmain(){temp
4、=0xfe;while(1){for(num=0;num<8;num++){P1=temp;delay(100);temp=_crol_(temp,1);P1=0xff;delay(100);}}}voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=120;y>0;y--);}五、电路图六、实验内容请在keil环境下编写一下程序,并在proteus仿真环境中实现动画效果:1)点亮最后一个LED2)点亮1、2、5、6这四个LED3)让第三个LED闪烁4)设计出流水灯程序,从L7—L05)设计出流水灯双向流动程序,从L0-L7
5、-L0反复循环。
此文档下载收益归作者所有