OpenEdv-开源电子网

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

求一个取模版的(不用字库的)mini版汉子显示程序

[复制链接]

91

主题

186

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2016-3-22
在线时间
122 小时
发表于 2016-4-11 09:51:02 | 显示全部楼层 |阅读模式
15金钱
想在2.8寸屏幕上显示简单的汉子,没有SD卡,想用取模汉子的方法来显示汉子不用字库的,那我大神有相关的实验代码,求分享一个,感激不尽,急急急

最佳答案

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

//显示汉字16*16 void ili9320_PutHanzi(u16 x,u16 y,u8 n,u16 charColor,u16 bkColor) { u16 i=0; u16 j=0; u16 k=0,m=0; u8 tmp_char=0; for(m=0;m
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
发表于 2016-4-11 09:51:03 | 显示全部楼层
//显示汉字16*16
void ili9320_PutHanzi(u16 x,u16 y,u8 n,u16 charColor,u16 bkColor)
{      
        u16 i=0;
  u16 j=0;
        u16 k=0,m=0;
  u8 tmp_char=0;
for(m=0;m<2;m++)//两个8行
        {
                for (i=0;i<8;i++)//8行
                {
                        for(k=0;k<2;k++)//一行点须要两个字节
                        {
                                tmp_char=hanzi_16x16[n+m][2*i+k];
                                for (j=0;j<8;j++)//一个字节8位
                                {
                                        if ( (tmp_char >> j) & 0x01 == 0x01)
                                        {
                                                ili9320_SetPoint(x+j+(k*8),y+8*m+i,charColor); // 字符颜色
                                        }
                                        else
                                        {
                                                ili9320_SetPoint(x+j+(k*8),y+8*m+i,bkColor); // 背景颜色
                                        }
                                }
                        }
                }
        }
}

unsigned char const hanzi_16x16[32][16]={
//环(0) 境(2) 温(4) 度(6) 压(8) 力(10) 实(12) 标(14) 况(16) 氧(18) 气(20) 浓(22)  ℃(24)
//激(26) 光(28) 器(30)

{0x00,0x00,0x00,0x00,0xBF,0x7F,0x08,0x08,0x08,0x08,0x08,0x04,0x08,0x04,0x3E,0x16},
{0x08,0x25,0x88,0x44,0x48,0x44,0x08,0x04,0x38,0x04,0x07,0x04,0x02,0x04,0x00,0x04},/*"?",0*/
{0x04,0x01,0x04,0x02,0xC4,0x1F,0x84,0x08,0x1F,0x05,0xE4,0x7F,0x04,0x00,0xC4,0x1F},
{0x44,0x10,0xC4,0x1F,0x44,0x10,0xDC,0x1F,0x87,0x04,0x82,0x44,0x40,0x44,0x30,0x78},/*"?",1*/
{0x00,0x00,0xC4,0x1F,0x48,0x10,0x48,0x10,0xC1,0x1F,0x42,0x10,0x42,0x10,0xC8,0x1F},
{0x08,0x00,0xE4,0x3F,0x27,0x25,0x24,0x25,0x24,0x25,0x24,0x25,0xF4,0x7F,0x00,0x00},/*"?",2*/
{0x80,0x00,0x00,0x01,0xFC,0x7F,0x44,0x04,0x44,0x04,0xFC,0x3F,0x44,0x04,0x44,0x04},
{0xC4,0x07,0x04,0x00,0xF4,0x0F,0x24,0x08,0x42,0x04,0x82,0x03,0x61,0x0C,0x1C,0x70},/*"?",3*/
{0x00,0x00,0xFC,0x7F,0x04,0x00,0x04,0x01,0x04,0x01,0x04,0x01,0x04,0x01,0xF4,0x3F},
{0x04,0x01,0x04,0x01,0x04,0x09,0x04,0x11,0x04,0x11,0x02,0x01,0xFA,0x7F,0x01,0x00},/*"?",4*/
{0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0xFE,0x1F,0x40,0x10,0x40,0x10,0x40,0x10},
{0x40,0x10,0x20,0x10,0x20,0x10,0x10,0x10,0x10,0x10,0x08,0x11,0x04,0x0A,0x02,0x04},/*"?",5*/
{0x40,0x00,0x80,0x00,0xFE,0x7F,0x02,0x40,0x11,0x21,0x20,0x01,0x20,0x01,0x08,0x01},
{0x10,0x01,0x10,0x01,0xFF,0x7F,0x80,0x02,0x40,0x04,0x20,0x08,0x18,0x10,0x06,0x20},/*"?",6*/
{0x08,0x00,0x88,0x3F,0x08,0x00,0x08,0x00,0x3F,0x00,0xC8,0x7F,0x0C,0x04,0x1C,0x04},
{0xAA,0x14,0xAA,0x24,0x49,0x24,0x48,0x44,0x28,0x44,0x08,0x04,0x08,0x05,0x08,0x02},/*"?",7*/
{0x00,0x00,0xE2,0x1F,0x24,0x10,0x24,0x10,0x20,0x10,0x20,0x10,0xE8,0x1F,0x88,0x04},
{0x84,0x04,0x87,0x04,0x84,0x04,0x44,0x04,0x44,0x44,0x24,0x44,0x14,0x78,0x08,0x00},/*"?",8*/
{0x04,0x00,0xFC,0x3F,0x02,0x00,0xF9,0x0F,0x00,0x00,0xFE,0x0F,0x88,0x08,0x50,0x08},
{0xFE,0x0B,0x20,0x08,0xFC,0x09,0x20,0x48,0xFF,0x57,0x20,0x50,0x20,0x60,0x20,0x40},/*"?",9*/
{0x08,0x00,0x08,0x00,0xFC,0x3F,0x04,0x00,0xF2,0x0F,0x01,0x00,0xFC,0x0F,0x00,0x08},
{0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x50,0x00,0x50,0x00,0x60,0x00,0x40},/*"?",10*/
{0x00,0x02,0x04,0x02,0x08,0x02,0xE8,0x3F,0x21,0x21,0x12,0x11,0x82,0x02,0x88,0x22},
{0xC8,0x12,0xA4,0x0C,0x97,0x04,0x84,0x08,0x84,0x10,0x84,0x22,0x84,0x41,0x80,0x00},/*"?",11*/
{0x06,0x00,0x89,0x2F,0x69,0x30,0x36,0x20,0x10,0x20,0x18,0x00,0x18,0x00,0x18,0x00},
{0x18,0x00,0x18,0x00,0x18,0x00,0x10,0x00,0x30,0x20,0x60,0x10,0x80,0x0F,0x00,0x00},/*"?",12*/
{0x40,0x08,0x22,0x08,0xF4,0x09,0x14,0x09,0xF0,0x7D,0x11,0x25,0xF2,0x2B,0x2A,0x28},
{0x48,0x28,0xF4,0x2B,0x27,0x28,0xE4,0x11,0x24,0x11,0x14,0x29,0x54,0x29,0x88,0x44},/*"?",13*/
{0x80,0x00,0x84,0x10,0x88,0x10,0x90,0x08,0x90,0x04,0x80,0x00,0xFF,0x7F,0x20,0x02},
{0x20,0x02,0x20,0x02,0x20,0x02,0x10,0x42,0x10,0x42,0x08,0x42,0x04,0x7C,0x03,0x00},/*"?",14*/
{0x00,0x00,0x7C,0x3E,0x44,0x22,0x44,0x22,0x7C,0x3E,0x80,0x04,0x80,0x08,0xFF,0x7F},
{0x40,0x01,0x30,0x06,0x0C,0x18,0x03,0x60,0x7C,0x3E,0x44,0x22,0x44,0x22,0x7C,0x3E},/*"?",15*/
};
回复

使用道具 举报

91

主题

186

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2016-3-22
在线时间
122 小时
 楼主| 发表于 2016-4-11 09:51:23 | 显示全部楼层
自己顶
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
发表于 2016-4-11 11:36:21 | 显示全部楼层
n取0 2 4 6……我写的有点乱,关键取模和你的显示函数对应就行
回复

使用道具 举报

91

主题

186

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2016-3-22
在线时间
122 小时
 楼主| 发表于 2016-4-12 11:18:57 | 显示全部楼层
cheng8152 发表于 2016-4-11 11:34
//显示汉字16*16
void ili9320_PutHanzi(u16 x,u16 y,u8 n,u16 charColor,u16 bkColor)
{      

我用的是9341的2.8寸屏,有9341的程序吗?你给的代码不全啊我没有 ili9320的C文件库,能发一下吗?
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
发表于 2016-4-12 13:39:23 | 显示全部楼层
xp1179926265 发表于 2016-4-12 11:18
我用的是9341的2.8寸屏,有9341的程序吗?你给的代码不全啊我没有 ili9320的C文件库,能发一下吗?

都一样啊 只要画点函数有就可以
回复

使用道具 举报

40

主题

259

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
459
金钱
459
注册时间
2016-5-19
在线时间
192 小时
发表于 2018-6-28 11:01:06 | 显示全部楼层
cheng8152 发表于 2016-4-12 13:39
都一样啊 只要画点函数有就可以

我想请教下如果要显示24×24的字体函数该怎么修改?
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-26 11:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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