吴忠躺衫网络科技有限公司

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子元器件>發(fā)光二極管>

LED顯示搖棒制作 - 全文

2011年12月27日 10:56 互聯(lián)網(wǎng) 作者:秩名 用戶評(píng)論(0
關(guān)鍵字:led(661777)

  下面介紹自己動(dòng)手做的漂亮玩具。

  圖形顯示的原理:

  利用人眼的視覺暫留效應(yīng),使手在擺動(dòng)到不同位置的時(shí)候,讓位于一條直線上的LED顯示二維圖像的不同的列,實(shí)現(xiàn)圖形掃描顯示。

顯示效果圖片(點(diǎn)擊放大)

 

  

  物理機(jī)制:

  當(dāng)我們?cè)跀[動(dòng)手臂的時(shí)候,短時(shí)間內(nèi)擺動(dòng)位置和左右幅度不會(huì)有太大變化,利用我們手臂的這個(gè)運(yùn)動(dòng)規(guī)律,只要能得到棒從一側(cè)擺動(dòng)到另一側(cè)的時(shí)間,然后把這個(gè)時(shí)間分成N份,然后在每一份的時(shí)間里顯示不同的花樣就能實(shí)現(xiàn)圖形的顯示。當(dāng)我們?cè)跀[動(dòng)手臂的時(shí)候,并不能預(yù)先得知此次擺動(dòng)需要的時(shí)間,怎樣得到從一側(cè)擺動(dòng)到另一側(cè)的時(shí)間呢?

  再想想,短時(shí)間內(nèi)我們手臂的擺動(dòng)頻率也不會(huì)有特別大的變化,我們只要能得到前一次擺動(dòng)所用的時(shí)間,然后用這個(gè)時(shí)間近似得到下一次擺動(dòng)所需要的時(shí)間,然后分N份就可以了。得到一次擺動(dòng)所需的時(shí)間的任務(wù)由光遮斷器完成,在棒上裝一個(gè)可以擺動(dòng)的用來遮擋光遮斷器光線的細(xì)桿,粗細(xì)比光遮斷器的狹縫稍寬,我用的是整流橋焊后剪下的一段管腳。每左右擺動(dòng)一次這個(gè)桿就會(huì)通過一次光遮斷器,使單片機(jī)產(chǎn)生一次中斷,兩次中斷之間的時(shí)間就是想要得到的時(shí)間,實(shí)現(xiàn)這個(gè)功能用掉2051的一個(gè)定時(shí)器T0和外部中斷INT0。然后用2051的另一個(gè)定時(shí)器T1,其定時(shí)時(shí)間是T0的N分之一,每次中斷依次顯示一列,就是照片上的效果。

  再細(xì)想一下,手臂擺動(dòng)的頻率大于2Hz的時(shí)候才大概能由視覺暫留看出圖形,再快也不過十幾Hz,由T0為16位定時(shí)器的最長(zhǎng)計(jì)時(shí)時(shí)間得到2051的時(shí)鐘頻率1MHz最合適,還有遮擋用的細(xì)桿的粗細(xì)也可以大概估算,使其不會(huì)對(duì)計(jì)時(shí)精度產(chǎn)生太大影響。

  所用元件:

  AT89C2051 8元

  高亮LED共8個(gè) 3.6元

  電池盒 0.5元

  單面萬(wàn)用板 8元 可以裁成3塊,做3個(gè)搖棒

  陶瓷諧振器 1元

  光遮斷器 2元

  電阻電容導(dǎo)線 2元

  外殼* 0.7元 可以裁成2塊

  可選元件:

  電源開關(guān) 1元

  總成本不超過20元

  *外殼我用在家樂福買的半透明文件夾卷成的

  此電路電路非常簡(jiǎn)單,代碼短,但是用到了2051的外部中斷編程和T0、T1定時(shí)器編程,非常適合初學(xué)者練習(xí)。我制作這個(gè)玩具花費(fèi)了兩個(gè)晚上的時(shí)間。此電路和程序還有擴(kuò)展改進(jìn)的空間,如在長(zhǎng)時(shí)間不擺動(dòng)的情況下可以使單片機(jī)進(jìn)入省電模式,顯示不僅限于對(duì)稱圖片等,大家可以試試。

  以下是源程序:

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

  // ---------------

  // LED顯示搖棒

  // ---------------

  // 作者:nim 于 http://www.21icbbs.com 2005-1-7

  //

  // email: linyige@yahoo.com

  //

  // 本設(shè)計(jì)版權(quán)歸作者所有,請(qǐng)勿擅自用于商業(yè)目的,轉(zhuǎn)載請(qǐng)注明作者及出處

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

  #include

  #define SEG 17 //每幀圖片分成17列來顯示

  #define INTERVAL 20 //每幅圖片在左右搖擺20次后換下一幅

  typedef unsigned char uchar;

  typedef unsigned int uint;

  code char pattern[17][3]={ //3幅圖片的字模

  {0xff,0xff,0xff},

  {0xff,0xff,0xff},

  {0xff,0xff,0xff},

  {0xff,0x9f,0xff},

  {0xff,0x6f,0xf9},

  {0xff,0x77,0x65},

  {0xfe,0xbb,0x1e},

  {0x7e,0xdd,0xfe},

  {0x00,0xee,0xfe},

  {0x7e,0xdd,0xfe},

  {0xfe,0xbb,0x1e},

  {0xff,0x77,0x65},

  {0xff,0x6f,0xf9},

  {0xff,0x9f,0xff},

  {0xff,0xff,0xff},

  {0xff,0xff,0xff},

  {0xff,0xff,0xff},

  };

  uchar phase,th1,tl1,index,count;

  main()

  {

  EA=0;

  EX0=1;

  ET1=1;

  PX0=1;

  IT0=1;

  TMOD=0x11;

  index=0;

  EA=1;

  while(1)

  {

  }

  }

  void Int0_Handle(void) interrupt 0 using 2

  {

  uint t0_time;

  TR0=0;

  TR1=0;

  TF1=0;

  t0_time=TH0<<8|TL0;

  TL0=0;

  TH0=0;

  TR0=1;

  t0_time=65535-t0_time/SEG;

  th1=t0_time/256;

  TH1=th1;

  tl1=t0_time % 256;

  TL1=tl1;

  if (count<3*INTERVAL){ //3幅圖片循環(huán)

  count++;

  }

  else{

  count=0;

  }

  index=count/INTERVAL;

  if (th1!=0xff || tl1!=0xff){ //如果擺動(dòng)特別慢,定時(shí)器溢出就不顯示

  phase=0;

  TR1=1;

  }

  else{

  TR1=0;

  }

  }

  void Timer1(void) interrupt 3 using 3

  {

  if (phase

  {

  P1=pattern[phase][index];

  phase++;

  TH1=th1;

  TL1=tl1;

  }

  }

非常好我支持^.^

(78) 98.7%

不好我反對(duì)

(1) 1.3%

( 發(fā)表人:小蘭 )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      百家乐官网百战百胜| 太阳神百家乐官网的玩法技巧和规则 | 立即博百家乐官网的玩法技巧和规则| 象棋赌博网| 欧洲百家乐的玩法技巧和规则| 丽景湾百家乐官网的玩法技巧和规则 | 网上百家乐游戏哪家信誉度最好| 大上海百家乐官网娱乐城| 新手百家乐官网指点迷津| 新时代娱乐城开户| 威尼斯人娱乐城怎么赢| 缅甸百家乐娱乐| 南宁百家乐官网的玩法技巧和规则| 百家乐官网视频一下| 大发888 zhldu| 全讯网qtqnet| 百家乐群博乐吧blb8v| 百家乐网站东方果博| 百家乐官网平玩法这样| 百家乐官网tt娱乐平台| 足球百家乐官网网上投注| 肯博百家乐官网游戏| a8娱乐城开户| 新全讯网carrui| 百家乐娱乐礼金| 澳门百家乐赌场娱乐网规则| 永利高百家乐进不去| 百家乐怎样看点| 阴宅24山坟前放水口| 缅甸百家乐官网赌| 百家乐官网长龙太阳城| 赌百家乐官网的下场| 豪杰百家乐官网游戏| 竹北市| 百家乐官网视频连线| 澳门百家乐官网投注法| 利澳娱乐城| 日照市| 百家乐官网技巧在那里| 保单百家乐官网路单| 百家乐官网统计概率|