单片机控制光电开关89c51中,我想通过开关控制led灯闪烁,图可以这样画?程序应该要怎样改?谢谢回答

科技信息○IT技术论坛○SCIENCE&TECH;基于AT89C51单片机LED彩灯控制器设计;(宜春学院;熊印国江西宜春;336000);【摘要】介绍了一种新型的LED彩灯控制系统的设计;【关键词】LED彩灯;AT89C51单片机;彩灯;1.系统主要器件介绍;1.1AT89C51的特点;AT89C51是ATMEL公司采用CMOS工艺生;1.2ULN2003
科技信息○IT技术论坛○SCIENCE&TECHNOLOGYINFORMATION2008年第36期基于AT89C51单片机LED彩灯控制器设计(宜春学院熊印国江西宜春336000)【摘要】介绍了一种新型的LED彩灯控制系统的设计方法,以AT89C51单片机作为主控核心,与按键、显示器等较少的辅助硬件电路相结合,用软件实现对LED彩灯进行控制。本系统具有体积小、硬件少、电路结构简单及容易操作等优点.【关键词】LED彩灯;AT89C51单片机;彩灯控制器;模块设计1.系统主要器件介绍1.1AT89C51的特点AT89C51是ATMEL公司采用CMOS工艺生产的低功耗、高性能8位单片机,与MCS-51单片机兼容,其功能特点为:(1)4K字节闪烁存储器(FLASH),可进行1000次写。(2)静态操作,外接OHZ-24MHZ晶振。(3)三层程序存储器琐。(4)128字节内部数据存储器(RAM)。(5)32跟可编程输入/输出线。(6)两个6位定时/计数器。(7)六个中断源。(8)一个可编程串口。(9)支持低功耗模式和掉电模式。1.2ULN2003特点ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。(如图1)电路的特点如下:ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMO电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。图3彩灯控制器3.软件设计图1ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V的电压,输出还可以在高负载电流并行运行。1.3LED显示的工作原理LED显示块是由发光二极管显示字段的显示器件。在单片机应用系统中通常使用的是7段LED。这种显示器共有共阴极和共阳极两种,本设计将用共阴极。共阴极LED显示块的发光二极管与阴极并连。(如图2)3.1主程序通过扫描P3.0―P3.2口,判断是否有按键按下,然后在20H内存单元的低3位的对应位置置1标志,确定应执行的闪烁功能。当20H.0为1时,发光管轮流点亮图案1;当20H.1为1时,发光管逐点点亮图案件2;当20H.2为1时,发光管间隔闪亮图案3。通过扫描P3.4―P3.5来改变LED的闪烁频率。在主程序对20H的低3位进行位值判定后,转入相应的闪烁控制程序。上电初始化时,对20H的最低位置1,系统进入轮流点亮方式。主程序流程图如图4所示。图2LED显示模块的内部电路2.彩灯控制器硬件设计整个系统由软件程序控制运行,根据需要,用户可以选择工作模式和LED的闪烁频率。上电后系统经过初始化,调用键盘扫描程序(KEYWORK),有键按下进入相行的扫描和工作模式,无键按下进入默认的工作模式,默认状态下工作模式为MOLD1。然后根据用户的需要有三种模式提供选择三种模式分别为MOLD1、MOLD2、MOLD3只要按下对应的按键就选中了相应的模式,INC1和DEC1分别为工作时间加1和减1功能键。基于AT89C51的彩灯控制器部分具有按键、显示等功能,并利用AT89C51的P2口输出控制信号驱动各种颜色的LED彩灯。彩灯控制器部分如图3所示。其中单片机采用AT89C51,P1口作LED发光管输出控制用,P3.0―P3.5口为闪烁方式控制开关MOLD1、MOLD2、MOLD3按键,P3.3作为备用键,发光管工作电流约为10mA,采用12MHz晶振。图4主程序流程图(下转第110页)97科技信息○IT技术论坛○SCIENCE&TECHNOLOGYINFORMATION2008年第36期(2)根据日期,按书名或条形码,统计一个月的销售情况。(3)按季度统计,根据条形码进行一个季度的统计。2.2销售统计子系统的实现1.可以进行日统计(条形码或书名),如下图所示:三、代码设计过程:在选择日期时,首先把TimePicker读取的时间转换为字符型,然后判断各文本框输入是否合法,如果合法,则根据先返回条码返回符合要求的,然后再根据日期来进行筛选。符合日期范围的显示,不在范围的则不显示。按照这个思想逐步完成了该模块各个统计功能。其中时间的取法,使用dataGrid进行显示。例如统计按钮(按书名查询)按下时:首先是链接数据库:SqlDataAdapterda1=newSqlDataAdapter(\BookInfo.BarCode,BookName,SaleAmount,Discount,Price,SaleDate,ISBN,PubCompanyfromBookInfo,SalewhereBookInfo.BarCode=Sale.BarCodeandBookInfo.BarCodelike“+str3+”andSale.BarCodelike“+str3+”,“server=database=BMS;Integratedsecurity=SSPI”);之后再执行select语句,之后定义一dataSet,来存放返回的数据行,查找满足要求的行时,使用一个循环:2.可以进行月统计(条形码或书名),如下图所示:3.可以进行季度统计(条形码)for(inti=0;i<dt.Rows.Ci++){stringstrSaleDate=dt.Rows[i][\intSaleData=0;if(strSaleDate.Length==17){SaleData=int.Parse(\+strSaleDate.Substring(5,1)+strSaleDate.Substring(7,2));}if(strSaleDate.Length==18)SaleData=int.Parse(strSaleDate.Substring(5,2)+strSaleDate.Substring(8,2));if(SaleDatadata3){count--;dt.Rows[i].Delete();}}这样进行筛选后就得到了想要的统计结果。科●【参考文献】[1]吉根林.崔海源.瞿裕忠.Web程序设计.北京:电子工业出版社,2002.[2]王能斌.数据库系统教程.中国:电子工业出版社.2002.[3]王能斌.数据库系统教程.中国:电子工业出版社.2006.[4]张海,软件工程导轮,第三版,北京:清华大学出版社,1998.[责任编辑:田瑞鑫]●(上接第97页)3.2键盘扫描子程序因按键较少,采用直在端口扫描键开关,用软年延时消抖确认后,对20H内存单元相应的位置1,并把其余位清0。3.3闪烁控制序闪烁控制程序用来控制P1口的发光管发光变化方式,其中:执行程序(图案1)时的P1口输出值变化为---延时------延时------延时------延时------延时------延时------延时------延时---结束到主程序。执行程序(图案2)时的P1口输出值变化为---延时---―延时------延时------延时------延时------延时------延时------延时---结束到主程序。执行程序(图案3)时的P1口输出变化为---延时------延时---结束到主程序。3.4延时子程序延时子程序有10ms和5ms两个,用作键扫描消抖及发光管闪烁延时。发光管闪烁的快慢可由R4寄存器内的初值进行改变。科●【参考文献】[1]李朝青.单片机原理与接口技术.北京航天航空大学出版社,2005.[2]求是科技校.单片机典型模块设计实例导航技.人民邮电出版社,2004.[3]戴佳,戴卫恒.51单片机C语言应用程序设计实例精讲.电子工业出版社,2006.作者简介:熊印国,江西丰城,讲师,研究方向:电气自动化方向。[责任编辑:汤静]110三亿文库包含各类专业文献、高等教育、中学教育、幼儿教育、小学教育、生活休闲娱乐、文学作品欣赏、专业论文、基于AT89C51单片机LED彩灯控制器设计85等内容。 
 因此有必要对现有的彩灯控制器进 行改进。 本文提出了一种基于 AT89C51 单片机的彩灯控制方案,实现对 LED 彩灯的控制。本方案 以 AT89C51 单片机作为主控核心...  单片机彩灯设计控制器 ... 10页 1下载券 单片机AT89C51LED彩灯控... 12页...※※※ 2008 级单片机 ※※ 课程设计 ※※ ※※※ 单片机课程设计报告书 课题...  我们采用一种基于 AT89C51 单片机的彩灯控制方案,实现对 LED 彩灯的控制。本方案以 AT89C51 单片机作为主控核心,与显示、驱动 等模块组成核心主控制模块。在主控...  基于单片机多控制、多闪烁... 23页 免费 基于AT89C51单片机的LED彩... 31页...(论文) 基于单片机的彩灯控制器设计赵向明 自动化专业 自控 0702 班 学号 ...  它集中地运用了单片机、 LED、 , 自动控制等技术,是典型的基于单片机的电子产品。 本设计以 STC89C52 单片机为控制核心, 采用模块化的设计方案, 运用 LED 彩灯...  1基于at89c51单片机的led彩灯控制器设计_信息与通信_工程科技_专业资料。大专论文辽宁工业大学继续教育学院 辽宁工业大学继续教育学院 毕设用纸 AT89 89C 基于 AT89...  延安大学西安创新学院本科毕业论文(设计) 基于单片机的彩灯控制器设计摘 要:近年...本方案是一种基 实现对 LED 彩灯的控制。 主要以 AT-89C51 于 AT-89C51...  基于AT89C51单片机的模拟路灯控制系统设计_工程科技_专业资料。基于模拟路灯控制...通过程序实现按规定时间开关灯 功能,由于路灯采用 LED 灯,节能环保,耗电量低,...闪烁程序,最全面的闪烁程序文章 - 电子工程世界网
在电子工程世界为您找到如下关于“闪烁程序”的新闻
闪烁程序资料下载
LED闪烁程序基于AT89C52LED灯的闪烁....
************************************************************函数的使用和熟悉*************** ************************************************/ 4
实例3:用单片机控制第一个灯亮 4
实例4:用单片机控制一个灯闪烁:认识单片机的工作频率 4
4.2.1 部件名称4.2.2 写入程序时的开关操作4.2.3 复位操作4.2.4 清除锁存数据的操作4.3 高性能型QCPU、过程控制CPU 和冗余CPU 4.3.1 部件名称4.3.2 写入程序时的开关操作4.3.3 复位操作4.3.4 清除锁存数据的操作4.4 通用型QCPU 4.4.1 各部分的名称.4.4.2 写入程序时的开关操作.4.4.3 复位操作.4.4.4 清除锁存数据的操作.第5 章...
【作  者】张毅刚 [同作者作品]
【出 版 社】 哈尔滨工业大学出版社 【书 号】
【出版日期】 2004 年11月 【版 次】1-3 【内容简介】
本书是在第2版《MCS-51单片机应用设计》一书的基础上,从应用的角度,详细地介绍了MCS-51单片机的硬件结构、指令系统、各种硬件接口设计、各种常用的数据运算和处理程序、接口驱动程序...
 1.10 C语言在单片机系统开发中的优势
第2章 Proteus操作基础
 2.1 Proteus操作界面简介
 2.2 仿真电路原理图设计
 2.3 元件选择
 2.4 调试仿真
 2.5 Proteus与? V3的联合调试
第3章 基础程序设计
 3.1 闪烁的LED
 3.2 从左到右的流水灯
 3.3 左右来回循环的流水...
本作品采用Atmel公司的AT89C51单片机,以汇编语言为程序设计的基础,设计一个用四位数码管显示时、分的时钟。在实物图中,左边靠近电源的绿色发光二极管(长亮)是电源指示灯,表示的是5V稳定电源工作正常;单片机左下角红色发光二极管是秒灯,每闪烁一次表示时间走动一秒钟;按键正上方绿色发光二极管是设置灯,当时间正常走动时此时不亮,当第一次按下设置键(右键)时,此绿灯亮,同时秒时熄灭,且分钟的两位数...
60秒流水灯闪烁的程序,60秒后始终全部快速闪烁...
显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
低电源电压(VDD:+3.0--+5.5V)
显示分辨率:128×64点
内置汉字字库,提供点阵汉字(简繁体可选)
内置 128个16×8点阵字符
2MHZ时钟频率
显示方式:STN、半透、正显...
实验内容:1.闪烁的LED实验内容:应用凌阳单片机控制一个LED灯不断闪烁。实验目的:熟悉单片机编程,学习通过IO引脚输出数据。2.由按键控制的LED实验要求:设计电路,完成用按键控制一个LED的亮与灭。实验目的:进一步熟悉单片机编程,学习IO的输入。3.定时闪烁的LED实验内容:设计程序,分别控制LED以1Hz、2Hz的速度闪烁。实验目的:学习定时器的使用。4.自制电子时钟实验内容:设计电路...
是控制LED闪烁发光的简单例程。该程序实际上是实用工程模板Demo的一个应用,直接从main( )函数开始编写。在main( )函数的前面,定义了LED所在的GPIO端口和管脚。在main( )里,首先定义了一个变量ulClock,在调用函数clockInit( )时被初始化为当前的系统时钟频率,在后面对库函数SysCtlDelay( )调用时会用到该变量。控制LED分3步走:调用函数...
闪烁程序相关帖子
本帖最后由 jeehuiken 于
15:17 编辑
& && && && && &NEWBIT 蓝牙连接编程测试
& && && &该实验是NEWBIT通过蓝牙连接手机,利用手机端的APP为NEWBIT写程序...
看示例程序中出现了__delay_cycles()这个函数,在查找msp430x54x.h这个头文件的时候,发现这个头文件中没有该函数的声明,原来这个函数已经在IAR这个编译器中集成,这里总结一下__delay_cycles();这个函数的具体用法
第一步,复制代码:
#define CPU_F& && && &&nbsp...
=586886][color=#999999]dcexpert 发表于
12:27[/color][/url][/size]
用micropython吧,有完整的DS18B20驱动。[/quote]
能先帮我看看这个怎么改么:Cry: 搜索帖子“8051嵌入式操作系统”,里面有DS18B20组件和示范程序,希望对你有帮助。 怀疑进入死循环,就在主循环中,加个led闪烁...
ConfigCpuTimer(&CpuTimer0, 80, 500000);
那么亮灭的周期是多少
CCS中利用C2000系列F28069M发射板做LED灯闪烁实验中 注释不写得很明白吗?
[attach]330776[/attach]
有疑惑的话示波器量一下不就知道了?{:1_98:} [quote][size=2][url=forum.php?mod...
的基础例程,在上面简单写了一个led灯闪烁的程序,一切正常,当在程序开始增加变量的初始化,增加多了以后,连着仿真器程序运行正常,当程序拔了仿真器重新上电则程序运行不起来。cmd并没有报错什么的,感觉很奇怪,无从下手,希望各位大神帮忙解决一下,谢谢。〉〉〉点击查看详情
CC3200, CC3220在智能家居中的应用和常见问题解决
在无线音视频传输设计中,低功耗和安全性是首要考虑的因素...
入main函数,然后能正常工作(LED灯按程序闪烁)。如果刷完程序直接按复位键重启,LED不闪烁,程序无法运行。
请问是怎么回事?能解决吗?
uCOSIII能跑STL库吗?...
/8=1.63KHz
&&for (;;)
& & P1OUT ^= BIT6;& && && & // P1.6 闪烁
& & delay_ms(1000);
&&6,如上面的程序所示,其中的延迟...
(七)& &PxIES&&中断触发沿控制寄存器
该寄存器只有P1和P2口才有,该寄存器有 8个标志位,标志相应引脚的中断触发沿。
MSP430F169单片机编程基础——(四)I/O操作
PxIFG.x:中断触发沿选择
0:上升沿产生中断
1:下降沿产生中断
例一:用软件定时使发光二级管闪烁。
程序代码如下:
#include &lt...
闪烁的霓虹灯和家用电器中完全可以采用价格低廉的单片机来进行控制。
本资料属于购线网所有,如需转载,请注明出处。
什么是单片机? 推荐的这颗国产单片机型号为HK8S003,是深圳航顺自主研发的8位单片机,主要特点是:价格超低:1.4RMB,采用高速低功耗CMOS工艺设计开发的增强型8位单片机,内部最多16K FLASH程序存储器,双256BYTES IRAM和XRAM ,有18个I/O口...
我写了一个读写24C256的程序。
先往里写3个数据,再读出来。
如果和写的一致,就让指示灯闪烁一次。
我感觉我的程序执行结果,要么灯不闪,要么闪一次。
可是代码烧进去,灯不停滴闪。
我没有仿真器,只有烧写器。看门狗关闭了。
我搞不懂怎么回事?请高手指教,谢谢!上面的程序后面就是一个空的while循环了、
为什么不是只执行一次 wihle...
闪烁程序视频
你可能感兴趣的标签
热门资源推荐帮忙做一个51单片机89C52的程序,要求是LED灯1以0.5秒为周期闪烁,并且通过按键设置周期,_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
帮忙做一个51单片机89C52的程序,要求是LED灯1以0.5秒为周期闪烁,并且通过按键设置周期,
每按一次周期加0.5秒,要求是LED灯1以0.5秒为周期闪烁,并且通过按键设置周期帮忙做一个51单片机89C52的程序,最好能在数码管显示
我有更好的答案
帮忙做一个51单片机89C52的程序,要求。。。没有规定用什么语言?
上面已经说了C语言
#include&reg51.h&sbit&key&=&P2^7;sbit&led&=&P2^0;unsigned&char&n&=&0;void&delay(){&&&&unsigned&&int&&i,&j;&&&&for(i&=&0;&i&&&100;&i++)&&&&&&for(j&=&0;&j&&&200;&j++);}void&readkey(void){&&&&unsigned&char&&i,&j;&&&&if(!key)&&{&&&&&&for(i&=&0;&i&&&10;&i++)&//延时&&&&&&&&for(j&=&0;&j&&&120;&j++);&&&&&&if(!key)&&{&&//消抖&&&&&&&&while(!key);&&//等待按键释放&&&&&&&&n++;&&&&&&&&n&%=&4;&&&&//n&=&0~3&&&&&&&&P1&=&n;&&&&//显示n&&&&&&}&&&&}}main(){&&&&while(1)&&{&&&&&&switch(n)&&&&{&&&&&&case&3:&delay();&readkey();&//慢速闪烁&&&&&&&case&2:&delay();&readkey();&&&&&&&case&1:&delay();&readkey();&&&&&&case&0:&delay();&readkey();&//快速闪烁&&&&&&&&&&&&&&led&=&~&&&&&&}&&&&}}
采纳率:64%
你好!你的原理图确定了吗?数码管是共阴还是共阳的?
共阳,四位数码管,P20到P23
如果太麻烦,你可不可以给我一个在LED灯亮的情况下通过按键控制数码管的程序实例
为您推荐:
其他类似问题
51单片机的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;用C语言怎么在单片机AT89C51上编写一个用一个开关控制一个灯亮和灭的程序_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
用C语言怎么在单片机AT89C51上编写一个用一个开关控制一个灯亮和灭的程序
我有更好的答案
这个就是按键检测嘛,电源怎么能直接接到GPIO,这样大电流会损坏IC。P1口好像没有外部中断,那只有轮询了电路有问题啊
采纳率:75%
来自团队:
sbit KEY=P1^1;sbit LED=P1^0#include&reg51.h&main(){while(1)
本回答被提问者采纳
1条折叠回答
为您推荐:
其他类似问题
at89c51的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;

我要回帖

更多关于 单片机开关控制程序 的文章

 

随机推荐