原理+程序·LED摇摇棒.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

原理+程序·LED摇摇棒

16位LED摇摇棒

摘要:大家知道,人的眼睛存在视觉暂留现象,正因为眼睛的反应迟钝,才丰富了人的视觉感受。LED摇摇棒很好地利用了人眼的视觉暂留特性。本设计是基于AT89S51单片机控制、16只高亮度LED发光二极管构成的摇摇棒,配合手的左右摇晃就可呈现一幅完整的画面,可以显示字符、图片等。

1.设计任务:

制作一摇摇棒,其效果满足设计要求。

1.1要求

基本要求:

黑暗条件下左右摇晃摇摇棒,能够清晰显示所要的字符或画面。

发挥部分:

制作一简易按钮,当按下按钮后可以切换显示的内容。

2.方案比较与确定

2.1MCU的选择

方案一:采用传统的51单片机(AT89S51),硬件便宜,程序下载方便。但是51单片机的灌、拉电流都不是很大,设计时需要特别注意,如果16位LED要采用共阴接法,IO口需要上拉。

方案二:采用AVR单片机(ATmega16),其内部资源丰富,且拉电流较大,可以直接驱动LED灯,但是价格较贵。

考虑到本设计产品外围电路简单,LED采用共阳接法,传统的51单片机完全可以满足需要,故采用方案一。

2.2震动开关的选择

方案一:采用水银开关,其结构简单,接触可靠,但是水银是有毒物质,使用不当会造成危险。

方案二:采用滚珠开关,优点是安全无毒,但是容易接触不良,需要软件克服,无形中增加程序的复杂性。

考虑本设计产品只是一演示产品,出现水银泄露的概率很小,故采用方案一。

3.程序框图(略)

4.系统设计与实现

4.1水银开关模块

水银开关一端接地,一端接到单片机外部中断0,外部中断采用边沿触发,当左右摇晃时就会出现一个下降沿,触发外部中断,在中断服务程序中调用显示函数。因为是单方向显示,所以不会出现字符重叠现象。电气连接如图所示:

4.2单片机复位模块

为了简化电路,单片机复位采用手动复位,所以每次上电需手动复位一下。

电气连接如图所示:

6.系统程序

/********************************************************************

2010/10/15Author:xuepengju

circuitconnect:

1~16LED-------------------------P0-P1

Mercuryswitch------------------P3.2

********************************************************************/

#includereg52.h

unsignedcharcodetable[]={

0x00,0x00,0x00,0x00,0xF8,0x0F,0x48,0x04,0x48,0x04,0x48,0x04,0x48,0x04,0xFF,0x3F,

0x48,0x44,0x48,0x44,0x48,0x44,0x48,0x44,0xF8,0x4F,0x00,0x40,0x00,0x70,0x00,0x00,/*电,0*/

0x00,0x01,0x00,0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x02,0x41,0x02,0x81,0xE2,0x7F,

0x12,0x01,0x0A,0x01,0x06,0x01,0x02,0x01,0x00,0x01,0x80,0x01,0x00,0x01,0x00,0x00,/*子,1*/

0x00,0x20,0x00,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0xFE,0x3F,

0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x00,0x20,0x00,0x00,/*工,2*/

0x10,0x04,0x12,0x03,0xD2,0x00,0xFE,0xFF,0x91,0x00,0x11,0x41,0x80,0x44,0xBF,0x44,

0xA1,0x44,0xA1,0x7F,0xA1,0x44,0xA1,0x44,0xBF,0x44,0x80,0x44,0x00,0x40,0x00,0x00/*程,3*/

};

/*延时函数*/

voiddelay370us()

{

unsignedchari=80;

while(i--);

}

/*嵌入式系统工程显示112*16像素*/

/*voiddisplay()

{

unsignedchari;

for(i=0;i112;i++)

{

P0=~Embed[i*2];

P1=

文档评论(0)

158****1866 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档