91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

軟件設計 - 創(chuàng)意設計之DIY搖擺LED時鐘

2012年03月20日 10:27 本站整理 作者:秩名 用戶評論(0
三. 軟件設計

  1. 搖棒的啟動

  通過P3.6和P3.7輸出驅(qū)動音圈電機的信號, 由于沒有設置檢測搖棒的傳感器,時間間隔只能跟據(jù)實驗確定。在調(diào)試中發(fā)現(xiàn),當驅(qū)動搖棒的信號轉(zhuǎn)換加速到一定的時候,從靜止狀態(tài)轉(zhuǎn)到正常擺動狀態(tài)發(fā)生困難,因此需要由慢到快的驅(qū)動過程。由下面的程序段實現(xiàn)。

  do {

  mm--;

  DelayMs(120+mm*5); //逐漸縮短延時間

  put1=~put1; put2=~put2; //轉(zhuǎn)換輸出口電平狀態(tài)

  }while(mm>0);

  2. 秒閃現(xiàn)的實現(xiàn)

  數(shù)字和字符的閃現(xiàn)是通過變量Ms和數(shù)組w[]實現(xiàn)的,如需要七位字符中的間的第4位閃現(xiàn),則w[3]=1。這是通過全局變量Ms在void timer0(void)函數(shù)中每隔一秒改變一次狀態(tài)(0或1),在void timer1(void)函數(shù)中的下列語句中實現(xiàn)。

  if((put1==1)&&(ii<7)&&(Ms*w[ii]==0)) P2=~ASCIIDOC[v[ii]*6+jj]; else P2=0xff;

  3. 校正顯示不均勻

  調(diào)試中發(fā)現(xiàn),顯示屏上的字符并不是一樣寬的,仔細分析是由于搖棒在運動中一直受力,使搖棒產(chǎn)生加速運動,這樣就需要在程序中加一校正因子,逐漸縮短顯示的時間段。具體是通過變量tt在函數(shù)void timer1(void)中實現(xiàn)的。

  4. 按鍵去抖程序

  按鍵的去抖采用軟件編程實現(xiàn),其方法是當檢測到按鍵的接口出現(xiàn)低電平后,隔一段時間再檢測,如還是低電平,則確認為有效,否則無效。具體的程序是通過函數(shù)unsigned char ChKey(bit Key)實現(xiàn)。

  5. 顯示同步

  調(diào)試時要根據(jù)實際情況確定Ti的值,保證顯示正常。

  6.預留的部分功能

  提供的程序除提供了一個完整的時鐘程序外,還預留了顯示七個字符功能(見圖12),只是主程序要作一些修改。

  

?

  圖12

  

非常好我支持^.^

(44) 97.8%

不好我反對

(1) 2.2%

( 發(fā)表人:diyfans )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

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

      ?