OpenEdv-开源电子网

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

设计了一个倒计时程序,但是下载到板子里面之后显示的字体很小,有什么办法可以放大吗?

[复制链接]

1

主题

4

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-24
在线时间
5 小时
发表于 2019-7-25 18:27:06 | 显示全部楼层 |阅读模式
3金钱

下方是我的程序:
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"       
#include "usmart.h"         
#include "rtc.h"


int main(void)
{         
        int show_year = 2019;
        int show_mouth = 7;
        int show_date = 1;
        int si_key1 = 0;
        u8 t=0;       
        vu8 key=0;
       
        delay_init();                   
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
        uart_init(115200);         
        LED_Init();                          
        LCD_Init();       
        KEY_Init();
        usmart_dev.init(SystemCoreClock/1000000);        //3õê¼»ˉUSMART       
        RTC_Init();                                 
        POINT_COLOR=BLACK;
        LCD_ShowString(170,400,300,16,16,"Only   days left");       
        POINT_COLOR=BLUE;
        LCD_ShowString(60,130,200,16,16,"    -  -  ");          
        LCD_ShowString(60,162,200,16,16,"  :  :  ");                    
       
        while(1)
        {       
                key=KEY_Scan(0);       
            
                if(key)
                {                                                  
                        switch(key)
                        {                                 
                                case KEY0_PRES:       
                                        if(si_key1==0)
                                            show_year++;
                                        else if(si_key1==1)
                                                show_mouth++;
                                        else
                                                show_date++;
                                        break;
                               
                                case KEY2_PRES:
                                        if(si_key1==0)
                                                show_year--;
                                    else if(si_key1==1)
                                               
                                                show_mouth--;
                                        else
                                                show_date--;
                                        break;
                               
                                case KEY1_PRES:
                                        si_key1++;
                                    if(si_key1>2)
                                            si_key1=0;
                                        break;
                                       
                                       
                                       
                        }
                if (show_mouth>12||show_mouth<1)
                        show_mouth=1;
                if (show_date<1||show_date>30)
                        show_date=1;
                }else delay_ms(1);
               
                if(t!=calendar.sec)
                {
                        t=calendar.sec;
                        LCD_ShowNum(60,130,calendar.w_year,4,16);                                                                          
                        LCD_ShowNum(100,130,calendar.w_month,2,16);                                                                          
                        LCD_ShowNum(124,130,calendar.w_date,2,16);         
                        switch(calendar.week)
                        {
                                case 0:
                                        LCD_ShowString(60,148,200,16,16,"Sunday   ");
                                        break;
                                case 1:
                                        LCD_ShowString(60,148,200,16,16,"Monday   ");
                                        break;
                                case 2:
                                        LCD_ShowString(60,148,200,16,16,"Tuesday  ");
                                        break;
                                case 3:
                                        LCD_ShowString(60,148,200,16,16,"Wednesday");
                                        break;
                                case 4:
                                        LCD_ShowString(60,148,200,16,16,"Thursday ");
                                        break;
                                case 5:
                                        LCD_ShowString(60,148,200,16,16,"Friday   ");
                                        break;
                                case 6:
                                        LCD_ShowString(60,148,200,16,16,"Saturday ");
                                        break;  
                        }
                        LCD_ShowNum(60,162,calendar.hour,2,16);                                                                          
                        LCD_ShowNum(84,162,calendar.min,2,16);                                                                          
                        LCD_ShowNum(108,162,calendar.sec,2,16);
                        LCD_ShowNum(206,400,(show_mouth-calendar.w_month)*30+show_date-calendar.w_date,2,16);
                        LCD_ShowNum(60,110,show_year,4,16);
                  LCD_ShowNum(100,110,show_mouth,2,16);
                        LCD_ShowNum(140,110,show_date,2,16);
                        LED0=!LED0;
                }       
                delay_ms(10);                                                                  
        };  
}

这是显示出来的字体,真的很小

这是显示出来的字体,真的很小

具体怎么改,看了网上的我也很乱,请各位大佬帮忙指导一下

具体怎么改,看了网上的我也很乱,请各位大佬帮忙指导一下

最佳答案

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

目测是8*16的字库。 自己好好看看代码,搞清楚原理,字库是哪个数组、如何检索、读取是什么顺序,然后自己改字库。 这种问题上来问,顶多就是给你指一下方向,具体要靠自己。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

8

主题

293

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1001
金钱
1001
注册时间
2018-8-16
在线时间
327 小时
发表于 2019-7-25 18:27:07 | 显示全部楼层
目测是8*16的字库。
自己好好看看代码,搞清楚原理,字库是哪个数组、如何检索、读取是什么顺序,然后自己改字库。
这种问题上来问,顶多就是给你指一下方向,具体要靠自己。
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2019-7-25 19:50:19 | 显示全部楼层
用大字库就好了呀
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-24
在线时间
5 小时
 楼主| 发表于 2019-7-26 11:52:01 | 显示全部楼层
nashui_sx 发表于 2019-7-25 19:50
用大字库就好了呀

请问怎么改字库,是需要先生成大字库再去更新吗?
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-24
在线时间
5 小时
 楼主| 发表于 2019-7-26 11:52:58 | 显示全部楼层
brucewoo 发表于 2019-7-25 18:27
目测是8*16的字库。
自己好好看看代码,搞清楚原理,字库是哪个数组、如何检索、读取是什么顺序,然后自己 ...

我也觉得是字库的问题,但是具体怎么改就是不很懂了,能麻烦叫一下吗?说个流程就行
回复

使用道具 举报

8

主题

293

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1001
金钱
1001
注册时间
2018-8-16
在线时间
327 小时
发表于 2019-7-28 18:16:15 | 显示全部楼层
工号001 发表于 2019-7-26 11:52
我也觉得是字库的问题,但是具体怎么改就是不很懂了,能麻烦叫一下吗?说个流程就行

就是我上面说的步骤。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-2 20:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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