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

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

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

旋轉(zhuǎn)POV LED顯示的自適應(yīng)調(diào)節(jié)算法

2012年03月20日 09:33 本站整理 作者:秩名 用戶評論(0

  在制作自行車上的POV LED顯示時,最讓人頭疼的是車輪的轉(zhuǎn)速不勻問題,如何在隨時改變轉(zhuǎn)速的情況下保證能正常顯示是POV制作中的難題。

  經(jīng)我若干時間的試驗(yàn),采用自適應(yīng)調(diào)節(jié)的方法,很好解決了這個問題,實(shí)際運(yùn)行效果很好。并同時應(yīng)用在我的新版“硬盤時鐘”的程序中。

  根據(jù)POV顯示原理,我們需要讓LED的閃亮頻率與旋轉(zhuǎn)的頻率同步。

  自適應(yīng)調(diào)節(jié)的算法的思想就是在外部中斷處理程序里,先給定時器T0一個合適的初始值,通過定時器T0處理程序給T0的中斷的次數(shù)計(jì)數(shù),當(dāng)旋轉(zhuǎn)一周完成后,根據(jù)實(shí)際中斷次數(shù)與預(yù)設(shè)的N比較,根據(jù)比較結(jié)果,在外部中斷處理程序中對T0的初設(shè)值進(jìn)行修正,直到定時器T0的中斷次數(shù)達(dá)到N為止。

  整個調(diào)節(jié)過程是動態(tài)的,程序中并不需要知道旋轉(zhuǎn)一周的具體時間值。

  一般在中斷處里程序里應(yīng)盡量簡化運(yùn)算,減少程序代碼量。我這里巧妙的使用了這樣一個修正值:

  D=D+(S-N)*2;

  其中N為預(yù)設(shè)的固定值。

  當(dāng)S>N時,修正值D增大,使定時器T0的時間值增大,隨之N值減小。

  當(dāng)S時,修正值D減小,使定時器T0的時間值減小,隨之N值增大。

  當(dāng)S=N時,修正值不產(chǎn)生變化。

  程序程序片段如下:

  /*外部中斷0處理函數(shù)*/

  void intersvr0(void) interrupt 0 using 1

  {

  D=D+(S-N)*2; //修正值

  Pt=600+D; //得到定時器T0的初設(shè)值

  S=0; //計(jì)數(shù)器清零,將重新計(jì)數(shù)

  }

  /*定時中斷0處理函數(shù)*/

  void timer0(void) interrupt 1 using 1

  {

  TH0=-Pt/256;TL0=-Pt%256; //設(shè)置定時器T0的初設(shè)值

  S++; //計(jì)數(shù)

  }

?

非常好我支持^.^

(165) 93.2%

不好我反對

(12) 6.8%

( 發(fā)表人:diyfans )

      發(fā)表評論

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

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

      ?
      试玩百家乐官网代理| 立博开户| 新东方百家乐官网的玩法技巧和规则 | 大佬百家乐官网娱乐城| 光泽县| 老虎百家乐官网的玩法技巧和规则 | 微信百家乐官网群二维码| 网上真钱赌博网站| 老虎机破解方法| 百家乐投注心态| 365体育投注| 赌场百家乐信誉| 瑞士百家乐官网的玩法技巧和规则 | 威尼斯人娱乐平台赌| 六合彩百家乐有什么平码| 网络百家乐官网骗局| 盈丰会| 威尼斯人娱乐场开户注册| 百家乐庄家优势| 总格24名人| 盈乐博娱乐城| 免费百家乐缩水工具| 金赞百家乐官网的玩法技巧和规则 | 众发国际娱乐| 骰子百家乐的玩法技巧和规则 | 澳门百家乐官网有赢钱的吗| 百乐坊百家乐游戏| 百家乐官网翻天qvod粤语| 胶南市| 潜江市| 本溪棋牌娱乐网| 威尼斯人娱乐平台注册| 闲和庄百家乐娱乐城| 狮威百家乐赌场娱乐网规则| 噢门百家乐玩的技巧| 百家乐官网真人游戏| 唐人街百家乐官网的玩法技巧和规则 | 利高网上娱乐| 贵港市| 百家乐官网软件辅助| 百家乐官网注册开户送彩金|