单片机节日彩灯控制器设计彩灯控制器

合集下载

单片机节日彩灯控制器设计

单片机节日彩灯控制器设计

邯郸学院课程设计报告课程名称单片机题目节日彩灯控制器的设计学生学生学生学生指导教师年级专业二级学院邯郸学院2015年 1 月 5 日邯郸学院《单片机》课程设计任务书摘要节日彩灯是生活中常常的装饰物品,是我国普遍流行的传统的民间的综合工艺品。

彩灯艺术也是灯的综合性的装饰艺术。

在当今社会里,彩灯已经成为我们生活当中的一部分,能给我们带来视觉上的享受,还能美化我们的生活。

彩灯控制器主要是通过产生有规律变化的脉冲信号来实现彩灯的各种变化,他集中的应用了单片机、LED、自动控制等技术,是典型的基于单片机的电子产品。

本文以AT89C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,实现才在开启时满足不一样的闪亮方法及方式。

按K1—开始,按此键则灯开始流动(由上而下)。

K2—停止,按此键则停止流动,所有灯为暗。

K3—上,按此键则灯由上向下流动。

K4—下,按此键则灯由下向上流动。

按K5—从亮到暗到亮循环。

通过按键能方便使用者选择不一样的亮法。

并用仿真软件进行仿真按不同的方式点亮LED。

还有就是这节日彩灯的制作成本低、精确度高、装调容易,为节日增添气氛,具一定的市场价值,因此制作了此节日彩灯。

关键词:节日彩灯;单片机;LED;设计;仿真目录摘要 (3)一、概述 (5)二、任务要求 (5)三、硬件电路设计与分析 (5)1.AT89C51单片机 (5)1.1 AT89C51结构 (5)1.2 AT89S51引脚描述 (6)2.键盘设计 (8)3.定时器与复位模块 (8)3.1时钟电路 (8)3.2复位电路 (9)四、软件设计与论证 (10)五、功能仿真实现 (11)七、心得体会 (14)八、参考文献 (15)附录 (15)一、概述19世纪兴起的单片机以其先天的便捷、稳定的优点在现代电子技术电路中占有越来越重要的地位。

又有数字电路与模拟电路相比有显而易见的稳定性。

近年来,数字电路又有了巨大的发展。

51单片机彩灯控制器的设计

51单片机彩灯控制器的设计

51单片机彩灯控制器的设计一、设计目的单片机彩灯控制器是一种能够通过控制程序实现RGBLED灯光颜色和亮度变化的设备。

其设计目的是实现LED的多彩灯光效果,丰富室内环境,提高生活品质。

二、硬件设计1.单片机选择在设计彩灯控制器时,我们选择了常用的8051单片机作为控制芯片。

8051单片机拥有丰富的外设资源,易于编程控制,并且具有较高的稳定性和可靠性。

2.RGBLEDRGBLED是一种由红、绿和蓝三个LED灯组成的组合灯,可以通过控制不同颜色的LED来实现丰富多彩的灯光效果。

在设计中,我们选用了高亮度的RGBLED,以确保灯光效果的良好。

3.驱动电路为了驱动RGBLED,我们设计了一套驱动电路,其中包括三个恒流驱动电路和三个PWM调光电路。

恒流驱动电路可以确保LED的电流稳定,而PWM调光电路可以实现LED的亮度调节。

4.控制电路控制电路主要由单片机、按键、显示屏等组成。

通过单片机控制按键输入,并根据用户需求调整LED的颜色和亮度。

同时,显示屏可以实时显示LED的参数信息,方便用户操作。

5.电源彩灯控制器的电源一般采用直流5V供电,可以通过USB接口或者外部电源适配器来供电,以满足不同环境下的使用需求。

三、软件设计1.系统架构我们将彩灯控制器的软件设计分为三个模块:按键输入模块、LED控制模块和显示模块。

按键输入模块负责接收用户的按键输入,LED控制模块根据用户输入控制LED的颜色和亮度,显示模块实时显示LED的参数信息。

2.按键输入模块按键输入模块主要负责检测用户按键的状态,并根据按键的状态进行相应的处理。

例如,当用户按下“颜色+/颜色-”按键时,按键输入模块会向LED控制模块发送指令,控制LED颜色的变化。

3.LED控制模块LED控制模块负责控制RGBLED的颜色和亮度。

当接收到按键输入模块发送的指令时,LED控制模块会根据指令调节LED的PWM值,实现LED 颜色的变化和亮度的调节。

4.显示模块显示模块通过显示屏实时显示LED的参数信息,包括LED的颜色、亮度等参数。

节日彩灯控制器设计

节日彩灯控制器设计

摘要随着微电子技术的发展,人民的生活水平不断提高,人们对周围环境的美化和照明已不仅限于单调的白炽灯,彩灯已成为时尚的潮流。

彩灯控制器的实用价值在日常生产实践日常生活中的作用也日益突出。

基于各种器件的彩灯也都出现,单片机因其价格低廉,使用方便,控制简单而成为控制彩灯的主要器件。

目前市场上更多用全硬件电路实现,电路结构复杂,结构单一,一旦制成成品就只能按固定模式,不能根据不同场合,不同时段调节亮度时间,模式和闪烁频率等动态参数,而且一些电路存在芯片过多,电路复杂,功率损耗大,亮灯样式单调缺乏可操作性等缺点,设计一种新型彩灯已迫不及待。

近年来,彩灯对于美化、亮化城市有着不可轻视的重要作用。

因此作为城市装饰的彩灯需求量越来越大,对与彩灯的技术和花样也越来越高。

目前市场上各种式样的LED彩灯多半是采用全硬件电路实现,存在电路结构复杂、功能单一等局限性,因此有必要对现有的彩灯控制器进行改进。

本文介绍了一种简易LED彩灯控制系统的软硬件设计过程,以STC-89C51单片机作为主控核心与辅助硬件电路相结合,利用软件实现对LED彩灯进行控制。

本系统具有电路结构简单、操作容易、硬件少、成本低等特点。

关键词:LED彩灯 STC-89C51单片机彩灯控制器前言现在这个时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。

单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。

目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。

学习单片机的最有效方法就是理论与实践并重,本文是作者用自制了一款简易的流水灯,重点8贡献。

随着人们生活环境的不断改善和变化,在许多场合可以看到彩色霓虹灯。

彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到广泛应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。

单片机节日彩灯控制器的课程设计论文

单片机节日彩灯控制器的课程设计论文

1 任务及要求1.1 设计任务1. 设计一个基于单片机的节日彩灯控制器。

2. 设计出硬件电路;3. 设计出软件编程方法,并写出源代码;4. 用PROTEUS进行仿真;1.2 设计要求1.用C语言或汇编语言编实现程序设计。

2.利用查表,中断等方式实现目的。

3.系统的各各功能模块要清楚,有序。

4.程序运行时有友好的用户界面2 设计思想2.1 硬件设计思想节日彩灯控制器是利用将单片机的CPU、RAM、ROM、定时器/计数器及输入/输出(I/O)接口电路集成在一块集成电路芯片上的特点。

通过其与发光二极管及驱动电路的连接,从而构成一个完整的硬件电路。

然后通过对单片机的ROM进行编程,实现对彩灯闪烁的控制。

2.2 软件设计思想通过编程改变P1口的状态,从而改变彩灯的闪烁。

本程序主要可分为主程序模块,比较模块LOOP0、LOOP1、LOOP2、LOOP3、LOOP4、LOOP5和状态显示程序模块k1_light、k2_light、k3_light、k4_light延时程序模块del10ms 等模块。

其中延时时间t1 = T×20×248;t1 = T×C3H×FFH;T为单片机的机器周期3 电路原理与电路图3.1 电路原理以AT-89C52单片机作为主控核心,与按键、电阻等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制,材料有单片机AT89C52、多色发光二极管LED、电阻RES。

3.2 电路原理图4 流程图与算法描述4.1 流程图图4-1 主程序流程图4.2 算法描述本程序主要可分为主程序模块,比较模块,状态显示程序模块和延时程序模块。

比较模块LOOP0、LOOP1、LOOP2、LOOP3、LOOP4、LOOP5。

状态显示程序模块k1_light、k2_light、k3_light、k4_light延时程序模块del10ms等模块。

5程序清单org 0000hljmp startorg 0003hljmp ext1org 0020hstart: mov r0, #0ffh ; 对r0赋值,r0为所设标志位 setb ea ; 开中断setb ex0 ; 允许外部中断0申请中断setb it0 ; 外部中断0为跳变方式触发 mov sp, #70h ; 设置中断loop0: cjne r0, #0ffh, loop1 ; r0不为ff, 转到loop1ajmp main_light ; 否则执行左右流水灯loop1: cjne r0, #01h, loop2 ; r0不为01, 转到loop2ajmp k1_light ; 否则执行左向流水灯loop2: cjne r0, #02h, loop3 ; r0不为02, 转到loop3ajmp K2_light ; 否则执行右向流水灯loop3: cjne r0, #03h, loop4 ; r0不为03, 转到loop4ajmp k3_light ; 否则执行双亮点向中间移动loop4: cjne r0, #04h, loop5 ; r0不为04, 转到loop5ajmp k4_light ; 否则执行双亮点向两边移动loop5: ajmp loop0 ; 返回重新查询ext1: clr ea ; 关中断push accpush pswmov a, p1 ; 读入键值anl a, #0fh ; 屏蔽高四位mov 30h, a ; 键状态存入30hlcall del10msmov a, p1 ; 再次读入键值anl a, #0fhcjne a, 30h, pass ; 两次键值不同,是抖动,退出中断ajmp k1_check ; 如果相等,进行键识别k1_check: cjne a, #0eh, k2_check ; 不是k1, 判断是不是k2mov r0, #01h ; 是k1, 置标志为01ajmp passk2_check: cjne a, #0dh, k3_check ; 不是k2, 判断是不是k3mov r0, #02h ; 是k2, 置标志为02ajmp passk3_check: cjne a, #0bh, k4_check ; 不是k3, 判断是不是k4mov r0, #03h ; 是k3, 置标志为03ajmp passk4_check: cjne a, #07h, pass ; 不是k4, 退出中断mov r0, #04h ; 是k4, 置标志为04ajmp passpass: pop psw ; 现场恢复pop accsetb ea ; 开中断reti ; 中断返回main_light: mov r7, #08h ; 左右流水灯程序mov r6, #06hmov a, #0fehl_loop: mov r1, a ; r1保存现在亮点位置,做样式变换时从该处开始mov p0, alcall del100msrl adjnz r7, l_loopmov a, #0bfhr_loop: mov r1, amov p0, alcall del100msrr adjnz r6, r_loopajmp loop0k1_light: mov r1, a ; 左向流水灯mov p0, alcall del100msrl amov r1, aajmp loop0k2_light: mov r1, a ; 右向流水灯mov p0, alcall del100msrr amov r1, aajmp loop0k3_light: mov p0, #07eh ; 双亮点向中间移 lcall del100msmov p0, #0bdhlcall del100msmov p0, #0dbhlcall del100msmov p0, #0e7hlcall del100msajmp loop0k4_light: mov p0, #0e7h ; 双亮点向两边移lcall del100msmov p0, #0dbhlcall del100msmov p0, #0bdhlcall del100msmov p0, #07ehlcall del100msajmp loop0del10ms: ; 10ms延时子程序(12M) mov r5, #20temp1: mov r4, #248djnz r4, $djnz r5, temp1retdel100ms: mov r3, #0c3h ;100.036mstemp2: mov r2, #0ffh ;511usdjnz r2, $djnz r3, temp2retend6仿真结果图 6.1 从上到下闪烁图 6.2 从下到上闪烁图 6.3 上下同时闪烁7 设计总结7.1 设计体会通过这次的设计使我认识到我对单片机方面的知识太重要了,对于书本上的很多知识还不够熟悉,有很多我们需要掌握的知识还没掌握,我会在以后的学习生活中弥补我所缺少的知识。

单片机课程设计节日彩灯控制器的设计

单片机课程设计节日彩灯控制器的设计

单片机课程设计--节日彩灯控制器的设计荆楚理工学院课程设计成果学院:电子信息工程学院班级:11电气工程及其自动化1班学生姓名:刘诗权学号: 2011401020127设计地点(单位):D1302设计题目: 节日彩灯控制器的设计完成日期: 2014 年 1 月3日指导教师评语:______________________________________________________________________________________________________________ ______________________________________________________________ ______________________________________________________________ ______________________________________________________________ ____________成绩(五级记分制):____________________教师签名:_____________________目录1 摘要 (1)2 系统简介 (2)2.1 总体设计方案说明 (2)2.2 单片机系统组成方框图 (2)2.3 AT89S51单片机介绍 (2)3 系统设计 (4)3.1 系统总体设计 (4)3.2 硬件电路设计 (5)3.3 软件设计 (7)4 实验结果与讨论 (11)5 结论 (12)6 参考文献 (12)7附录 (13)1 摘要随着科技的发展,节日彩灯已经作为节日的一个重要部分越来越丰富多彩了,同时它作为节日的一部分给我们的生活带来了许多美好。

本文分析了彩灯四种不同亮法的原理,基于汇编语言设计了一种按键控制的可以有四种不同亮法的彩灯,当按下第一个键的时候彩灯从上到下亮,按下第二个键时候彩灯从下到上亮,第三个键彩灯从中间到两边亮,第四个彩灯从两边到中间亮。

基于单片机的彩灯控制器设计

基于单片机的彩灯控制器设计

基于单片机的彩灯控制器设计一、引言彩灯是一种可以调节颜色和亮度的灯光装置,被广泛应用于舞台灯光效果、建筑物装饰、商业广告、节日庆典等场合。

传统的彩灯控制器往往依赖于传感器和模拟电路实现,无法快速调节灯光效果,操作不方便。

为了实现更加灵活、方便的彩灯控制,本文将设计一款基于单片机的彩灯控制器。

二、系统设计本彩灯控制器系统设计基于单片机,通过单片机控制器实现对灯光的调节和控制。

系统硬件主要由单片机、彩灯模块、按键开关、显示模块和电源构成,软件主要由单片机程序编写实现。

1.单片机选择单片机是整个系统的核心控制器,选择合适的单片机至关重要。

根据给定的设计要求,选取具有较强处理能力和丰富外设接口的单片机。

一般来说,常用的51系列单片机和STM32系列单片机具备较好的性能和扩展能力。

2.彩灯模块设计彩灯模块是实现灯光调节的核心部分,可以使用RGBLED灯珠或者是WS2812灯带等灯光模块。

通过控制彩灯模块的亮度和色彩来实现不同的灯光效果。

3.按键开关设计通过按键开关来切换不同的灯光模式,实现系统的开关和功能选择。

可以设计多个按键开关,分别对应不同的灯光模式,通过按下不同的按键实现灯光模式的切换。

4.显示模块设计为了方便用户了解灯光的当前状态和模式选择,可以使用OLED显示模块或者数码管显示模块来实现数据的显示。

5.电源设计由于彩灯模块通常需要较高的驱动电流,所以需要提供稳定的电源。

可以采用电池供电或者是AC-DC转换器等方式,确保系统稳定运行。

三、系统实现1.程序设计通过单片机编程实现对彩灯的控制和灯光模式的切换。

根据不同的按键输入,设置对应的灯光参数和模式,通过单片机的I/O接口控制彩灯模块的亮度和色彩。

2.硬件连接按照设计要求,将单片机、彩灯模块、按键开关、显示模块和电源连接起来。

通过对应的引脚和接口进行连接,确保系统正常运行。

四、总结本文设计了一款基于单片机的彩灯控制器,通过单片机编程实现对彩灯的控制和灯光模式的切换。

基于单片机的节日彩灯控制器

基于单片机的节日彩灯控制器

湖北文理学院理工学院课程单片机课程设计题目节日彩灯控制器设计专业通信工程姓名学号姓名学号姓名学号2015.6一、任务以单片机为核心,设计一个节日彩灯控制器。

二、设计要求以单片机为核心,设计一个节日彩灯控制器,要求有四个控制按键:●K1—开始,按此键则灯开始流动(两翼展开)。

●K2—停止,按此键则停止流动,所有灯为暗。

●K3—上,按此键则灯由上向下流动。

●K4—下,按此键则灯由下向上流动。

第1章绪论彩灯是我国普遍流行的传统的民间的综合性的工艺品。

彩灯艺术也就是灯的综合性的装饰艺术。

新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。

而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。

其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。

在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。

1 LED彩灯控制器概述新型LED彩灯系统包括两大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)。

彩灯控制器是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;彩灯管是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明管内。

该LED彩灯控制器是一种基于STC89C51单片机的彩灯控制器,实现对LED彩灯的控制。

其以STC89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。

如果稍微改动控制电路,就可以改变电路的不同工作状态,控制彩灯变幻出不同的闪烁效果。

2 LED彩灯控制技术状况彩灯控制电路是由单元模块电路组合而成的,主要以STC89C51单片机为控制中心,并与按键控制电路、时钟电路、复位电路在直流稳压电路的相互作用下进而控制彩灯亮灭的顺序,从而实现多控制、多闪烁方式的LED彩灯循环。

单片机节日彩灯控制器设计彩灯控制器

单片机节日彩灯控制器设计彩灯控制器

单片机节日彩灯控制器设计彩灯控制器一、设计任务与要求(1)PD0: 开始,按此键则灯开始流动(由上而下);(2)PD1: 停止,按此键则停止流动,所有灯为暗;(3)PD2: 上,按此键则灯由上向下流动;(4)PD3: 下,按此键则灯由下向上流动。

二、方案设计与论证随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。

LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。

但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。

这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。

此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响彩灯效果,因此有必要对现有的彩灯控制器进行改进。

本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计,来达到本设计的要求。

其硬件构成框图如图所示,以单片机为核心控制,由单片机最小系统,时钟电路、复位电路、电源、按键控制电路、LED发光二极管和5V直流电源电路组成。

图2 单片机彩灯循环控制系统硬件框图此设计方案中单片机的PD口接4路按键控制电路,实现彩灯花型的切换功能,单片机上的PB口接8路LED发光二极管组成彩灯电路,显示彩灯循环情况。

1图2程序流程图2、键盘设计论证方案一、独立式独立式键盘是各按键相互独立,每个按键各接一根输入线,一根输入线上的按键工作状态不会影响到其他输入线上的工作状态。

因此,通过检测输入线的电平状态可以很容易判断那个键被按下了。

独立式按键电路配置灵活,软件简单,但每个按键需要占用一根输入口线,在按键数量较多时,需要较多的输入口线且电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机节日彩灯控制器设计彩灯控制器一、设计任务与要求(1)PD0: 开始,按此键则灯开始流动(由上而下);(2)PD1: 停止,按此键则停止流动,所有灯为暗;(3)PD2: 上,按此键则灯由上向下流动;(4)PD3: 下,按此键则灯由下向上流动。

二、方案设计与论证随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。

LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。

但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。

这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。

此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响彩灯效果,因此有必要对现有的彩灯控制器进行改进。

本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计,来达到本设计的要求。

其硬件构成框图如图所示,以单片机为核心控制,由单片机最小系统,时钟电路、复位电路、电源、按键控制电路、LED发光二极管和5V直流电源电路组成。

图2 单片机彩灯循环控制系统硬件框图此设计方案中单片机的PD口接4路按键控制电路,实现彩灯花型的切换功能,单片机上的PB口接8路LED发光二极管组成彩灯电路,显示彩灯循环情况。

1图2程序流程图2、键盘设计论证方案一、独立式独立式键盘是各按键相互独立,每个按键各接一根输入线,一根输入线上的按键工作状态不会影响到其他输入线上的工作状态。

因此,通过检测输入线的电平状态可以很容易判断那个键被按下了。

独立式按键电路配置灵活,软件简单,但每个按键需要占用一根输入口线,在按键数量较多时,需要较多的输入口线且电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。

按键直接与单片机的I/O 口线相接,通过读I/O 口,判定I/O 口线的电平状态,即可识别出按下的按键。

方案二、行列式矩阵式键盘也称行列式键盘适用于按键数量较多的场合,它由行线和列线组成,按键位于行\列的交叉点上。

如下图所示,一个4X4 的行列结构可以构成一个 16 个按键的键盘。

很明显,在按键数量较多的场合,矩阵键盘与独立式键盘相比,要节省很多的 I/O 口线。

综上所述,本设计结构比较简单,所需按键较少就可以实现功能设计,故选择独立式键盘设计。

三、单元电路设计与参数计算1、led彩灯模块设计本设计使用PB口做输出端口来控制led灯的闪亮与灭掉,连接8个发光二极管的阴极。

8个发光二极管采用了共阳极设计,并且VCC通过pnp型三极管给二极管供电(vcc送发射极,集电极与二极管阳极连接,单片机通过PA2来控制二极管阳极电压供给)------(限流电阻R取值为1K)具体硬件设计如下图所示:-2、按键模块设计由于在单片机按键操作中,存在按键抖动的问题,会造成取值不稳定的情况,如下图即为按键操作波形:按键操作波形所以必须考虑去抖动的问题,解决方法有如下两种:●消除按键的抖动既可采用硬件方法,也可采用软件的方法。

使用硬件消抖的方式,需要在按键连接的硬件设计上增加硬件消抖电路,如采用R-S 触发器或RC积分电路等。

采用硬件消抖方式增加了系统的成本,而利用软件方式消抖则是比较经济的做法,但增加了软件设计的复杂性。

●软件方式消抖的基本原理是在软件中对按键进行两次测试确认,即在第一次检测到按键按下后,间隔10ms左右再次检测该按键是否按下,只有在两次都测到按键按下时才最终确认有键按下,从而消除了抖动的影响。

由于用软件方式消抖比较方便,比较经济,而硬件消抖即复杂又不经济,所以本次设计我们采用的是软件消抖。

需特别注意的是:在按键接口软件中,除了要考虑按键消抖外,一般还要判别按键的释放,只有检测到按键释放以后,才能确定为一次完整的按键动作完成。

硬件按键设计如下:四、总原理图及元器件清单1.总原理图功能说明:※S1-开始,按此键,灯开始流动(从上到下)※S2-停止,按此键,灯停止流动(灭灯)※S3-上,按此键,灯从上而下流动※S4-下,按此键,灯从下而上流动2.元件清单元件序号元件说明数量备注Atmega16 单片机芯片 1R1—R9 限流电阻9 1K LED 发光二极管8KEY 按键开关 4Q1 三极管 1 Pnp型五、功能仿真实现1、开始:从上到下流动点亮2、反向:从下向上流动点亮3、停止:灭灯六、安装与调试七、结论与心得本次课程设计既要求我们对知识掌握的牢固,又要求我们对知识能够灵活运用。

从所涉及的知识面来说,它不仅要求我们运用所学过的知识还要求我们去查找,学习,借鉴其他科目或门类的知识。

从时间上来说,这次设计的时间是最长的,因此我们有足够的时间去重新温习学过的知识,更有充足的时间去搜集学习一些我们没有涉猎过的知识。

这样不仅锻炼了我们学习新知识的能力,同时也拓宽了我们的知识面。

并且我们还有足够时间去修改我们的设计中的缺陷,这也是对我们将来走入社会独立完成一项课题的考验。

我们经过将近两周的努力,终于完成本次创新课程设计,过程虽是辛苦的,但从中我们却学到了很多东西。

首先巩固了课上学习的理论知识,对于计算机C 语言的系统化整体化有了更深的认识。

整个设计过程最大的收获就是意识到理论知识扎实的重要性,实践是建立在理论之上的,平时的基础知识很重要。

另外就是合作的重要性,每个人都有他的特长一个人难免有疏漏,只有大家共同努力才能顺利的完成任务。

通过本次课程设计,提高了我们的自学能力,提高了理论联系实际的能力,把自己所学应用到实验中,对所用到的硬件有了更加深刻的理解;同时我们更加明白团结合作、分工合作的重要性,提高了团结合作的能力与做事效率。

提高了我们克服困难的信心与决心。

八、参考文献1.马潮编著.AVR单片机嵌入式系统原理与应用实践(第二版)北京航空航天大学出版社 2011年8月。

2.周兴华编著.手把手教你学单片机C程序设计北京航空航天大学出版社 2008年6月。

3、童诗白、华成英主编.模拟电子技术基础高等教育出版社。

附录:1、设计程序代码程序代码如下:#include <iom16v.h>#include <macros.h>#define uint unsigned int#define uchar unsigned charvoid delay_ms(uint com){uint i,j;for(i=0;i<com;i++)for(j=0;j<1194;j++);}uchar key_press(){uchar a;DDRD|=0X0F;PORTD|=0X0F;DDRD&=0XF0;a=PIND;a &=0x0F;if(a==0X0F)return 0;elsereturn 1;}uchar key_scan(){uchar a;delay_ms(10);if(key_press()){a=PIND;a &=0x0F;switch(a){case 0x0E: a=1;break;case 0x0D: a=2;break;case 0x0B: a=3;break;case 0x07: a=4;break;default : a=16;}while(key_press());}else{a=16;}return a;}void zhengxiang(void){unsigned int i;for(i=0;i<8;i++){PORTB=~BIT(i);delay_ms(255);}}void stop(void){PORTA=BIT(2);}void fanxiang(void){unsigned int i;for(i=8;i>0;i){PORTB=~BIT(--i);delay_ms(200);}}void main(void){uchar i,j=0,a=0;DDRA=BIT(2);PORTA=0x00;DDRB=0XFF;// PORTB=0XFF;while(1){PORTB=0XFF; //将LED关闭i=key_press();if(i)a=key_scan();switch(a){case 1:zhengxiang();j=1; break;case 2://stop();j=0;break;case 3:if(j){zhengxiang(); break;}case 4:if(j){fanxiang();break;}default ://stop();j=0;}}}2.电路板实物图3.别人提的问题,及回答。

---精心整理,希望对您有所帮助。

相关文档
最新文档