找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 654|回復: 10
打印 上一主題 下一主題
收起左側(cè)

有人用過字庫芯片嗎?

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1109032 發(fā)表于 2025-4-30 02:18 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
字庫芯片,也就是給顯示屏生成點陣數(shù)據(jù)的芯片.
我最開始是使用pctolcd2002文字取模軟件,生成的點陣數(shù)據(jù)可以正常給顯示屏使用,顯示。

最近開始我想試試字庫芯片,用的是gt30l32s4w,但是發(fā)現(xiàn)這個芯片生成的點陣數(shù)據(jù)與文字取模軟件中的不一致,顯示屏也不能正常按照它的點陣數(shù)據(jù)來正常顯示,

比如GB2312,32*32的“中”字,文字取模軟件生成的是:
“000000000000000000800000008001000080010000800100008001000080010010800104F0FFFF0F3080010430800104308001043080010430800104308001043080010430800104F0FFFF07308001043080010C0080010000800100008001000080010000800100008001000080010000800100008001000080000000000000”

然后字庫芯片生成的是:
“00000000100000000C0400600E07FFF0070600600306006002260060002600600047FFE0C04600607080000038880030188FFFF8110C0030010C0030030C0030020C0030020FFFF0060C0030040C00300C0C00307C0C00300C0FFFF00C0C00300C0C00300C0C00300C0C00300C0C00300C0C07F00C0C00F0040C006000080040”

雖然說字庫芯片生成的數(shù)據(jù),與文檔上的一致,但是我不知道為什么與文字取模軟件生成的不一致,最重要的是我的顯示屏無法正常顯示它。
不知道是什么原因,有人知道嗎?非常感謝!


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

來自 2#
ID:1109032 發(fā)表于 2025-5-3 01:21 | 只看該作者
謝謝各位,是大小端的問題,還有源文件編碼格式不對,導致漢字機內(nèi)碼錯誤,然后就取到了錯誤的地址
回復

使用道具 舉報

板凳
ID:57657 發(fā)表于 2025-4-30 07:05 | 只看該作者
可能是解碼不正確,具體有照片才能知道是什么問題。
回復

使用道具 舉報

地板
ID:517951 發(fā)表于 2025-4-30 07:25 | 只看該作者
同一個字: 用字庫軟件用點陣 橫排列, 豎排列 ; 大端, 小端模式 等方式不同, 得到的字庫bin文件就是不同的.
回復

使用道具 舉報

5#
ID:77610 發(fā)表于 2025-4-30 08:02 | 只看該作者
這么晚還在熬夜搞開發(fā),向你學習
回復

使用道具 舉報

6#
ID:353115 發(fā)表于 2025-4-30 08:22 | 只看該作者
一般點陣就是橫向取模、縱向取模式,字節(jié)是否倒序,你可以打開一些取模軟件,看看它的取模式方式,再分別用這種方法來分析字庫芯片的點陣是什么方式
回復

使用道具 舉報

7#
ID:592807 發(fā)表于 2025-4-30 08:33 | 只看該作者
字模軟件可以橫向也可以豎向取模,你試試換個方向取模。
回復

使用道具 舉報

8#
ID:155507 發(fā)表于 2025-4-30 19:45 | 只看該作者
4.1.4 32x32 點陣 GB2312 漢字&字符  W-橫置橫排
參數(shù)說明:
GBCode表示漢字內(nèi)碼。
MSB 表示漢字內(nèi)碼GBCode 的高8bits。
LSB 表示漢字內(nèi)碼GBCode 的低8bits。
Address 表示漢字或ASCII字符點陣在芯片中的字節(jié)地址。
BaseAdd:說明點陣數(shù)據(jù)在字庫芯片中的起始地址。
計算方法:
BaseAdd=0XEDF00;
if(MSB >=0xA1 && MSB <= 0Xa9 && LSB >=0xA1)
Address =( (MSB - 0xA1) * 94 + (LSB - 0xA1))*128+ BaseAdd;
else if(MSB >=0xB0 && MSB <= 0xF7 && LSB >=0xA1)
Address = ((MSB - 0xB0) * 94 + (LSB - 0xA1)+ 846)*128+ BaseAdd;

回復

使用道具 舉報

9#
ID:1109032 發(fā)表于 2025-5-3 01:21 | 只看該作者
謝謝各位,已經(jīng)解決了。是大小端的問題,還有源文件編碼格式不對,導致漢字機內(nèi)碼錯誤,然后就取到了錯誤的地址
回復

使用道具 舉報

10#
ID:1109032 發(fā)表于 2025-5-3 01:21 | 只看該作者
謝謝各位,是大小端的問題,還有源文件編碼格式不對,導致漢字機內(nèi)碼錯誤,然后就取到了錯誤的地址
回復

使用道具 舉報

11#
ID:1146909 發(fā)表于 2025-5-6 16:59 | 只看該作者
可以試試STC的ISP軟件,里面有個字庫生成工具,支持常用幾種數(shù)碼管類型、圖片編輯等等,資料齊全。樓主可以看看。








回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表