历史上的今天
返回首页

历史上的今天

今天是:2024年11月11日(星期一)

正在发生

2019年11月11日 | 利用LabVIEW产生字模的LED显示屏设计

2019-11-11 来源:eepw

  .文中介绍了一种直接利用 LabV I EW 的图片处理功能自动生成字符点阵的方法,利用该程序无需使用专门的字库可自动得到各种字符的点阵,然后将显示信息通过串行传输方式发送到单片机,通过单片机驱动相应的二极管发光,显示信息。硬件由计算机、单片机、驱动电路和 LED 显示屏构成,结构如图 1所示。

总体结构框图

图 1总体结构框图。

  1. 基于 LabV I EW 的汉字字模的提取

  1.1. 基于 LabV IEW 的汉字字模的提取方法

  现在比较流行的方法是基于汉字字符的编码方式形成字模。

  汉字机内码与区位码的关系为:

  区位码=机内码- 160(1)

  对于 16*16点阵字库,每个汉字占用 32 b i t 其首字节的起始位置的计算公式为:

  首字节= [ (区码- 1)*94+位码- 1]*32 ( 2)

  以此为基点连续读取 32 b i t就是此汉字的点阵字模。在 LabV IEW 编程中基本流程为: 以字符串形式输入一个汉字,按照上述运算规则找出汉字字模首字节在汉字库文件HZK16中的位置,从 HZ K 16中以首地址开始连续读取 32 b i t的数据,这样就得到了一个容量为 32的数组,即输入汉字的点阵字模。然后再按照下位机的构建运用数组的算术运算控件对数组修改,将最终结果通过串口发送给单片机,以进行显示。


  本系统利用 LabV I EW 的图片处理功能生成字模,包括汉字、数字、英文以及各种特殊符号等等,提高工作效率和灵活性。


  1.2. 利用 LabV I EW 的图片处理功能生成字模的设计

  首先设置一个白色的按钮,通过属性节点,把输入的字符作为这个按钮的文本显示。在通过调用节点,获取这个布尔的图像数据。将图像数据转化为 8位像素矩阵。同样的方法获得一个同样大小但没有布尔文本的纯白色按钮的像素矩阵。将 2个矩阵做异或比较。


  得到一个二维布尔矩阵,直接输出这个矩阵就得到了该字符的点阵。生成字符矩阵框图程序如图 2所示。

生成字符矩阵程序

  采用比较的方法获得点阵,因此可以采用这种方法在同一系统中产生数字、汉字、英文或各种特殊符号的字模点阵,简化了编程过程,使用方便灵活。


  由于 LabV IEW 有很强的格式转化功能,将生成的点阵按照下位机的驱动方式运用其中数组的运算控件对点阵进行修改,得到符合要求的字符串。程序框图,如图 3所示。图中的字模 1为用于上位机显示的字符串形式,字模 2为用于串口通信的字符串形式。

修改点阵的程序

  LabV IEW 中用于串行通讯的节点实际上是 V IS节点,为了方便用户使用,LabV IEW 将这些节点单独组成 1个子模板,共包含 6个节点。字模 2通过LabV IEW 的控件 V I SA与单片机的串口进行传输。


  LabV IEW 本身也具有写入电子表格文件功能可以将生成的字模储存为任意格式的文件,相当于一个字模提取软件,用于普通 LED显示屏设计。最终的字模提取操作界面即前面板如图 4所示。

字模提取操作界面

图 4. 字模提取操作界面。


  2. 单片机控制电路设计

  LED显示屏的设计采用以 AT89C51单片机为核心芯片的电路来实现,主要由 AT89C51芯片、时钟电路、复位电路、列扫描驱动电路 74 HC154、1616 LED点阵等部分组成,电路图如图 5所示。

硬件电路原理图

图 5 硬件电路原理图。

  本设计所使用的 16*16 LED矩阵是由 4块 8*8LED共阳极矩阵拼接组成。

  把行列总线接在单片机 I /O口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。但是若将 LED 点阵的行列端口全部直接接入AT89C51单片机,则需要使用 32条 I /O 口,这样会造成 I/O资源的耗尽,系统也再无扩充的余地。


  因此,在实际应用中只将 LED点阵的 16条行线直接接在 P0 口和 P2 口,至于列选扫描信号则是由 4~ 16线译码器 74HC154来选择控制,这样列选控制只使用了单片机的 4个 I /O口,节约了 I /O资源,为单片机系统扩充使用功能提供了条件。由于 P0口做通用数据 I/O端口驱动负载时,必须外接上拉电阻,因此使用 4.7 k. 排电阻作为 P0 口的上拉电阻。


  单片机上电后由于没有事先存储字模而处于黑屏等待状态,当接收到串口传来的字模数据后,单片机按照设定的程序在P 0和P 2接口输出汉字对应的代码电平送至 LED 点阵的行选线,同时在 P1.1,P1.2,P1.3,P1.4接口输出列选扫描信号,从而选中相应的LED发光,并利用人眼的视觉暂留特性合成整个汉字的显示。


  3. 控制系统的软件设计

  软件程序主要由初始化、主程序、中断程序等构成,采用汇编语言编写。主程序用于 LED显示,程序流程如图 6所示。中断程序主要用于接收上位机传送的字模信息,由于 LabV I EW 和下位机传递的数据是 ASC II形式的,需要转换为 16进制数,具体程序流程如图 7所示。采用中断的方式接收数据可以提高数据传输的时效性。

主程序流程图
中断程序流程图

  4. 结束语

  设计研究的基于 LabV IEW 和单片机结合控制的LED电子屏幕。采用 LabV I EW 编程方法产生字模,通过串口传递给单片机,简化了编程、节省了单片机程序运行的时间,且可实现动态输入,也可根据需要随时修改所需显示的内容,具有较高的实用价值。


  虽然本设计只使用了一块 16*16 LED点阵,电路简单,但是包涵了 LED显示屏的电路基本原理和基本编程思想,如要进行扩展,只需扩展单片机的I/O接口,增加一些 LED点阵和相关芯片,就能设计出更大面积、更多花样的 LED显示屏。


推荐阅读

史海拾趣

AMS公司的发展小趣事

AMS(Austria Microsystems)公司是一家总部位于奥地利的半导体制造商,专注于开发和生产高性能的模拟半导体解决方案。以下是 AMS 公司发展的五个相关故事:

  1. 创立与早期阶段:AMS 公司成立于1981年,最初是一家从事晶圆制造的小型企业。公司创始人团队以其对半导体技术的深刻理解和创新能力,在短时间内取得了一定的成就。早期产品主要包括模拟集成电路(IC)和传感器,为医疗、汽车、工业等领域提供解决方案。

  2. 技术创新与产品扩展:随着市场需求的不断变化和技术的进步,AMS 公司不断进行技术创新,并扩展了产品线。公司致力于开发具有高性能、低功耗和小尺寸的模拟半导体产品,以满足智能手机、消费电子、工业自动化等领域的需求。公司的产品涵盖了光学传感器、环境传感器、声学传感器等多个领域。

  3. 全球化发展与市场拓展:AMS 公司通过不断拓展全球市场,加强与客户和合作伙伴的合作关系,实现了快速的业务增长。公司在欧洲、亚洲和美洲设立了多个销售办事处和生产基地,建立了完善的全球供应链和销售网络。公司的产品销售网络覆盖了全球范围,得到了国内外客户的广泛认可。

  4. 收购与合并:随着公司规模的扩大和市场竞争的加剧,AMS 公司通过收购和合并等方式不断强化自身实力。公司先后收购了一些技术领先的公司,扩大了产品线和市场份额。此举进一步提升了公司在模拟半导体领域的竞争优势,加速了公司的业务增长。

  5. 持续创新与未来展望:AMS 公司将继续致力于技术创新和产品研发,不断提升产品性能和品质水平。公司将关注新兴技术和市场趋势,积极布局未来的发展方向,包括人工智能、物联网、汽车电子等领域。同时,公司还将加强与客户和合作伙伴的合作,共同推动行业的发展和进步。

华瓷(Chinocera)公司的发展小趣事

人才是企业发展的根本动力。华瓷深知这一点,因此在人才战略和团队建设上投入了大量精力。公司注重员工的培训和发展,为员工提供广阔的发展空间和良好的职业前景。同时,华瓷还积极引进国内外优秀人才,打造了一支高素质、专业化的团队。这支团队为公司的发展提供了有力的支持和保障。

中电熊猫(CEC)公司的发展小趣事

技术创新是中电熊猫持续发展的关键。公司不断深化技术改革,加大研发投入,推动产业升级。例如,在液晶面板生产线上,中电熊猫采用了世界一流的技术和设备,不仅提高了屏幕分辨率和良品率,还降低了生产成本。此外,中电熊猫还积极参与国家重大科研项目和行业标准制定工作,为行业发展做出了积极贡献。

德艺隆(DEALON)公司的发展小趣事

在激烈的市场竞争中,德艺隆始终坚持诚信经营的原则。他们严格遵守承诺,对客户提供的商业信息严格保密,不向任何第三方泄露。这种高度的诚信度赢得了客户的信任,许多客户都愿意与德艺隆建立长期合作关系。同时,德艺隆还积极参与社会公益活动,回馈社会,进一步提升了公司的品牌形象。

CTS公司的发展小趣事

在业务发展过程中,CTS公司还通过一系列收购来扩展其业务范围和增强竞争力。例如,CTS完成了对Alpha Ceramics的收购,这是一家为军事和航空航天市场提供传感器和换能器制造商的压电陶瓷材料供应商。这一收购使CTS能够进一步增强其在特定领域的专业能力,并为客户提供更全面的解决方案。

AMOTECH(阿莫泰克)公司的发展小趣事

1994年,AMOTECH在韩国创立,凭借创始人的远见卓识和技术团队的扎实能力,公司迅速在电子行业中崭露头角。经过两年的努力,1996年,AMOTECH被政府通讯部评为“光明前途企业”,这是对其技术实力和市场潜力的肯定。随后,公司不断加大研发投入,终于在2000年获得ISO9000认证,这标志着AMOTECH在产品质量管理上达到了国际标准。

问答坊 | AI 解惑

一进一出工程案例

系统设计每个进出口由一台计算机管理,在管理处设置一台计算机做进出的授权与管理,数据存放于管理处计算机,管理处可以随时查询车辆与人员的进出与授权情况,三台计算机通过TCP/IP联成局域网络;设备与计算机间采用工业标准RS485/RS422进行通讯。 ...…

查看全部问答>

大赛论文模板!!谁能分享分享

本帖最后由 paulhyde 于 2014-9-15 08:59 编辑 哪位同仁有电子设计大赛论文,报告的模板!!!借来看看!!谢谢分享!!!!  …

查看全部问答>

2802 AD采样端口采样数字乱跳超过预期

我使用2802内部AD 端口采样电流信号,发现采样零信号,采样值波动很厉害?请教各位…

查看全部问答>

ZigBee技术语音图像无线监控系统的设计与实现

在环境比较恶劣,温度、压力、湿度、震动、噪声和电磁等因素时刻都可能发生变化的情况下,利用一般的网络技术来组建监控系统,可能会因为实时性不够强、灵敏度较小、延迟大、距离短、可靠性较低、受环境限制明显等缺陷,无法全面实时有效地实现安全 ...…

查看全部问答>

Wince 输入法

我通过实现IInputMethod接口, 实现了一个软件输入面板(SIP). 通过这个SIP输入字符的时候, 系统会弹出一个默认的候选窗口. 但这个候选窗口比较难看, 请问我可不可以用什么方法去定制这个侯选窗口? 在网上查阅一些资料, 突然对SIP和输入法的概念不 ...…

查看全部问答>

急需高级硬件研发工程师

?        熟悉数字系统设计,熟练使用常用EDA软件,熟练应用原理图和PCB设计工具; ?        了解嵌入式CPU系统开发; ?        熟悉FPGA设计开发,熟练使用逻辑编程语言及相关软件 ...…

查看全部问答>

COM口异常提示问题

在PPC上用VB.NET写一个程序,要用到COM口,现在问题是,如果COM口不存在,即没有连接到硬件,程序弹出异常然后终止。想请教一下,怎样让程序在COM口不存在的时候弹出一个提示,然后等用户重新连接好COM口,程序可以继续运行?…

查看全部问答>

经典IT群

~基于嵌入式技术,实现校园创业 ~~欢迎~~~~ 硬件方面:ARM,PowerPC, MIPS,单片机,数字/模拟电路设计,FPGA/CPLD,DSP 软件方面:Linux,WinCE,QT,MiniGUI,Vxworks Layout方面:Protel,OrCAD,PADS,PowerPC,Cadence Allegro 等方面的 ...…

查看全部问答>

电容触摸感应原理与应用(2)

1. 4:  cchu触摸按键表面的覆盖物 在许多的应用中,我们需要在触摸按键上添加一些覆盖物,如:塑料等。在这种情况下,人的手指就不能和触摸按键直接接触了。那么电容触摸是不是就失效了呢?答案是否定的。 从第二节的图中我们可以看 ...…

查看全部问答>

系统节拍问题

各位 请教个问题 100MHZ的 CCLK  系统节拍 为啥是10ms 啊? 根据 系统节拍定时器定时时间= Fcclk/(STRRLOAD+1)计算: Fcclk = 100MHZ  STRRLOAD的默认值为 0x000F 423F 计算得到的 不是10ms啊:$…

查看全部问答>