OpenEdv-开源电子网

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

求高手注解下汉字显示程序,希望高手不要吝啬,原子一个人撑不起一片天

[复制链接]
头像被屏蔽

27

主题

61

帖子

2

精华

禁止发言

积分
518
金钱
518
注册时间
2011-1-10
在线时间
4 小时
发表于 2011-6-11 09:33:16 | 显示全部楼层 |阅读模式
签名被屏蔽
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2011-6-11 10:15:20 | 显示全部楼层
回复【楼主位】yaocp86:
---------------------------------
这个很容易理解的。
1,假如你有一支笔,但是不能连续写,只能一点一点的点,让你在LCD上显示汉字(就是点出一个汉字),你会怎么做?
2,假如这个汉字是16*16大小,你必须点多少下才能点出一个16*16的汉字?
3,假如规定你只能水平或者垂直点,你把一个方向上这些需要点的点(显示)和不需要点的点(不显示)用1和0表示,一个方向上组合起来,是不是可以用字节表示?
4,你知道为什么一个16*16的汉字,需要用32个字节来表示点阵?
5,12*12的汉字,又需要多少个字节?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 1 反对 0

使用道具 举报

28

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
461
金钱
461
注册时间
2013-10-18
在线时间
72 小时
发表于 2014-4-3 07:43:09 | 显示全部楼层
16*16/8=32
12*12/8=18
回复 支持 反对

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2014-4-3 08:44:42 | 显示全部楼层

typedef struct {                                                 /* 汉字字模数据结构             */
    unsigned char Index[2];                                             /* 汉字内码索引                 */
    unsigned char Msk[32];                                              /* 点阵码数据                   */
}FNT_GB16;
这个是结构体的定义。

下面是汉字数据区的定义:
const FNT_GB16 GBHZ_16[] = {
    "■",
    0x00,0x00,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,
    0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x7F,0xFC,0x00,0x00,0x00,0x00,
    
    "液",
    0x40,0x40,0x20,0x20,0x27,0xFE,0x09,0x20,0x89,0x20,0x52,0x7C,0x52,0x44,0x16,0xA8,
    0x2B,0x98,0x22,0x50,0xE2,0x20,0x22,0x30,0x22,0x50,0x22,0x88,0x23,0x0E,0x22,0x04,
    
    "晶",
    0x00,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x00,0x00,
    0x7E,0x7E,0x42,0x42,0x7E,0x7E,0x42,0x42,0x42,0x42,0x7E,0x7E,0x42,0x42,0x00,0x00,

    "刘",
    /*--  文字:  刘  --*/
    /*--  新宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
    0x10,0x04,0x08,0x04,0x04,0x04,0x7F,0xA4,0x01,0x24,0x21,0x24,0x12,0x24,0x0A,0x24,
    0x04,0x24,0x06,0x24,0x0A,0x24,0x11,0x04,0x21,0x84,0x41,0x14,0x80,0x08,0x00,0x00
}; 
一个汉字对应一个结构体 。
具体调用是这样的:
LCD_ShowString(620,250,"液晶",YELLOW,BLACK);

你多看下C语言里结构体的定义和应用就明白了。其实这里最重要的是指针。指针一直都是C语言的灵魂。

原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

4

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
497
金钱
497
注册时间
2022-4-4
在线时间
66 小时
发表于 2022-4-25 19:15:14 | 显示全部楼层
fanghuiopenedv 发表于 2014-4-3 08:44
typedef struct {    &nbsp ...

这个汉字转换你是怎么转换出来的
回复 支持 反对

使用道具 举报

13

主题

171

帖子

0

精华

高级会员

Rank: 4

积分
809
金钱
809
注册时间
2018-12-19
在线时间
166 小时
发表于 2022-4-26 12:57:54 | 显示全部楼层
vbgh 发表于 2022-4-25 19:15
这个汉字转换你是怎么转换出来的

有个软件,直接生成的
回复 支持 反对

使用道具 举报

4

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
497
金钱
497
注册时间
2022-4-4
在线时间
66 小时
发表于 2022-4-26 19:36:57 | 显示全部楼层
854278507 发表于 2022-4-26 12:57
有个软件,直接生成的

什么软件
回复 支持 反对

使用道具 举报

0

主题

451

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3515
金钱
3515
注册时间
2016-3-19
在线时间
847 小时
发表于 2022-4-27 08:45:56 | 显示全部楼层
正点原子 发表于 2011-6-11 10:15
回复【楼主位】yaocp86:
---------------------------------
这个很容易理解的。
1,假如你有一支笔,但是 ...

我喜欢这种答案

通俗易懂  恰到好处  
Nothing is impossible
回复 支持 反对

使用道具 举报

13

主题

171

帖子

0

精华

高级会员

Rank: 4

积分
809
金钱
809
注册时间
2018-12-19
在线时间
166 小时
发表于 2022-4-27 21:09:14 | 显示全部楼层

LcmZimo.exe
回复 支持 反对

使用道具 举报

31

主题

1953

帖子

3

精华

论坛元老

Rank: 8Rank: 8

积分
4462
金钱
4462
注册时间
2018-5-11
在线时间
932 小时
发表于 2022-4-29 16:04:45 | 显示全部楼层

取字模呀,
原子有专门的,
搜索一下就行了。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-27 08:47

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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