音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

做個漢字庫的點陣任意重新排序程序,以適合各種LCM

作者:汽車電子 欄目:單片機
做個漢字庫的點陣任意重新排序程序,以適合各種LCM
   很多時候,漢字庫的字模點陣排列與LCM的點陣排列并不一一對應(yīng),需要重新排序點陣字模才能顯示漢字。這往往要做個轉(zhuǎn)換子程序進行點陣字模的排序轉(zhuǎn)換。
   在嵌入式系統(tǒng)中,如果一個240*128的LCM,顯示整屏漢字需3840個字節(jié),如果每個字節(jié)都進行一次點陣字模重新排序,要時行3840次轉(zhuǎn)換,非常浪費機時。
   現(xiàn)有的,能在網(wǎng)上搜索的字模程序,都沒有任意排序的功能。
   由此想到,把整個國標字庫重新排序之后,再固化到嵌入式中,這樣就不用再寫點陣字模重新排序的子程序了,更大好處是:不用每個字都轉(zhuǎn)換,節(jié)省機時。

   各位有何高見?請賜教!
   

* - 本貼最后修改時間:2005-12-17 18:58:46 修改者:汽車電子

2樓: >>參與討論
lxb_gd
me
what is problom?

3樓: >>參與討論
汽車電子
有什么比較好的算法呢?
 

* - 本貼最后修改時間:2005-12-17 19:19:07 修改者:汽車電子

4樓: >>參與討論
dengm
花1個小時用VB寫一個就是了
把輸出的格式要求貼出來,我給寫一個



* - 本貼最后修改時間:2005-12-17 20:06:10 修改者:dengm

5樓: >>參與討論
汽車電子
dengm,非常感謝!
   連續(xù)輸入的32字節(jié)的256個Bit在LCM的顯示位置如下圖所示




6樓: >>參與討論
guorock
樓主,這個其實很簡單的!
就是行列的變換嗎!

漢字字庫256K,但標準的是按行進行掃描的,從左到右。

用VC編寫個程序就能搞定的,然后將此字庫燒進外部256K FLASH,用的時候調(diào)用即可!

7樓: >>參與討論
hotpower
只能自己編轉(zhuǎn)換程序了,這個不暈人的
 
8樓: >>參與討論
xwj
根本不用這么麻煩啊,現(xiàn)在很多字模軟件都能轉(zhuǎn)換的
比如HZDotReader、ZimoIII等,不過要輸出全字庫的話大多要注冊

找個橫向字庫文件也行

9樓: >>參與討論
汽車電子
謝謝各位。昨晚已經(jīng)做好了,不過只是對某型號的LCM
   要任意點陣轉(zhuǎn)換的的程序,以后再說吧(網(wǎng)上找的不能任意,只能按一定規(guī)律)
   即是任意轉(zhuǎn)換,那就沒規(guī)律了,每個漢字的字模轉(zhuǎn)換要進行256次操作(暫且為16*16),不過這交給PC來轉(zhuǎn)換,執(zhí)行時間稍長些也沒所謂了。

* - 本貼最后修改時間:2005-12-18 7:48:11 修改者:汽車電子

10樓: >>參與討論
dengm
VB6 16*16 字庫生成軟件源代碼。剛好用了一個小時
REM ******DENG M. **** 2005-12-18  GuangZhou *****
rem GB2312-80   16 * 16 宋體
rem  建立Command控件:Command1
REM  ===========================>>>> C:\HZK16.BIN

Private Sub Form_Load()
   Me.Width = 8000
   Me.Height = 6000
   Me.FontName = "宋體"     '** 可用其他windows字體
   Me.ScaleMode = 3
   Me.FontSize = 100
   Me.FontSize = 1600! / Me.TextWidth("啊")  '1600=16*100
   With Command1
     .Move 100, 100, 300, 50
     .Caption = "GB2312-80(16*16) 到 C:\HZK16.BIN"
     Me.Caption = .Caption
   End With
End Sub

Private Sub Command1_Click()
  Dim C$, I%, J%, BK&, II%, JJ%, IP%, B(31) As Byte, K%, Q%, W%

  C$ = "C:\HZK16.BIN"
  Open C$ For OUTPUT As #1
  CLOSE #1
  Open C$ For Binary As #1
    
  For Q = 1 To 9
    For W = 1 To 94
      GoSub OUT2FILE
    Next W
  Next Q
  For Q = 16 To 87
    For W = 1 To 94
      GoSub OUT2FILE
    Next W
  Next Q
  
  CLOSE #1
  Exit Sub

OUT2FILE:
  Me.Cls
  BK = Me.Point(10, 10)
  Me.CurrentX = 10
  Me.CurrentY = 10
  C$ = Chr((&HA0A0& + Q * 256 + W) And &HFFFF)
  Me.Print C$;
  IP = 0
  
  For JJ = 25 To 17 Step -8
    For I = 10 To 25
      K = 0
      For J = JJ To JJ - 7 Step -1
        K = IIF(Me.Point(I, J) <> BK, K = K + K + 1, K = K + K)
      Next J
      B(IP) = K
      IP = IP + 1
    Next I
  Next JJ
  Put #1, , B
  DoEvents
  Return

End Sub


* - 本貼最后修改時間:2005-12-18 11:19:36 修改者:dengm

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
如何從三相電源中獲得單片機的供電電壓?
電視機一遇到亮度比較高的畫面,伴音就有嗤嗤的雜音是怎么回事?
cpu與快速ram兼容嗎?
請問S1D133050A和SED1335可以替換嗎,哪為可以給我個原理圖
請推薦一款容量為8M(字節(jié))或更多的FLASH MEMORY
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號