OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8395|回复: 13

9320液晶显示汉字问题

[复制链接]

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
发表于 2013-4-20 14:01:29 | 显示全部楼层 |阅读模式
本人想用ILI9320驱动液晶显示汉字 有一种方法比较简单 就是制作出汉字字模 例如:制作"佳"的字模 写在数组中 例如 用A的ASCII代替 写LCD_Show("A");就可以将汉字显示出来 但是 现在我想实现 写LCD_Show("佳");就能把"佳"字显示出来 谁知道怎么实现 求指导
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

119

帖子

0

精华

初级会员

Rank: 2

积分
169
金钱
169
注册时间
2013-4-6
在线时间
3 小时
发表于 2013-4-20 14:10:18 | 显示全部楼层
你都已经说了不是吗?

只有两种方法 , 一种把所有汉字一次取出透过SPI放到外部FLASH内存中, 但16x16全字库就要1M bytes左右.

另一种办法,  使用 易木雨.. 或其它取模工具, 把想到的字一次转出来, 然后每个汉字字模必须另外加上汉字内码才可能索引到. 

这种方法字库大小就会小非常多.    这两种方法都是使用 "汉字内码" 定位,  取出对应的字模资料来显示.

如果汉字用的更少了.   还可以把汉字当成照片,  那么呼叫个贴图函式库就搞定了.    但这种就不是内码显示方式.
回复 支持 反对

使用道具 举报

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
 楼主| 发表于 2013-4-20 14:38:47 | 显示全部楼层
回复【2楼】liuje:
---------------------------------
你好 谢谢你的回复 我以为是用unicode码呢  我写了这么一句 函数名("你"); 经仿真 传递过去的并不是"你"的unicode 码,是不是我丢了什么东西 还是你说的汉字内码根本就不是unicode 码 
另外 汉字的内码怎么得到 我有汉字转unicode的软件
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2013-4-20 15:16:12 | 显示全部楼层
回复【3楼】langwanglx:
---------------------------------
默认是GBK码.
内码可以通过专门的软件得到,比如这个:中英文字符编码查询_V1.1
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
 楼主| 发表于 2013-4-20 15:37:00 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
恩  谢谢你 我知道了   起始内码和GBK码是一回事 对吧 只是名字不同而已 对不对 我在百度上查的 有的这么说 内码和GBK码是一回事
回复 支持 反对

使用道具 举报

4

主题

119

帖子

0

精华

初级会员

Rank: 2

积分
169
金钱
169
注册时间
2013-4-6
在线时间
3 小时
发表于 2013-4-20 15:42:49 | 显示全部楼层
"内码" 按字义就是顺序号码,  GBK只是一种汉字编码的规格方式.   还有很多种的...   UNICODE万国码, 已经是最新的主流文字编码格式......

字符集

① GB2313字符集,收入汉字6763个,符号715个,总计7478个字符,这是大陆普遍使用的简体字符集。楷体-GB2313、仿宋-GB2313、华文行楷等市面上绝大多数字体支持显示这个字符集,亦是大多数输入法所采用的字符集。市面上绝大多数所谓的繁体字体,其实采用的是GB-2313字符集简体字的编码,用字体显示为繁体字,而不是直接用GBK字符集中繁体字的编码,错误百出。
② BIG-5字符集,收入13060个繁体汉字,808个符号,总计13868个字符,普遍使用于台湾、香港等地区。台湾教育部标准宋体楷体等港台大多数字体支持这个字符集的显示。
③ GBK字符集,又称大字符集(GB=GuóBiāo国标,K=扩展),包含以上两种字符集汉字,收入21003个汉字,882个符号,共计21885个字符,包括了中日韩(CJK)统一汉字20902个、扩展A集(CJK Ext-A) 中的汉字52个。Windows 95\98简体中文版就带有这个GBK.txt文件。宋体、隶书、黑体、幼圆、华文中宋、华文细黑、华文楷体、标楷体(DFKai-SB)、Arial Unicode MS、MingLiU、PMingLiU等字体支持显示这个字符集。微软拼音输入法2003、全拼、紫光拼音等输入法,能够录入如镕镕炁夬喆嚞姤赟赟?龑昳堃慜靕臹等GBK简繁体汉字。
BIG-5 (繁体中文)与GB-2313 (简体中文),编码不相兼容,字符在不同的操作系统中便产生乱码。文本文字的简体与繁体(文字及编码)之间的转换,可用BabelPad、TextPro或Convertz之类的转码软件来解决。若是程序,Windows XP操作系统,可用Microsoft AppLocale Utility 1.0解决;Windows 2000的操作系统,大概只有用:中文之星、四通利方、南极星、金山快译之类的转码软件方能解决了。
④ GB18030字符集,包含GBK字符集、CJK Ext-A 全部6582个汉字,共计27533个汉字。宋体-18030、方正楷体(FZKai-Z03)、书同文楷体(MS Song)宋体(ht_cjk+)、香港华康标准宋体(DFSongStd)、华康香港标准楷体、CERG Chinese Font、韩国New Gulim,以及微软Windows Vista操作系统提供的宋黑楷仿宋等字体亦支持这个字符集的显示。Windows 98支持这个字符集,以下的字符集则不支持。手写输入法逍遥笔4.0版支持GB18030字符集及方正超大字符集汉字的录入。
⑤ 方正超大字符集,包含GB18030字符集、CJK Ext-B中的36862个汉字,共计64395个汉字。宋体-方正超大字符集支持这个字符集的显示。Microsoft Office XP或2003简体中文版就自带有这个字体。Windows 2000的操作系统需安装超大字符集支持包“Surrogate更新”。
⑥ ISO/IEC 10646 / Unicode字符集,这是全球可以共享的编码字符集,两者相互兼融,涵盖了世界上主要语文的字符,其中包括简繁体汉字,计有:CJK统一汉字20902个,CJK Ext-A 6582个,Ext-B 42711个,共计70195个汉字。SimSun-ExtB(宋体)、MingLiU-ExtB(细明体)能显示全部Ext-B汉字。至今尚无单独一款字体能够显示全部70195个汉字,但可用海峰五笔、新概念五笔、仓颉输入法世纪版、新版的微软新注音、仓颉输入法 6.0 版(单码功能)等输入法录入。Ext-C还有2万多个汉字。详情请参阅香港中文大学网站、马来西亚仓颉之友网站、福建陈清钰个人网站。
⑦ 汉字构形数据库2.3版,内含楷书字形60082个、小篆11100个、楚系简帛文字2627个、金文3459个、甲骨文177个、异体字12768组。可以安装该程序,亦可以解压后使用其中的字体文件,对于整理某些古代文献十分有用。
回复 支持 反对

使用道具 举报

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
 楼主| 发表于 2013-4-20 16:03:29 | 显示全部楼层
谢谢
回复 支持 反对

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
12017
金钱
12017
注册时间
2013-3-8
在线时间
1280 小时
发表于 2013-4-20 22:46:54 | 显示全部楼层
提取字模如下,直接包含汉字内码,可实现直接输入汉字write_lcd8x16(86,0,"STM32F103ZE开发板实验",charColor,bkColor);:

以下是部分生成的汉字字库结构:
// ------------------  汉字字模的数据结构定义 ------------------------ //
typedef struct                  // 汉字字模数据结构
{
       signed char Index[2];               // 汉字内码索引
       char Msk[32];                       // 点阵码数据
}typFNT_GB16;

/////////////////////////////////////////////////////////////////////////
// 汉字字模表                                                          //
// 汉字库: 宋体16.dot 纵向取模下高位,数据排列:从左到右从上到下         //
/////////////////////////////////////////////////////////////////////////
typFNT_GB16 const GB_16[] =          // 数据表
{
"开", 0x80,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,
      0x82,0x82,0xFE,0x82,0x83,0xC2,0x80,0x00,
      0x00,0x80,0x40,0x30,0x0F,0x00,0x00,0x00,
      0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,

"发", 0x00,0x10,0x18,0x16,0x10,0x90,0xF0,0x9F,
      0x90,0x90,0x92,0x94,0x10,0x18,0x10,0x00,
      0x40,0x20,0x90,0x88,0x46,0x41,0x23,0x14,
      0x08,0x14,0x22,0x21,0x40,0xC0,0x40,0x00,

"板", 0x10,0x10,0xD0,0xFF,0x90,0x10,0x00,0xFC,
      0x24,0xA4,0x24,0x22,0xA3,0x62,0x00,0x00,
      0x04,0x03,0x00,0xFF,0x40,0x21,0x18,0x47,
      0x20,0x13,0x0C,0x16,0x21,0x60,0x20,0x00,

"实", 0x10,0x0C,0x04,0x44,0x8C,0x94,0x35,0x06,
      0xF4,0x04,0x04,0x04,0x04,0x14,0x0C,0x00,
      0x02,0x82,0x82,0x42,0x42,0x23,0x12,0x0E,
      0x03,0x0A,0x12,0x22,0x42,0xC3,0x02,0x00,

"验", 0x02,0xFA,0x02,0x02,0xFF,0x42,0x20,0x50,
      0x4C,0x43,0x4C,0x50,0x20,0x60,0x20,0x00,
      0x10,0x31,0x11,0x49,0x89,0x7F,0x42,0x5C,
      0x40,0x4F,0x60,0x58,0x47,0x60,0x40,0x00,


lcd汉字取模软件.rar

2.89 MB, 下载次数: 33058

回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2013-3-30
在线时间
0 小时
发表于 2013-4-21 23:01:09 | 显示全部楼层
顶LS。
回复 支持 反对

使用道具 举报

71

主题

183

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
494
金钱
494
注册时间
2013-1-29
在线时间
1 小时
 楼主| 发表于 2013-4-22 09:59:20 | 显示全部楼层
非常感谢分享 !!
回复 支持 反对

使用道具 举报

3

主题

6

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2013-12-12
在线时间
1 小时
发表于 2014-7-27 11:39:06 | 显示全部楼层
回复【8楼】augustedward:
---------------------------------
write_lcd8x16(86,0,"STM32F103ZE开发板实验",charColor,bkColor);你的这个函数是怎么写的?能贴出来么?
回复 支持 反对

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
12017
金钱
12017
注册时间
2013-3-8
在线时间
1280 小时
发表于 2014-7-30 13:52:51 | 显示全部楼层
回复【11楼】dongjiren2009:
---------------------------------
我是用51写的,发上来你看着移植到STM32上就行了。应该比较好移植。
回复 支持 反对

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
12017
金钱
12017
注册时间
2013-3-8
在线时间
1280 小时
发表于 2014-7-30 13:57:45 | 显示全部楼层
有要的移植一下就可以了,另文件里有protues软件仿真图形。

液晶可直接输入汉字识别.rar

641.2 KB, 下载次数: 1042

回复 支持 反对

使用道具 举报

8

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
116
金钱
116
注册时间
2014-2-25
在线时间
16 小时
发表于 2014-8-27 16:18:41 | 显示全部楼层
楼上的这是一条思路呀
ST华南代理,做新项目的网友,如果有用到ST的单片机可向我申请免费样品,QQ:945689011
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-6 21:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表