<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > PIC單片機利用視覺暫留現(xiàn)象顯示字符

          PIC單片機利用視覺暫留現(xiàn)象顯示字符

          作者: 時間:2016-11-20 來源:網(wǎng)絡(luò) 收藏
          Persistance of Vision (PoV), 即視覺暫留現(xiàn)象, 人眼在觀察景物時,光信號傳人大腦神經(jīng),需經(jīng)過一段短暫的時間,光的作用結(jié)束后,視覺形象并不立即消失,這種殘留的視覺稱“后像”,視覺的這一現(xiàn)象則被稱為“視覺暫留”。其具體應(yīng)用是電影的拍攝和放映。原因是由視神經(jīng)的反應(yīng)速度造成的.其時值是二十四分之一秒。是動畫、電影等視覺媒體形成和傳播的根據(jù)。

          利用PoV,還可以制作電子小玩意,比如利用幾個LED,就能顯示圖案,字符等。

          本文引用地址:http://www.ex-cimer.com/article/201611/318658.htm

          下面是一個利用PoV顯示時鐘的例子:

          下面是一段利用PoV顯示字符PIC單片機程序,利用CCS C編譯器編譯:

          主程序文件: pov.c





          #fuses HS,NOWDT,NOPROTECT,NOLVP /* DONNOT use WDT */

          /* Port D drives the LEDs */


          #use delay(clock = 4000000) /* the crystal frequency is 4.000 MHz*/

          void display_string(int8 *str)

















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















          set_tris_d(0x00); /* set portD to output mode */

          while(1)





          字模頭文件: font.h




          #define FONT_WIDTH 5

          /*








          void get_font_matrix(int8 ascii_code, int8 *buf);

          字模c文件: font.c







          const int8 font_blank_table[FONT_BLANK_TABLE_SIZE] = {



          const int8 font_number_table[FONT_NUMBER_TABLE_SIZE] = {












          const int8 font_uletter_table[FONT_UPPER_CASE_TABLE_SIZE] = {




























          const int8 font_lletter_table[FONT_LOWER_CASE_TABLE_SIZE] = {




























          void get_font_matrix(int8 ascii_code, int8 *buf)




          if(ascii_code == )



























          這段程序會在PIC單片機的Port D點亮一排LED,用手晃動這排LED,就會看到“china”字樣。




          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();