本软件可以在你动手编写单片机程序之前,先做规划排版,根据你的菜单内容进行布局花一点时间在排版上是有好处的,在进行单片机编程的时候,排版通过的坐标很有用,
可以省去很多调试时间;编写使用说明书的时候,只要用抓图软件将你已经排版的效果抓过去就行了,非常生动直观。
写过液晶菜单的你一定有这样的体会,工作量重要分出很大一部分时间用于反复调试版面布局,就是由于这个原因,笔者编写了这个软件,配合我编写的字模软件,可以大大
提高编程效率。你可以完全不用关心字模部分,只管编写程序,编完以后用字模软件帮你自动生成一个.h文件加入到你的工程中就行了。
可设置不同的取模方式,特殊液晶、普通液晶均可适用!
1、打开功能是专门用于对C语言文件自动提取显示所需要的汉字,进行点阵码数据转换的,在您的C语言程序中,有一点需要特别留意:您的注解中请不要使用双引号,否则会引起提取错误。
软件包中的文件ee.c作为一个简单例程供提取测试用。
2、提取以后的点阵码可以随意修改点阵数据,使用鼠标的左键为加一点,右键为擦除一点。修改完毕请按旁边的确认键将数据记录到点阵码中,否则您的修改将自动放弃。
3、点阵码可以随意平移,请谨慎使用。平移之前请查看一遍所有的字符点阵图,平移有可能会丢失边界点,移出了边界的点阵将被丢弃,不可恢复。平移前请确认是否有必要进行全体字符一起移动。
4、用户自定义特殊字符的建立,首先选定点阵数据,在下面的汉字输入窗口输入几个您不使用的汉字,确认。然后生成了这些汉字的点阵码,再将他们清空(使用平移按钮中间的那块抹布),就可以用鼠标描绘你的图案了,最后别忘了打“确认”键。
5、ASCII字符可以自动提取0x20~0x7f的全部,最后一个0x7f一般都没有用,可以手工将它删除,也可以利用它做一个简单的特殊字符。汉字库中也包含有ascii字符,但是经查对与这三个ascii库基本一样,所以就不再重复。
6、保存文件:C语言格式的默认为.h类型,汇编格式的默认为.inc类型,只要将他们加入到您的工程中就可以了。
7、新增加了自动添加下划线功能。这项功能在做点阵显示和修改的时候并不出现下划线,设置了以后仅仅在最后的输出文件中出现,以免干扰编辑修改。
8、扩充对windows汉字的直接提取,从16~96范围内可以任意设定选取。主要用于制作界面的开机封面少量标识性汉字。
9、扩充了对ascii小字库5x8以及大字库20*40/24*48的支持,毕竟字库文件比较工整。
开机初始状态
汉字库:宋体16.dot 字高:16
Ascii: Asc5x8E.dot 字高:8
液晶规格:240x128
所有字库文件建议放在与本软件同一个目录下,便于查找
排版程序文件的文件扩展名约定为.lcm
1. putstr(x,y,"显示abc123",Att);
其中:
x......显示的左上角横坐标,根据液晶的点阵排列取向自动取舍
y......显示的左上角纵坐标,根据液晶的点阵排列取向自动取舍
"".....显示内容,可以包含汉字、ASCII文字
Att....显示属性,0..表示正常显示白底黑字,1..表示反白显示黑底白字
2. linexy(x0,y0,x1,y1,Att);
其中:
x0,y0.....直线起点坐标
x1,y1.....直线终点坐标
Att.......属性,0..正常画黑线,1..画白线
3. LoadChinese("lib名称",height);
lib名称 必须是在本系统目录下,完整的字库文件名
4. LoadAscii("lib名称");
目录下所列的asc字库均可以使用
5. ModeSele(modeset);
modeset....用于制定模块的点阵排列方式可以指定为
1......横向排列
2......纵向排列
6. lcmSize(width, height);
用于选定液晶规格,可任意设定
7. movex(x);
用于字模在x方向上的平移,x>0向右移
8. movey(y);
用于字模在y方向上的平移,y>0向下移
9.windows字库的调用:
同样使用汉字库装入命令LoadChinese("w_字体全称",height);
在字体名前面增加了w_是为了与汉字库区分,举例:
LoadChinese("w_华文行楷",32);
10.图片装入,先设定好装入坐标和图片大小 然后就可以用装入图片按钮选择要装的文件就可以了。本软件只支持装入黑白图。编程装入命令:
LoadBitmap(intox, intoy, endx, endy, "file"); // 装入图形文件
编程举例:
请测试本目录下面的几个*.lcm文件的效果
下面的语句也是合法的:
putchar(1,1,"lkjd98723\//?~`汉字40_(*&(*&(*&)))),""",897234hkjhjh",0);
记得在字符串的两头(头尾)都必须要加双引号"后面用一个逗号分分开就可以了。