OpenEdv-开源电子网

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

字符编码

[复制链接]

72

主题

251

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2012-3-29
在线时间
7 小时
发表于 2013-6-7 14:25:57 | 显示全部楼层 |阅读模式

原子哥的字符编码是逐列,顺向(高位在前)


 

这个编码是从高位到低位 从左到右

其实就是横向有8位 竖向有12位 不知道为什么叫1206字体?怎么就是12个字节?

写的时候也是按编码来,先是最左边第一竖的第一位,然后第二位,所以Y++,X不变

当y=y+size 也就是12位都写完了。x++

就这样循环下去写完。


总感觉有点别扭为什么不橫的编码呢那样更好理解,汉字都是横着编码

我说怎么和别的一个代码一对比有点晕

是不是原子大哥有什么特殊考虑?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

72

主题

251

帖子

0

精华

高级会员

Rank: 4

积分
597
金钱
597
注册时间
2012-3-29
在线时间
7 小时
 楼主| 发表于 2013-6-7 14:56:46 | 显示全部楼层
原来这个带自动换行功能啊牛
//显示字符串
//x,y:起点坐标
//width,height:区域大小  
//size:字体大小
//*p:字符串起始地址   
void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p)
{         
u8 x0=x;
width+=x;
height+=y;
    while((*p<='~')&&(*p>=' '))//判断是不是非法字符!
    {       
        if(x>=width){x=x0;y+=size;}
        if(y>=height)break;//退出
        LCD_ShowChar(x,y,*p,size,0);
        x+=size/2;
        p++;
    }  
}
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-6-7 16:59:04 | 显示全部楼层
呵呵,你可以写个更好的出来啊.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-18 22:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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