OpenEdv-开源电子网

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

不懂“得到字体一个字符对应点阵集所占的字节数”

[复制链接]

32

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
385
金钱
385
注册时间
2011-11-21
在线时间
32 小时
发表于 2016-2-17 16:56:05 | 显示全部楼层 |阅读模式
1金钱
在学到oled有几个问题不明白,(1)“csize”是得出的思路是什么?我按照函数代进去算了下——如果是选12,那么:12/8+((12%8)? 1:0)*(12/2);csize=1+1*6;如果是选16,那么:              16/8+((16%8)?1:0)*(16/2);csize=2+0*8。不知道我算的对不对,望指点
(2)(temp&0x80)OLED_DrawPoint(x,y,mode);temp&0x80怎么就能判断置1还置0?
(3)从        temp<<=1;到break这一段程序我都不明白?

QQ截图20160217163911.png

最佳答案

查看完整内容[请看2#楼]

这有什么不懂的,给你讲讲吧。 csize = (size/8 + ((size%8)?1:0) ) * (size/2) ; 首先你得知道一个字符在液晶中取模显示是怎么回事,例如16号的字符型,那就是说它的纵向是16个点,横向是16/2=8个点。所以代码后面的 size/2 就是这个意思。(注意这是ASCII码才这样,中文不是); 又要注意取模规则,必须是一个字节为一个单位,也就是8位。像你这个函数里面的意思是,假设size=16号的字体,那么一列由16个点组成,那么需要2个 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

20

主题

468

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1684
金钱
1684
注册时间
2014-2-25
在线时间
230 小时
发表于 2016-2-17 16:56:06 | 显示全部楼层
这有什么不懂的,给你讲讲吧。
csize = (size/8 + ((size%8)?1:0) ) * (size/2) ;
首先你得知道一个字符在液晶中取模显示是怎么回事,例如16号的字符型,那就是说它的纵向是16个点,横向是16/2=8个点。所以代码后面的 size/2 就是这个意思。(注意这是ASCII码才这样,中文不是);   又要注意取模规则,必须是一个字节为一个单位,也就是8位。像你这个函数里面的意思是,假设size=16号的字体,那么一列由16个点组成,那么需要2个uhcar型的数据组成一列,一共需要8列构成一个字符。
注意上面假设的是size=16的情况,刚好是8的整数倍,那如果size是12呢,那么一列就是12个点。所以还是需要2的uchar的数据才能够保存取模的数据。所以代码的前半部分 就是 12/8 + 1 = 2 个字节了。懂了?
回复

使用道具 举报

7

主题

185

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2729
金钱
2729
注册时间
2015-12-27
在线时间
469 小时
发表于 2016-2-17 20:54:14 | 显示全部楼层
你首先先看一下原子的这个字体的取模方式吧,每个字节的每个位代表液晶上的一个像素点,所以temp&0x80是判断temp字节的最高位是1还是0。根据判断,每次写入一个点。
回复

使用道具 举报

1

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
449
金钱
449
注册时间
2015-12-26
在线时间
269 小时
发表于 2016-2-17 23:23:59 | 显示全部楼层
2e69281f9b9253b2e7b2a8fa99503b88_298.png
回复

使用道具 举报

32

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
385
金钱
385
注册时间
2011-11-21
在线时间
32 小时
 楼主| 发表于 2016-2-22 14:14:56 | 显示全部楼层
谢谢,有点头绪了
回复

使用道具 举报

4

主题

14

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2018-4-24
在线时间
8 小时
发表于 2018-4-28 13:45:50 | 显示全部楼层
那么中文的怎么写呢?求教
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-7 16:02

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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