久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 16×16點陣漢字橫移方法(附代碼) [打印本頁]

作者: dfyy8888    時間: 2015-1-14 23:55
標(biāo)題: 16×16點陣漢字橫移方法(附代碼)
本帖最后由 dfyy8888 于 2015-1-18 17:35 編輯
  1. <p>//matrix.h(字模數(shù)組文件)</p><p>//使用zimoV2.2.exe取模,因為是橫向移動字幕,所以要縱向取模。</p><p>//在zimoV2.2.exe里面可以一次性取出所有字符的字模數(shù)據(jù),不用做任何修改,粘貼到數(shù)組即可使用</p><p>//可以單獨做一個頭文件,字符數(shù)不限,只要你單片機rom夠大^_^</p><p>
  2. unsigned char code matrix[]={
  3. /*--  文字:  [空字符]  --*/
  4. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  5. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  6. ////////////////////////////////////////////////////////////////////////////////

  7. /*--  文字:  《  --*/
  8. /*--  宋體12;  此字體下對應(yīng)的點陣為:寬x高=16x16   --*/
  9. 0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x09,0x12,0x24,0x48,0x90,0x20,0x40,0x00,0x00,
  10. 0x00,0x00,0x00,0x00,0x00,0x80,0x40,0x20,0x90,0x48,0x24,0x12,0x08,0x04,0x00,0x00,

  11. /*--  文字:  三  --*/
  12. /*--  宋體12;  此字體下對應(yīng)的點陣為:寬x高=16x16   --*/
  13. 0x00,0x20,0x21,0x21,0x21,0x21,0x21,0x21,0x21,0x21,0x21,0x21,0x21,0x20,0x00,0x00,
  14. 0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00,

  15. /*--  文字:  字  --*/
  16. /*--  宋體12;  此字體下對應(yīng)的點陣為:寬x高=16x16   --*/
  17. 0x08,0x30,0x20,0x24,0x24,0x24,0xA4,0x64,0x25,0x26,0x24,0x20,0x20,0x28,0x30,0x00,
  18. 0x40,0x40,0x40,0x40,0x40,0x42,0x41,0xFE,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,

  19. /*--  文字:  經(jīng)  --*/
  20. /*--  宋體12;  此字體下對應(yīng)的點陣為:寬x高=16x16   --*/
  21. 0x04,0x0C,0x35,0xC6,0x04,0x18,0x01,0x41,0x42,0x44,0x48,0x58,0x64,0x42,0x01,0x00,
  22. 0x44,0xE6,0x44,0x48,0x48,0x48,0x02,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x02,0x00,

  23. /*--  文字:  》  --*/
  24. /*--  宋體12;  此字體下對應(yīng)的點陣為:寬x高=16x16   --*/
  25. 0x00,0x00,0x40,0x20,0x90,0x48,0x24,0x12,0x09,0x04,0x02,0x01,0x00,0x00,0x00,0x00,
  26. 0x00,0x00,0x04,0x08,0x12,0x24,0x48,0x90,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,</p><p>
  27. ////////////////////////////////////////////////////////////////////////////////
  28. /*--  文字:  [空字符]  --*/
  29. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  30. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
  31. };


  32. /********************************************************************/

  33. //字幕橫向移動程序,需要改內(nèi)容時請修改matrix.h文件的字模數(shù)據(jù)即可。
  34. #include<reg51.h>
  35. #include<intrins.h>
  36. #include"matrix.h"    //字模存放頭文件

  37. sbit SDI = P3^4;
  38. sbit SCK = P3^6;
  39. sbit LCK = P3^5;

  40. void HC595_Send(unsigned char dat0,unsigned char dat1,unsigned char dat2,unsigned char dat3);

  41. main()
  42. {
  43.         unsigned char dat0, dat1, dat2, dat3, j, k, n=0;
  44.         unsigned int neg, tmp, i;
  45.         neg = 0x7FFF;
  46.         while(1)
  47.         {
  48.                 for(i=0; i<(sizeof(matrix)-31);i++)
  49.                 {
  50.                         for(k=4; k>0; k--)
  51.                         {
  52.                                 for(j=0; j<16; j++)
  53.                                 {         
  54.                                         tmp = _iror_(neg,j);
  55.                                         dat0 = (unsigned char)(tmp);
  56.                                         dat1 = (unsigned char)(tmp>>8);
  57.                                         if((i+n)/16%2!=0) n+=16;
  58.                                         dat3 = (unsigned char)(*(matrix+i+n));
  59.                                         dat2 = (unsigned char)(*(matrix+i+n+16));
  60.                                         HC595_Send(dat0,dat1,dat2,dat3);
  61.                                         n++;
  62.                                 }
  63.                                 n=0;
  64.                         }
  65.                         if(i/16%2!=0) i+=16;
  66.                 }
  67.         }
  68. }
  69. //下面這個子函數(shù)如果把形參改成指針(即數(shù)組),速度會很慢,所以把四個for循環(huán)都寫出來了
  70. void HC595_Send(unsigned char dat0,unsigned char dat1,unsigned char dat2,unsigned char dat3)
  71. {
  72.         unsigned char i;
  73.         SCK = 1;
  74.         LCK = 1;
  75.         for(i=0;i<8;i++)
  76.         {
  77.                 SDI = dat0&0x01;
  78.                 dat0 >>= 1;
  79.                 SCK = 0;
  80.                 SCK = 1;
  81.         }         
  82.         for(i=0;i<8;i++)
  83.         {
  84.                 SDI = dat1&0x01;
  85.                 dat1 >>= 1;
  86.                 SCK = 0;
  87.                 SCK = 1;
  88.         }
  89.         for(i=0;i<8;i++)
  90.         {
  91.                 SDI = dat2&0x01;
  92.                 dat2 >>= 1;
  93.                 SCK = 0;
  94.                 SCK = 1;
  95.         }
  96.         for(i=0;i<8;i++)
  97.         {
  98.                 SDI = dat3&0x01;
  99.                 dat3 >>= 1;
  100.                 SCK = 0;
  101.                 SCK = 1;
  102.         }
  103.         LCK = 0;
  104.         LCK = 1;
  105. }</p>
復(fù)制代碼
附:電路圖(采用4片74HC595,橫列各兩片,JP595短路帽短接)

未標(biāo)題-3.jpg (99.58 KB, 下載次數(shù): 286)

未標(biāo)題-3.jpg

未標(biāo)題-2.jpg (250.98 KB, 下載次數(shù): 312)

未標(biāo)題-2.jpg

作者: dfyy8888    時間: 2015-1-14 23:57
第一次在這兒發(fā)帖,有點亂
作者: xiaoliu    時間: 2015-1-15 12:08
樓主太謙虛了,我覺得很好,圖文并茂的,而且程序的結(jié)構(gòu)很清晰。是我們學(xué)習(xí)的理想資料。有時間的話我把你的電路做成硬件來測試一下
作者: 26573687    時間: 2015-1-18 00:18
嗯,好東西,學(xué)校一個比賽就是做這種類似的
作者: ywrong    時間: 2015-2-18 22:52
學(xué)習(xí)  
作者: hlywhp    時間: 2015-4-28 17:09
這個很有用
作者: hawklm    時間: 2015-5-4 17:11
這個不錯,只是只有16*16的嗎?
作者: 黃小豆    時間: 2015-5-5 12:10
新人回帖賺幣。
作者: fontex    時間: 2015-5-7 13:03
好東西,謝謝!
作者: 右手寫愛    時間: 2015-5-9 09:35
樓主好人!
作者: qwe38771    時間: 2015-6-10 20:14
謝謝樓主,我最近在做這樣的課設(shè)
。萬分感謝
作者: 1398480844    時間: 2015-7-31 11:44
為什么我的顯示是亂碼?
作者: 奮斗小范    時間: 2015-8-1 20:29
在學(xué)習(xí)光立方程序
作者: 靜風(fēng)    時間: 2016-9-25 20:43
為什么會有l(wèi)ed亂跳的現(xiàn)象
作者: 天行健航行    時間: 2017-6-1 16:02
剛好課設(shè)需要,學(xué)習(xí)下,謝謝樓主
作者: 長腿滿    時間: 2017-6-17 20:05
這個有仿真程序嗎
作者: zzqy    時間: 2017-12-24 14:24
感謝樓主分享
作者: xdwdazhao    時間: 2020-3-11 20:33
謝謝樓主分享
作者: az12580    時間: 2020-3-12 00:18
挺完整的,如果能補充595的使用方法和8x8點陣如何連接成更大的點陣就好了
作者: harveykung    時間: 2023-12-19 23:40
沒想到快9年了,還是那么經(jīng)典




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 搞av.com| 一区二区高清 | 国产精品久久久久久久岛一牛影视 | 欧美成人猛片aaaaaaa | 国产精品日日做人人爱 | 亚洲第一视频网 | 国产亚洲精品久久久优势 | 国产无人区一区二区三区 | 中文字幕在线观看一区 | 中日韩欧美一级片 | 337p日本欧洲亚洲大胆 | 亚洲一区二区三区免费在线观看 | 91av视频 | 欧美色综合一区二区三区 | 国产精品福利久久久 | 韩日av片 | 久国产精品 | 免费精品 | 一级做a爰片性色毛片 | 天堂资源视频 | 国产成人精品久久二区二区91 | 国产亚洲人成a在线v网站 | 国产农村一级片 | 欧美久久久电影 | 午夜在线免费观看 | 操人网 | 免费一区 | 久久网亚洲 | 日韩一区二区福利视频 | 欧美一级欧美三级在线观看 | 国内自拍偷拍 | 一级毛片在线看 | 国产精品久久久久久av公交车 | 九九免费观看视频 | 亚洲欧美日韩在线 | 午夜免费观看体验区 | 国产亚洲精品久久久久动 | 久久久久国产一区二区三区 | 国产免国产免费 | 精品国产乱码久久久久久蜜退臀 | 国产精品久久精品 |