单片机应用中从Excel软件提取字模的方法.doc

单片机应用中从Excel软件提取字模的方法.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机应用中从Excel软件提取字模的方法 时间:2009-12-16 08:38:46 来源:单片机与嵌入式系统 作者:陈学昌,袁燕 重庆大学 ??? LED点阵作为一种重要的显示手段,得到了广泛的应用,在单片机控制的点阵显示系统程序中需要解决的一个重要问题就是字符点阵数据的获取,也就是常说的取字模。笔者在工作过程中也遇到这个问题,经学习和研究发现常用的取字模的方法是用专门的取字模软件来完成的,但也遇到点阵大小固定、不能随意选择的问题。比如,在控制5×7的LED点阵程序中,无法找到合适的软件取得字模。经研究试验发现,使用Excel软件可以实现任意点阵大小取字模。 ??? 此方法的核心思想是应用Excel的“条件格式”功能。选中Excel表格中的任意单元格,使用“格式”菜单中“条件格式”,设置为单元格数值等于1时单元格格式为黑色底纹,如图1所示。设置成功后会发现当单元格内数值为1时,单元格会变成黑色。利用这一功能,可以在Excel中形象地显示点阵字模显示效果。在Excel中选中与需要取模的点阵大小相当的表格区域,一个单元格代表一个LED,将列宽设置为2,将此区域中的各个单元格均设置好条件格式,并在需要点亮的LED对应位置单元格中填人1,便得到了与显示效果类似的图形。如图2中为5×7点阵中显示数字“1”的效果。然后就可以利用Excel的公式功能计算对应行和列的数据,得到点阵数据了。为便于识读,在左侧和顶部分别加上了行标号和列标号,右侧得到的便是每行的字模数据,底部得到的是每列的字模数据。 ??? 在加载了Excel的“分析工具库”宏后,可以使用函数DEC2HEX()将十进制转换为十六进制,并使用函数TEXT()将其转换为两位的字符,再用运算符在其后面加上H,便得到了单片机程序中常用的十六进制数据格式。对应图2的Excel表格区域位置,5×7点阵中显示“1”的第1行字模数据的公式为:=TEXT(DEC2HEX(B2+C2*2+D2*4+E2*8+F2*16),”00”)”H”,结果为04H;第1列字模数据的公式为:=TEXT(DEC2HEX(B2+B3*2+B4*4+B5*8+B6*16+B7*32+B8*64),”00””H”,结果为00H。其他行、列公式类推。同理,使用运算符可以将各字模数据组合成单片机程序的数据表格式。如图2中第10行公式为:=”DB”B9,C9 ,D9,,E9 ,F9,得到1,的5×7点阵按列取的字模数据为DB 00H,42H,7FH,40H,00H;图2中第11行公式为:=DBG2,G3 8L,G4,G5 ,G6,G7,G8,得到“1”的5×7点阵按行取的字模数据为DB04H,06H,04H,04H,04H,04H,0EH,成功生成单片机汇编语言数据表格式字模数据,直接复制到单片机程序中即可使用。 扩展运用此法,在Excel中还可实现七段数码管求字形码。如图3中第9行中计算七段数码管求字形码的公式为:=TEXT(DEC2HEX(C2+D3*2+D5*4+C6*8+B5*16+B3*32+C4*64),00)H,得到“2”的七段数码管求字形码为5BH。 ??? 在此使用Excel取字模的方法中: ??? 点阵取模的高低位顺序问题可以通过调整单元格计算公式中各位的位权来修改。 ??? 不同大小点阵取字模时,以文中5×7点阵类推,画出对应大小区域并修改公式计算的单元格数量即可实现。 ??? 此方法中如果条件格式设置为“单元格数值等于1时单元格格式为黑色底纹”,则计算和求字形码 ??? 显示结果为共阴极数码管字形码,即亮的字段为1。如需 共阳极数码管字形码,即亮的字段为0,则将条件格式设置为“单元格数值等于0时单元格格式为黑色底纹”,并在不需要点亮的位置输入1,公式不变即可实现。

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档