请问多级菜单是不是非常的费空间?

2020-01-12 17:27发布

做的一个产品,里面有多级菜单,菜单下面会有参数需要调整,开始是用15W4K32,程序写着写着,发现空间不够,换成48,发现48也不够用了,换成56,现在56也剩下的不多了,还有很多没有写的,感觉没有多少东西啊,怎么那么费空间。
Program Size: data=65.2 xdata=109 code=53059
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
32条回答
wxdn
1楼-- · 2020-01-14 08:23
laujc 发表于 2019-6-30 08:40
用的字符液晶?估计每个菜单都写了字库

每个菜单里的汉字都是一个一写进去的, 难道有更加简单的方法?例如:写主介面
void LCD_WR_zhujiemian(void)//写主介面
{
    LCD_CLR();
    LCD_WR_DAT(ZIMU_A,2,0,8,0);//A
    LCD_WR_DAT(ZIMU_L,2,9,8,0);//L
    LCD_WR_DAT(ZIMU_M,2,17,8,0);//M
    LCD_WR_DAT(FU_1,2,24,8,0);//:
    LCD_WR_DAT(ZI_zhu,2,32,16,0);//主
    LCD_WR_DAT(ZI_cai,2,48,16,0);//菜
    LCD_WR_DAT(ZI_dan,2,64,16,0);//单

    LCD_WR_DAT(ZIMU_S,2,96,8,0);//S
    LCD_WR_DAT(ZIMU_E,2,104,8,0);//E
    LCD_WR_DAT(ZIMU_T,2,112,8,0);//T
    LCD_WR_DAT(FU_1,2,120,8,0);//:
    LCD_WR_DAT(ZI_can,2,128,16,0);//参
    LCD_WR_DAT(ZI_shu,2,144,16,0);//数
    LCD_WR_DAT(ZI_she,2,160,16,0);//设
    LCD_WR_DAT(ZI_zhi5,2,176,16,0);//置

    LCD_WR_DAT(FU_xia,4,8,16,0);//符号下
    LCD_WR_DAT(FU_1,4,24,8,0);//:
    LCD_WR_DAT(ZI_shu1,4,32,16,0);//输
    LCD_WR_DAT(ZI_ru,4,48,16,0);//入
    LCD_WR_DAT(ZI_jian1,4,64,16,0);//监
    LCD_WR_DAT(ZI_ce,4,80,16,0);//测

    LCD_WR_DAT(FU_zuo,4,103,16,0);//符号左
    LCD_WR_DAT(FU_1,4,120,8,0);//:
        LCD_WR_SHUZI(0,4,130,0,1);
        LCD_WR_DAT(ZI_du,4,144,16,0);//度
    LCD_WR_DAT(ZI_zi1,4,160,16,0);//资
    LCD_WR_DAT(ZI_liao,4,176,16,0);//料

    LCD_WR_DAT(FU_shang,6,8,16,0);//符号上
    LCD_WR_DAT(FU_1,6,24,8,0);//:
    LCD_WR_DAT(ZI_shu1,6,32,16,0);//输
    LCD_WR_DAT(ZI_chu,6,48,16,0);//出
    LCD_WR_DAT(ZI_jian1,6,64,16,0);//监
    LCD_WR_DAT(ZI_ce,6,80,16,0);//测

    LCD_WR_DAT(FU_you,6,103,16,0);//符号右
    LCD_WR_DAT(FU_1,6,120,8,0);//:
    LCD_WR_SHUZI(9,6,126,0,1);
        LCD_WR_SHUZI(0,6,135,0,1);
        LCD_WR_DAT(ZI_du,6,144,16,0);//度
    LCD_WR_DAT(ZI_zi1,6,160,16,0);//资
    LCD_WR_DAT(ZI_liao,6,176,16,0);//料

        LCD_WR_SHUZI(2,0,8,0,1);//2
        LCD_WR_SHUZI(0,0,17,0,1);//0
        LCD_WR_DAT(ZI_nian,0,44,16,0);//年
        LCD_WR_DAT(ZI_yue,0,78,16,0);//月
        LCD_WR_DAT(ZI_ri,0,111,16,0);//日       
        LCD_WR_DAT(FU_1,0,147,8,0);//:               
        LCD_WR_DAT(FU_dian,0,171,8,0);//:
}
wxdn
2楼-- · 2020-01-14 12:22
flash3g 发表于 2019-6-30 09:12
你应该是把字库保存在flash上了吧,你这个几K空间足够了,或者贴源码出来帮你分析下问题 ...

不是吧,几个K?
wxdn
3楼-- · 2020-01-14 13:11
上一个之前的版本吧,请高手帮忙看一下。
WX-1400.rar (294.28 KB, 下载次数: 17) 2019-6-30 09:41 上传 点击文件名下载附件
laujc
4楼-- · 2020-01-14 18:54
wxdn 发表于 2019-6-30 09:31
每个菜单里的汉字都是一个一写进去的, 难道有更加简单的方法?例如:写主介面
void LCD_WR_zhujiemian(v ...

还是没有理解菜单的概念吧。。。

wxdn
5楼-- · 2020-01-15 00:22
 精彩回答 2  元偷偷看……
laujc
6楼-- · 2020-01-15 03:06
wxdn 发表于 2019-6-30 09:31
每个菜单里的汉字都是一个一写进去的, 难道有更加简单的方法?例如:写主介面
void LCD_WR_zhujiemian(v ...

你如果一次送一个字符串,应该会省很多空间。

不用一个字符一个字符的送

一周热门 更多>