文档详情

单片机节日彩灯控制器.doc

发布:2018-01-31约1.48千字共6页下载文档
文本预览下载声明
单片机原理及接口技术 节日彩灯控制器设计 1、任务 目的: 以单片机为核心,设计一个节目彩灯指示器。 要求: 在单片机的P0口接有8个发光二极管作为指示灯,P1.0~P1.3接有4个按键开关,当不同脚上的按键按下时实现如下的功能: (1)按下P1.0脚的按键——8只灯全亮然后全灭,再全亮然后全灭,交替闪烁。 (2)按下P1.1脚的按键——按此键则停止点亮8只灯,所有灯全灭。 (3)按下P1.2脚的按键——LED指示灯由上向下流动点亮。 (4)按下P1.3脚的按键——LED指示灯由下向上流动点亮。 2、硬件电路设计 本文仅依据任务目的及要求进行设计时钟电路、按键模块、LED输出模块。 原理图如下: 3、程序设计 按照任务要求设计程序,以C51标准进行编写。 程序如下: #includereg51.h #includeintrins.h #define uchar unsigned char uchar key,led=0xfe; void delay(uchar a) { uchar i,j; for(i=0;ia;i++) for(j=0;j120;j++); } main() { while(1) { key=P10x0f; switch(key) { case 0x0e://P1.0 P0=0xff; delay(200); P0=0x00; delay(200); break; case 0x0d://P1.1 P0=0xff; break; case 0x0b://P1.2 P0=led; led=_crol_(led,1);//左移 delay(100); break; case 0x07://P1.3 P0=led; led=_cror_(led,1);//右移 delay(100); break; default:break; } } } 编译程序并输出HEX文件。 4、电路仿真 4.1仿真结果 分别对任务要求中的(1)、(2)、(3)、(4)要求进行仿真,仿真效果如下: (1)按下P1.0脚的按键——8只灯全亮然后全灭,再全亮然后全灭,交替闪烁。 (2)按下P1.1脚的按键——按此键则停止点亮8只灯,所有灯全灭。 (3)按下P1.2脚的按键——LED指示灯由上向下流动点亮。 (4)按下P1.3脚的按键——LED指示灯由下向上流动点亮。 4.2仿真结果分析 通过对上述模块的仿真,可以看出基于单片机控制的节日彩灯在Protues软件上可以很好的实现各种要求的仿真。 当仿真开始运行时,各个模块处于初始状态。再触发按键后,主程序跳转到相应的程序段执行并控制节日彩灯进行工作。从仿真结果可以看出,本设计可以得到预期的仿真结果。 用的时候把截图名字裁剪了就可以啦! 5 2016-xx-xx xx大学 xx xx xx xx xx 姓名 学号 指导老师 学院 专业 : : : : :
显示全部
相似文档