单片机课程设计报告彩灯控制器设计文档格式.doc

上传人:b****1 文档编号:13079177 上传时间:2022-10-04 格式:DOC 页数:23 大小:1.08MB
下载 相关 举报
单片机课程设计报告彩灯控制器设计文档格式.doc_第1页
第1页 / 共23页
单片机课程设计报告彩灯控制器设计文档格式.doc_第2页
第2页 / 共23页
单片机课程设计报告彩灯控制器设计文档格式.doc_第3页
第3页 / 共23页
单片机课程设计报告彩灯控制器设计文档格式.doc_第4页
第4页 / 共23页
单片机课程设计报告彩灯控制器设计文档格式.doc_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单片机课程设计报告彩灯控制器设计文档格式.doc

《单片机课程设计报告彩灯控制器设计文档格式.doc》由会员分享,可在线阅读,更多相关《单片机课程设计报告彩灯控制器设计文档格式.doc(23页珍藏版)》请在冰豆网上搜索。

单片机课程设计报告彩灯控制器设计文档格式.doc

2.3Proteus仿真

用Proteus对系统进行仿真并进行软硬件调试。

2.4编写设计说明书

内容包括任务书、设计方案分析、硬件部分设计、软件部分设计、调试结果整理分析、设计调试的心得体会等,字数不少于4000字;

硬件部分设计要绘制整个系统电路原理图,对各部分电路设计原理做出说明;

软件设计部分要绘制整个系统及各部分的软件流程图,列出程序清单,逐条加以注释,并在各功能块前加程序功能注释。

3.工作计划

序号

设计内容

所用时间

1

布置任务及调研

4天

3

制作与调试

8天

4

撰写设计报告书

2天

合计

14天

4.主要参考资料

单片机课程设计指导书 皮大能 北京理工大学出版社 2010.7

8051单片机实践与应用 吴金戎 清华大学出版社 2003.8

单片机技术基础教程与实践夏路易 电子工业出版社  2008.1

MCS-51单片机原理接口及应用 王质朴北京理工大学出版社2009.11

基于Proteus的单片机系统设计与仿真实例蒋辉平机械工业出版社2009.7

指导老师签字:

日期:

..

目录

1系统硬件设计 4

1.1电路设计 4

1.2主要元器件介绍 5

1.2.1AT89c51单片机芯片介绍 5

1.2.2主要特性 5

2系统软件设计 7

2.1综述 7

2.2主程序及流程图 7

2.2.1主程序 7

2.3子程序的编程思路 8

2.3.1延迟子程序流程图 9

3系统调试与仿真分析 11

3.1软件调试 11

3.1.1单片机C语言 11

3.1.2KeiluVision2 11

3.1.3Proteus 12

3.2软件仿真结果及分析 13

3.2.1闪光效果一:

单灯向里移动 13

3.2.2闪光效果二:

流水左移 14

3.2.3闪光效果三:

3灯走马右移 15

3.2.4闪光效果三:

红色流水内外移动 16

4致谢 17

5参考文献 18

附录程序代码 18

1系统硬件设计

整个系统以AT-89C51单片机作为主控核心,与发光二极管LED等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制。

本系统具有体积小、硬件少、电路结构简单及容易操作等优点。

1.1电路设计

彩虹灯控制器电路见【图1】。

其主要设计器件有AT89C51,复位电路,时钟电路,5个按钮(其中一个为检测按钮)。

通过软件设计,使单片机P0和P1作为LED驱动信号输出口,4个外部按钮作为按钮输入口。

图1彩虹灯控制器电路图

1.2主要元器件介绍

1.2.1AT89c51单片机芯片介绍

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.2.2主要特性

·

与MCS-51兼容

4K字节可编程闪烁存储器

寿命:

1000写/擦循环

数据保留时间:

10年

全静态工作:

0Hz-24Hz

三级程序存储器锁定

128*8位内部RAM

32可编程I/O线

两个16位定时器/计数器

5个中断源

可编程串行通道

低功耗的闲置和掉电模式

片内振荡器和时钟电路;

1.2.3引脚定义及功能见【图2】。

图2AT89C51引脚图

(1)输入输出引脚(P0、P1和P2端口引脚)

P0~P3是89C51与外界联系的4个8位双向并行I/O口。

本设计中P0和P1口作为LED驱动信号输出口,P2口与4个按钮连接作为按钮输入口,控制4中彩虹灯效果。

(2)AT89C51单片机的基本结构见【图3】

图3AT89C51基本结构

2系统软件设计

2.1综述

本次的任务是设计一个基于单片机的LED彩灯控制器,需要循环运行四种以上预设的彩灯闪烁方案,这里的各种的方案还有显示方式都是由单片机内部的程序控制。

在这里我将16个发光二极管分别接在P0和P1口,通过程序控制这两个端口的电平高低,将16个发光二极管的负极接P0和P1口,正极接外部高电平,即P0和P1口的相应端口为低电平时LED就能被点亮。

再通过程序循环的让各个端口以不同的方式点亮来达到各种花样的效果,并且当中要有一定的延时,延时时间小于人眼视觉暂留时间,否则人眼看上去每个灯都是亮的也就没有实际效果。

设计的LED彩灯系统分为两部分,即AT89C51主控模块和发光二极管LED受控模块。

整个系统工作由软件程序控制运行,同时根据不同的需要,用户可以在LED彩灯工作时通过主控模块上的按钮来实现4种彩灯灯光效果(不含全部点亮,全部熄灭)。

模块功能:

该部分主要涉及功能的实现方式,即程序编写。

程序要实现的功能包括读按键,通过对读入按键的值控制LED点亮方式。

键盘有5个按键,其中K1、K2、K3、K4控制LED点亮模式。

2.2主程序及流程图

2.2.1主程序

AT89C51通过编写程序应完成以下功能:

通过P0口和P1控制发光二极管LED的亮与灭,从而实现多种闪烁方案;

用16盏以上的LED小灯,实现至少4种彩灯灯光效果(不含全部点亮,全部熄灭)。

用输入按钮在几种灯光效果间转换。

按照上述要求即可写出主程序代码并绘制出主程序流程图。

2.2.2主程序流程图

开始

扫描按键

按钮一

按钮二

是否

按钮三

效果一

是 否

效果二

按钮四

效果三

效果四

2.3子程序的编程思路

虽然大致的流程图已经绘制完毕,但编程过程中会遇到更加具体的问题,需要编制一些子程序来解决,以下是一些主要子程序的流程图绘制思路。

2.3.1延迟子程序流程图

数码管的显示必须有足够长的时间长到肉眼能够察觉到,因此在点亮数码管时要给开始

予其一个适当的延迟。

触发时间i>

调用

计时

j<

125

输出信号0

一个机器周期包括12个时钟周期。

单片机AT89C51工作于12M晶振,它的时钟周期是1/12(微秒)。

它的一个机器周期是12*(1/12)也就是1微秒。

一共执行1000次,正好1000微秒,也就是1毫秒。

2.3.2按键扫描子程序

按键扫描子程序用来检测并识别外部输入按钮的输入信号。

voidKeyScan()

{

if(P2==0xf7)

{

ys1ms(100);

if(P2==0xf7)

{

flag=0xf7;

}

}

if(P2==0xfb)

if(P2==0xfb)

flag=0xfb;

if(P2==0xfd)

if(P2==0xfd)

flag=0xfd;

if(P2==0xfe)

if(P2==0xfe)

flag=0xfe;

}

其中的状态标志分别为:

0xfe为按键1标志,0xfd为按键2标志,0xfb为按键3标志,0xf7为按键4标。

3系统调试与仿真分析

3.1软件调试

本次所有软体程序均采用C51语言编写,程序写完后要对其编译,在Proteus软件里实现硬件电路仿真。

下面分别简单介绍单片机C语言和这两款软件。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1