单片机课程设计报告:彩灯控制器设计.docx
《单片机课程设计报告:彩灯控制器设计.docx》由会员分享,可在线阅读,更多相关《单片机课程设计报告:彩灯控制器设计.docx(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-黄河科技学院课程设计任务书工学院 机械 系机械设计制造及其自动化 专业 09级 1 班*朱施泽指导教师郭晓君题目: 彩灯掌握器的设计课程:单片机课程设计课程设计时间 2023 年 12 月 21 日至 2023 年 1 月 3 日共 2 周课程设计工作容与根本要求(设计要求、设计任务、工作方案、所需相关资料)纸不够可加页1. 设计要求利用 AT89C51 单片机作为微掌握器,用 16 盏以上的 LED 小灯,实现至少 4 种彩灯灯光效果不含全部点亮,全部熄灭;可以用输入按钮在几种灯光效果间切换;可以通过按钮暂停彩灯效果,使小灯全亮,再次按下一样按钮后连续之前的效果。2. 设计任务与要求2.1
2、 系统硬件电路设计依据该系统设计的功能要求选择所用元器件,设计硬件电路。要求用Proteus 绘制整个系统电路原理图。2.2 软件设计依据该系统要求的功能进展软件设计,绘制整个系统的软件流程图;依据流程图编写程序并汇编调试通过;列出软件清单,软件清单要求逐条加以注释。2.3 Proteus 仿真用 Proteus 对系统进展仿真并进展软硬件调试。2.4 编写设计说明书容包括任务书、设计方案分析、硬件局部设计、软件局部设计、调试结果整理分析、设计调试的心得体会等,字数不少于 4000 字;硬件局部设计要绘制整个系统电路原理图,对各局部电路设计原理做出说明;软件设计局部要绘制整个系统及各局部的软件
3、流程图,列出程序清单,逐条加以注释,并在各功能块前加程序功能注释。3. 工作方案序号设计容所用时间1布置任务及调研天3制作与调试天4撰写设计报告书2天合计14天4. 主要参考资料单片机课程设计指导书 皮大能理工大学 2023.78051 单片机实践与应用吴金戎单片机技术根底教程与实践 夏路易清华大学电子工业2023.82023.1MCS-51 单片机原理接口及应用王质朴 理工大学 2023.11基于 Proteus 的单片机系统设计与仿真实例 辉平 机械工业 2023.7指导教师签字: 日期:目录1 系统硬件设计 51.1 电路设计 51.2 主要元器件介绍 51.2.1 AT89c51 单片
4、机芯片介绍 51.2.2 主要特性 5 2 系统软件设计 72.1 综述 72.2 主程序及流程图 72.2.1 主程序 72.3 子程序的编程思路 8 延迟子程序流程图 93 系统调试与仿真分析 113.1 软件调试 113.1.1 单片机 C 语言 113.1.2 Keil uVision2123.1.3 Proteus133.2 软件仿真结果及分析 14闪光效果一:单灯向里移动 14闪光效果二:流水左移 15闪光效果三:3 灯走马右移 15闪光效果三:红色流水外移动 154 致 155 参考文献 16 附录程序代码 161 系统硬件设计整个系统以 AT-89C51 单片机作为主控核心,与
5、发光二极管LED 等较少的关心硬件电路相结合,利用软件实现对 LED 彩灯进展掌握。本系统具有体积小、硬件少、电路构造简洁及简洁操作等优点。1.1 电路设计彩虹灯掌握器电路见【图 1】。其主要设计器件有 AT89C51,复位电路,时钟电路, 5 个按钮其中一个为检测按钮。通过软件设计,使单片机 P0 和 P1 作为 LED 驱动信号输出口,4 个外部按钮作为按钮输入口。1.2 主要元器件介绍图 1 彩虹灯掌握器电路图1.2.1 AT89c51 单片机芯片介绍AT89C51 是一种带 4K 字节闪耀可编程可擦除只读存储器 FPEROMFalsh Programmable and Erasable
6、 Read Only Memory 的低电压,高性能 CMOS8 位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件承受ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位CPU 和闪耀存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微掌握器。AT89C 单片机为很多嵌入式掌握系统供给了一种敏捷性高且价廉的方案。主要特性与 MCS-51 兼容4K 字节可编程闪耀存储器寿命:1000 写/擦循环数据保存时间:10 年全静态工作:0Hz-24Hz三级程序存储器锁定128*8 位部 RAM32
7、 可编程 I/O 线两个 16 位定时器/计数器5 个中断源可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路;引脚定义及功能见【图 2】。图 2 AT89C51 引脚图1 输入输出引脚P0、P1 和 P2 端口引脚P0P3 是 89C51 与外界联系的 4 个 8 位双向并行 I/O 口。本设计中 P0 和 P1 口作为 LED 驱动信号输出口,P2 口与 4 个按钮连接作为按钮输入口,掌握 4 中彩虹灯效果。2 AT89C51 单片机的根本构造见【图 3】图 3 AT89C51 根本构造2 系统软件设计2.1 综述本次的任务是设计一个基于单片机的 LED 彩灯掌握器,需要循环运行四种以
8、上预设的彩灯闪耀方案,这里的各种的方案还有显示方式都是由单片机部的程序掌握。在这里我将 16 个发光二极管分别接在 P0 和 P1 口,通过程序掌握这两个端口的电平上下, 将 16 个发光二极管的负极接 P0 和 P1 口,正极接外部高电平,即 P0 和 P1 口的相应端口为低电寻常 LED 就能被点亮。再通过程序循环的让各个端口以不同的方式点亮来到达各种把戏的效果,并且当中要有肯定的延时,延时时间小于人眼视觉暂留时间,否则人眼看上去每个灯都是亮的也就没有实际效果。设计的 LED 彩灯系统分为两局部,即 AT89C51 主控模块和发光二极管 LED 受控模块。整个系统工作由软件程序掌握运行,同
9、时依据不同的需要,用户可以在 LED 彩灯工作时通过主控模块上的按钮来实现 4 种彩灯灯光效果不含全部点亮,全部熄灭。模块功能:该局部主要涉及功能的实现方式,即程序编写。程序要实现的功能包括读按键,通过对读入按键的值掌握 LED 点亮方式。键盘有 5 个按键,其中 K1、K2、K3、K4 掌握 LED 点亮模式。2.2 主程序及流程图主程序AT89C51 通过编写程序应完成以下功能:通过 P0 口和 P1 掌握发光二极管 LED 的亮与灭,从而实现多种闪耀方案;用 16 盏以上的 LED 小灯,实现至少 4 种彩灯灯光效果不含全部点亮,全部熄灭。用输入按钮在几种灯光效果间转换。依据上述要求即可
10、写出主程序代码并绘制出主程序流程图。主程序流程图开场扫描按键按钮一否是按钮二否效果一是按钮否三效果二是否效果三2.3 子程序的编程思路按钮四是效果四虽然大致的流程图已经绘制完毕,但编程过程中会遇到更加具体的问题,需要编制一些子程序来解决,以下是一些主要子程序的流程图绘制思路。延迟子程序流程图数码管的显示必需有足够长的时间长到肉眼能够觉察到,因此在点亮数码管时要给开场予其一个适当的延迟。触 发 时间 i0是调用是计时j 125否否输出信号 0一个机器周期包括 12 个时钟周期。单片机 AT89C51 工作于 12M 晶振,它的时钟周期是 1/12微秒。它的一个机器周期是 12*1/12也就是 1
11、 微秒。一共执行 1000次,正好 1000 微秒,也就是 1 毫秒。按键扫描子程序按键扫描子程序用来检测并识别外部输入按钮的输入信号。void KeyScanif(P2=0*f7)ys1ms(100); if(P2=0*f7)flag=0*f7;if(P2=0*fb)ys1ms(100); if(P2=0*fb)flag=0*fb;if(P2=0*fd)ys1ms(100); if(P2=0*fd)flag=0*fd;if(P2=0*fe)ys1ms(100);if(P2=0*fe)flag=0*fe;其中的状态标志分别为:0*fe 为按键 1 标志 ,0*fd 为按键 2 标志 ,0*fb
12、 为按键3 标志,0*f7 为按键 4 标。3 系统调试与仿真分析3.1 软件调试本次全部软体程序均承受 C51 语言编写,程序写完后要对其编译,在 Proteus 软件里实现硬件电路仿真。下面分别简洁介绍单片机 C 语言和这两款软件。单片机C 语言单片机 C 语言程序设计不同于通用计算机应用程序设计,它必需针对具体的微掌握器及外围电路来完成,为了便于学习单片机应用程序设计和系统开发,很多公司退出了单片机试验箱、仿真器和开发板等,这些硬件设备可用于验证单片机程序,开发和调试单片机应用系统。开发 8051 单片机系统时,使用C 语言会使开发周期大为缩短,开发效率大幅提高,程序可读性好且易于移植,
13、所以使用 C 语言开发单片机系统已经成为必定趋势。C 语言在单片机系统开发中的优势: 用 C 语言编写的程序可读性强; 在不了解单片机指令系统而仅生疏 8051 单片机存储构造时就可以开发单片机程序; 存放器安排和不同存储器寻址及数据类型等细节可由编译器治理; 程序可分为多个不同的函数,这使程序设计构造化; 函数库丰富,数据处理力量强; 程序编写及调试时间大大缩短,开发效率远高于汇编语言; C 语言具有模块化编程技术,已编写好的通用程序模块很简洁植入程序,这进一步提高了程序开发效率。Keil uVision2C51 单片机支持 HE*文件,我承受的编译器是 Keil uVision2 软件,该
14、软件是美国Keil Software 公司开发的,关于 8051 系列 MCU 的开发工具,是目前世界上最好的51 单片机开发工具之一。软件本身支持数百种 51 系列单片机芯片,可以用来编译 C 源码,汇编源程序以及两者的混合编程代码,连接重定位目标文件和库文件,创立HE*文件,调试目标程序等,是一种集成化的文件治理编译环境。使用步骤如下: 建立一个工程,启动Keil,单击“Project 菜单/New选项,从弹出的窗口中选择要保存的路径,并输入工程文件名“彩灯.uv2”,然后保存。这时会弹出一个选择 CPU型号的对话框,依据所使用的单片机来选择,我用的单片机是 AT89C51。 创立程序文件
15、,单击“File 菜单/New选项,输入C51 语言源程序,单击“File 菜单/Save并输入程序文件名“彩灯.C,保存。 程序文件添加到工程中,右键点击 “Target 1”前面的 “+,开放里面的容“Source Group 1”,右键单击“Source Group 1”弹出一个右键菜单,单击“Add File to Groups Source Group 1 ”,从弹出的窗口中选择之前保存的文件“彩灯.C添加到工程中去。 设置当前工程的目标选项,右键单击 “Target 1”,从弹出的右键菜单中单击 “Option for Target选项,从弹出的 “Options窗口中选择 “Ta
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 报告 彩灯 控制器 设计
限制150内