左右来回循环的流水灯
- 格式:wps
- 大小:36.19 KB
- 文档页数:5
青 岛 科 技 大 学微机原理与接口技术综合课程设计(报告)题 目 __________________________________指导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班______年 ___月 ___日直流电机控制综合实验 周艳平宋雪英 01信息科学技术学院 计算机科学与技术0961 2012 12 27摘要 (2)1、单片机概述 (2)2、仿真软件介绍 (2)3、需求分析 (3)一、课程设计目的 (3)二、课程设计要求 (4)三、实验内容 (4)1、设计任务与要求 (4)2、系统分析 (4)1).硬件电路设计(画出原理图、接线图) (5)2)软件框图 (7)3、用keil建项目流程 (8)4、程序清单 (9)4、系统调试 (11)四、设计总结(结论) (12)摘要近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。
而AT89C51就是其中一种,它是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMO8位微处理器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
本课程设计介绍一种LED小灯控制系统的设计方法,以单片机作为主控核心,与按键、排阻、电阻、电容等较少的辅助硬件电路相结合,利用软件实现对LED灯进行控制。
能够通过按键控制8个LED小灯从左到右依次点亮。
关键字:单片机、LED流水灯1、单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
青 岛 科 技 大 学微机原理与接口技术综合课程设计(报告)题 目 __________________________________指导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班______年 ___月 ___日直流电机控制综合实验 周艳平宋雪英 01 信息科学技术学院计算机科学与技术0961 2012 12 27摘要 (2)1、单片机概述 (2)2、仿真软件介绍 (2)3、需求分析 (3)一、课程设计目的 (3)二、课程设计要求 (4)三、实验内容 (4)1、设计任务与要求 (4)2、系统分析 (4)1).硬件电路设计(画出原理图、接线图) (5)2)软件框图 (7)3、用keil建项目流程 (8)4、程序清单 (9)4、系统调试 (11)四、设计总结(结论) (12)摘要近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。
而AT89C51就是其中一种,它是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMO8位微处理器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
本课程设计介绍一种LED小灯控制系统的设计方法,以单片机作为主控核心,与按键、排阻、电阻、电容等较少的辅助硬件电路相结合,利用软件实现对LED灯进行控制。
能够通过按键控制8个LED小灯从左到右依次点亮。
关键字:单片机、LED流水灯1、单片机概述单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
目录前言 (2)第一章多功能流水灯的设计方案 (3)1.多功能流水灯的设计方案及框图 (3)1.1 基本要求设计方案 (3)1.2 提高设计方案 (3)1.3 设计框图 (3)第二章多功能流水灯设计方案单元模块电路设计 (4)2.多功能流水灯电路的设计 (4)2.1 多功能流水电路 (4)2.2 多功能流水灯的提高电路 (5)第三章试验的调试与分析 (6)第四章结论 (7)后记 (8)参考文献 (8)附录 (9)前言随着社会的不断发展,人民生活水平的提高,流水灯在现实生活中所起的作用越来越重要。
流水灯简易轻巧,外貌美观,能闪现多彩的颜色,在现实生活中起到了广泛的应用。
在繁忙的交通路段,闪烁着的流水交通灯,提醒着人民要遵守交通规则;在繁忙的大街上,闪烁的流水灯无不吸引过路人的眼球,甚至在自动门上都装有自动流水灯,告诉人们现在的时间和日期。
流水灯无处不在,所以说多功能流水灯电路的设计可以使我们进一步了解流水灯,感受流水灯给我们生活带来的美感。
多功能流水灯的设计要求在预定的时间到来时,会产生一个控制信号控制彩灯的流向、间歇等,彩灯流向可以随着电路的改变而改变,并具有自控、手控、流向控制等功能。
主要考察了数字电路中计数器的原理、NE555定时器的作用等相关知识。
在设计的过程中需要了解相关芯片(CD4017、NE555)的具体功能,如引脚图、内部框图和真值表等。
连接好设计电路,由于最后流水灯的流向十分的顺畅和稳定,所以所得的结果十分的简洁并且很成功。
经过资料的查阅,小组的讨论,以及几种方案的比较,选定方案参考如下:整个流水灯的电路由振荡电路、译码电路和光源电路组成,振荡电路的组成包括3个电容、一个电阻器和一个电位器及NE555定时器构成;译码电路的组成包括芯片CD4017;光源电路的组成包括若干电阻个若干二极管。
第一章多功能流水灯的设计方案1.多功能流水灯的设计方案及框图1.1 基本要求设计方案1) 设计一个多功能彩灯流水控制电路。
数电课程设计一课程课题:流水灯设计二课程任务:设计一个可以循环移动的流水灯,灯总数为8盏,具体要求如下: -1,5亮,其余灭,右移三次后全灭-4,8亮,其余灭,左移三次后全灭-4,5亮,其余灭,各向两边移三次后全灭-1,8亮,其余灭,各向中间移三次后全灭三课程设计原理:①译码器74139 将Y10N-Y23N 分别命名为led1-led8,利用2-4译码,采用A1,B1,A2,B2分别控制,Y10N-Y23N 为低电平时led 等亮,否则灭。
根据设计任务,结合译码器,可得到循环状态图为:②计数器74169计数器74169 译码器74139序列信号产生74194由于led1-led4和led5和led8的移动方向不尽相同,故采用两个计数器来控制,以led1-led4为例,A1,B1由Q0,Q1决定,则通过UP/DN 可控制Q0,Q1是由00-01-10-11,还是由11-10-01-00,即灯的移动方向。
结合灯的移动方向,取led1-led4的控制端UP/DN为s1,led5-led8的为s2,则s1应为1001序列,s2为1010序列。
③序列产生74194利用74x194产生序列信号s1,s2,来控制下一段的计数器的升降UP/DN,进而控制灯的循环顺序。
功能表:四课程设计方案:①电路图:②仿真波形:学习数电以来,都是一些题目化问题的设计,但这次课程设计却和实际联系紧密,牵扯到很多芯片的原理,链接,是一次很好的实践,原理图的设计是理论与实践的交叉点,原理图设计好之后,我们可以利用仿真软件进行仿真,这样便可以验证我们设计的正确性;积累了经验并且熟练地掌握了软件的基本使用方法和一些快捷键的用途,并体会到数电和实际生活的联系,是不错的开始。
电子课程设计——多功能流水灯学院:太原爆炸学校专业、班级:爆炸122201H班姓名:金金金学号:20122205xxx指导老师:big bang2014年12月多功能流水灯一、设计任务与要求1.要求彩灯有单向流水效果。
2.彩灯的流向可以改变。
可以正向流水,也可以逆向流水。
灯流动的方向可以手控,也可以自控,自控往返变换时间为5秒钟。
3.彩灯可以间歇流动,10秒钟间歇一次,间歇时间为一秒。
4. 彩灯的流速以人眼看清为准。
二.总体框图(一)设计思路:彩灯流水控制电路,其主要部分是实现定时功能,即在预定的时间到来时,产生一个控制信号来控制彩灯的流向,间歇等,可利用中规模集成器件可逆计数器和译码器来实现正,逆流水功能,利用组合电路实现自控,手控方向控制等.利用555定时器组成一个多谐振荡器,发出连续脉冲,作为计数器的时钟脉冲源。
彩灯流向可以改变,应该选用加减计数器,但考虑到加减计数器无法实现时间间歇,所以不考虑。
计数器的输出接译码器以实现流水的效果。
如图(1-1)所示:图(2-1)多功能流水灯总体框图根据题目要求,利用试验箱上的脉冲信号,发出连续脉冲,作为计数器的时钟脉冲源。
为了实现灯流向的可控,可以选用加减可逆计数器,计数器的输出接译码器以实现流水的效果。
在选择流向和间歇控制电路时有两种设计方法,第一种是在设计一个脉冲源,使其频率是主脉冲的整数倍。
但这种方法解决不了同步的问题。
第二种方法是利用分频得到所需要的控制信号,显然这种方法优于第一种方法三.选择器件:器件名称 数量 功能说明 74LS190 一片 加减计数器 74LS42 一片 二位十进制译码器 555定时器 一片 构成多谐振荡器74LS04 十一片 非门 74LS160 三片 分频器 74LS32 一片 二输入或门 小灯泡十个观察效果(一)计数74LS190该电路所要实现的功能为当CP 有效时,若U/D 为低电平时,计数器进行加法计数,计数初值为0000;若U/D 为高电平时,计数器进行减法计数,计数初值为1001。
课程设计报告书设计题目:双灯点亮循环控制流水灯设计课程名称:单片机原理与应用系部:专业:班级:组别:姓名:学号:成绩:2008年 6 月 20 日一、系统功能要求设计以AT89C51为核心并用它来控制发光二极管双灯点亮循环的实验装置,用AT89C51单片机控制8个发光二极管发光,实现亮点以12HZ频率又高到低位两两循环移动。
通过PROTEUS软件设计、仿真,并能从中掌握通过软件控制发光二极管的思路和技巧。
二、系统硬件电路设计(一)设计思路本系统电路由四部分组成:时钟电路、复位电路、输出部分、89C51芯片首先介绍一下我设计的电路图,如图1所示:图1其中主要部分电路功能如下图所示:①时钟电路用于产生单片机工作时所需的时钟信号,在芯片的外部通过19脚、18脚接晶体振荡器和微调电容,形成反馈电路,构成一个稳定的自激振荡器。
电路中的C1、C2 一般取30pF左右,而晶体振荡器的频率范围通常是1.2-12MHZ,晶体振荡器的频率越高,震荡频率就越高。
②本部分电路起上电复位的作用。
③输出部分采用红、绿、蓝、黄四种颜色的二极管,让流水灯在移动的时候色彩鲜明、便于观察,该系统采用8个发光二极管,两两从高位到地位流水移动。
RN1排阻的作用是保护二极管,向它提供较小的电流,防止二极管因为电流过大而烧毁。
④在设计图中,89C51芯片是核心,P0,P1,P2,P3口均可以作为I/O口使用。
本电路中使用P1口作为输出口。
(二)单片机原理8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:·中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。
(大作业题目)报告
单片机控制左右循环的流水灯
学生学号:
学生姓名:
同组学号:
同组姓名:
指导老师:
设计目的:
1)学习P1口的使用方法;
2)学习延时子程序的编写
3)了解简单单片机应用系统的设计方法。
4)掌握应用编译源汇编程序的操作方法。
5)熟练掌握AT89c51型开发板的使用方法和注意事项。
设计要求:
8个发光二极管LED0~LED7经限流电阻分别接至P1口的P1.0~P1.7引脚上,阳极共同接高电平。
编程实现制作左右来回循环的节日彩灯,显示规律如下图所示。
依次实现红蓝绿黄红蓝绿黄的循环亮灭。
设计步骤:1.按照电路图在proteus7.5的环境下进行仿真连接,在keilc3的环境下进行c环境的编译,然后下载到单片机内运行进行仿真,观察发光二极管的运行状态。
要注意的的,实验中一定要再p1口接上拉电阻或是一个74HC245的芯片,以提高单片机的P口驱动,以使LED灯亮。
如果使用74HC245,则引脚OE要接地,DIR要接高电平。
2.实现单片机工作的最小系统:电源电路﹑时钟电路﹑复位电路。
3.因为LED灯是共阳极接入,编程实现灯亮的时候,要使语句取反。
设计电路图:
左右来回的流水灯.PDF
源程序:左右来回的流水灯.C
流程图:开始
判断P口电平
高电平低电平
变向P口加1
延时
设计总结:1.实验中连接电路后运行发现等没有亮,检查程序,看接相应灯的P口输出语句是否取反了;如果没有循环,看控制方向的语句是否写对;检查上拉电阻的取值是否正确,一定要有上拉电阻。
2.通过本次设计试验,我了解了单片机是如何实现控制功能的,设计中会遇到错误的结果,要仔细分析错误,然后一一去改进,试验,直到没有错误为止。
三、/*
*左右来回的流水灯*
*/
#include<reg51.h>
typedef unsigned char uint8;
typedef unsigned int uint16;
void delay(uint16 x)
{
uint8 i,j;
for(i = x; i > 0; i --)
for(j = 114; j > 0; j --);
}
void main()
{
uint8 b = 0, way = 0; //移动位数变量及移动方向变量while(1)
{
if(way == 0) //根据way选择左移还是右移P0 = ~(0x01 << b); //最低位的0被左移b位 else
P0 = ~(0x80 >> b); //最高位的0被右移b位
if( ++b == 8) //如果移动到左端或右端
{
b = 0; //b归0
way = !way; //改变方向
}
delay(200);
}
}。