分享个流水灯的电路图 和c语言程序的实验报告如下:
流水灯(IO口控制) 一、实验目的: 掌握IO口控制的方法,实现流水灯。 二、实验设备及器件: 计算机 Keil、Proteus软件,各一套。 三、实验内容: 绘制原理图,编程控制使得单片机控制多个LED,形成流水灯效果。 四、实验要求: 1. 根据给出电路图,在Proteus中完成设计。 2. 根据提供的参考程序,在Keil中新建工程、编译程序。 3. 将生成的Hex文件加载到单片机,运行测试成功。 五、实验步骤: Proteus画图。
Keil编程: - #include "reg51.h"
- int tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
- int i,j;//i用于delay的变量循环次数,j用于显示数组的序号
- void delay(){for(i=0;i<30000;i++);}
- main()
- {
- while(1)
- {
- for(j=7;j>-1;j--){P1=tab[j];delay();}
- }
- }
复制代码
编译程序产生Hex文件,加载到电路图的单片机中,运行调试。
程序也可以修改一下,效果相同
前面inttab[]={1,2,4,8,16,32,64,128};
后面P1=~tab[j];//~为取反
考虑左右流动、到两端不停留、速度控制。
实验报告的全部内容51hei下载地址:
实验02流水灯.doc
(35 KB, 下载次数: 22)
|