• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

oled显示字体的大小

無唁苡對 2019-01-17 浏览量:4672

我想把字体变大一点,下面这个程序显示16*16的字体正常,怎么把它改为48*48的字体????

//显示一个字符

void OLED_ShowChar(u8 xu8 yu8 chr)
{     
unsigned char c=0i=0;
c=chr-' ';//µÃµ½Æ«ÒƺóµÄÖµ
if(x>Max_Column-1){x=0;y=y+2;}
if(SIZE ==16)
{
OLED_Set_Pos(xy);
for(i=0;i<8;i++)
OLED_WR_Byte(F8X16[c*16+i]OLED_DATA);
OLED_Set_Pos(xy+1);
for(i=0;i<8;i++)
OLED_WR_Byte(F8X16[c*16+i+8]OLED_DATA);
}
else {
OLED_Set_Pos(xy+1);
for(i=0;i<6;i++)
OLED_WR_Byte(F6x8[c][i]OLED_DATA);
}
}


//显示一个字符串
void OLED_ShowString(u8 xu8 yu8 *chr)
{
unsigned char j=0;
while (chr[j]!='\0')
{ OLED_ShowChar(xychr[j]);
x+=8;
if(x>120){x=0;y+=2;}
j++;
}
}


//显示数字
void OLED_ShowNum(u8 xu8 yu32 numu8 lenu8 size)
{         
u8 ttemp;
u8 enshow=0;    
for(t=0;t<len;t++)
{
temp=(num/oled_pow(10len-t-1))%10;
if(enshow==0&&t<(len-1))
{
if(temp==0)
{
OLED_ShowChar(x+(size/2)*ty' ');
continue;
}else enshow=1; 
 
}
OLED_ShowChar(x+(size/2)*tytemp+'0'); 
}

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 1、重新生成一个48*48点阵的字库。这样显示效果好,但是耗占空间。

    2、把16*16放大3倍。也就是说,原本一个点,现在画3*3=9个像素。锯齿会很严重,但你不用改字库。

    • 发布于 2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
無唁苡對 回复了 Spirit:怎么在原函数上改 回复

其他答案 数量:13
  • //显示48*48的汉字
    void OLED_ShowCHinese48(u8 xu8 yu8 no)
    {                                  
      u8 t i;
      for (i = 0; i < 6; i++)   //6是什么意思?48是字符高度为48个点,OLED屏分为8页(就是8行),每页8个点,所以48/8=6
      {
        OLED_Set_Pos(x y + i);
        for(t = 0; t < 48; t++)  //48是什么?字符的宽度为48个点。
        {
          OLED_WR_Byte(Hzk48[no][48 * i + t]OLED_DATA);
        }
      }

    }

    应该是这样吧嘻嘻

    • 发布于2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
無唁苡對 回复了 0cf7d57a77c9f98e :我试过这个函数,显示乱码 回复

  • 你除了需要修改这个代码之外,还需要重新做一个48*48的字库
    • 发布于2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
無唁苡對 回复了 hehung :函数怎么修改? 回复

  • 你得有对应的字库,字体大小不是你想改下就完了,你可以找有没有对应字库,如果有那应该有对应函数,
    • 发布于2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
無唁苡對 回复了 lsh019 :有对应字库,就是不知道函数怎么改 回复

  • 可以重新定义一个48成48的字库,或者在显示的时候多写2次,但是这样会有锯齿
    • 发布于2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
無唁苡對 回复了 yhj416606438 :我定义了,但是不知道函数怎嘛改? 回复

  • 字库总有对应的数字表示
    • 发布于2019-01-25
    • 举报
    • 评论 0
    • 0
    • 0

  • oled显示字体大小取决于你取的字模大小,一般取一种字模那就只能显示一种字。
    • 发布于2019-01-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 如果OLED自带字库的,那应该有指令可以调整大小的,否则就要用取模软件重新取
    • 发布于2019-02-14
    • 举报
    • 评论 0
    • 0
    • 0

  • OLED是用字模输出的,把你的字模输出比例设置大一点就可以了
    • 发布于2019-02-16
    • 举报
    • 评论 0
    • 0
    • 0

  • 字符尺寸都是可以直接用字模软件设置的
    • 发布于2019-02-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 要直接根据你的字符软件设置好模型,然后设置比例
    • 发布于2019-02-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 用对应的字模软件直接修改对应的大小输出
    • 发布于2019-02-27
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

oled显示字体的大小