1、 学术论文写作课程论文基于 Arduino 的一种电子显示屏控制系统设计姓 名 :学院 (系 ):专 业: 自动化班 级:学 号 :基于 arduino 的一种简易电子显示屏设计摘要:LED 显示屏因其工作稳定可靠、寿命长、亮度高等优点,在许多场合中应用广泛。加强显示屏控制系统的可靠性研究意义重大。基于 Arduino 单片机,研究设计了一种新的电子显示屏控制系统。以 PC 机为上位机,向单片机发送显示代码和控制命令,单片机控制显示驱动模块驱动 LED 点阵显示屏进行扫描显示。PC 机与单片机之间的通信采用 ISP 下载编程器来实现。利用按键模块通过单片机对显示屏的显示内容进行翻页和更新控制。
2、关键词:显示屏;可靠性;Arduino;控制The Design of Electronic Display Control System based on ArduinoAbstract: LED displays is widely used in many occasions because of its advantages such as stable, reliable and long life. It is of great significance to strengthen the research of the reliability of electronic disp
3、lay control system. Here introduces a new kind of electronic display control system based on Arduino microcontroller. System uses PC as upper computer.PC send control commands and display code it has stored to the Arduino microcontroller. And arduino microcontroller receives and deals with control c
4、ommand and display code which are from PC. Then drives scan display of the display screen. Communication between PC and the microcomputer can be implemented by using ISP download programmer. At last, page and update the content which is displayed of the billboard by using the key module and all is b
5、ased on the single chip microcomputer. Keywords: electronic display; reliability; Arduino microcontroller1. 系统整体设计本系统硬件的设计采用模块化设计,既能满足模块本身功能又要能够和整个系统兼容,如图 1.1 所示。系统硬件由 Arduino 控制系统,显示扫描电路,显示屏,键盘扫描电路及数据传输部分以及上位机六部分组成。上位机通过数据传输部分向 MCU 系统发送显示代码和控制命令,MCU 系统执行显示命令并将显示代码处理后控制显示部分的显示内容和显示方式。而按键也可以通过键盘扫描电路对
6、显示进行控制。图 1.1 系统硬件组成框图2. 控制系统设计控制系统的核心是 Arduino 单片机。Arduino 是一个基于开放原始码的软硬件平台,具有使用类似 Java、C 语言的 Processing/Wiring 开发环境。Arduino UNO 是系列的一个版本。UNO 的处理器核心是 ATmega328,具有 14 路数字 IO 口(其中 6 路可作为 PWM 输出) ,6 路模拟输入,一个 16MHz 晶体振荡器,一个 USB 口,一个电源插座,一个 ICSP header和一个复位按钮。选定一定数量的 IO 口作为控制口,控制外部的各种器件和数据的输出【2】 。根据功能选择一
7、定的单片机端口添加外围的器件,具体电路如图 2.1 所示。在该系统中,数字接口主要用作 LED 显示数据的行控制输出以及矩阵键盘的控制。具体接法为:矩阵键盘的 x1、x2、x3、x4、y1、y2、y3、y4 分别接10、11、12、A0、A1、A2、A3、A4 接口,点阵模块的连接如图 2.2 所示。图 2.1 控制部分电路图图 2.2 点阵单片机连接图3. 驱动单元3.1 行驱动单元译码电路的功能是为了解决单片机 I/O 端口不足。行译码所用器件为串并转换器74HC138 和锁存器 74HC573。四个 138 级联成 8 线-32 线译码器,三级管 Q1-Q16 接显示屏H1-H8 解决了
8、显示屏供电不足的问题。锁存器 573 的 Q3,Q7 分别接 138 的 G2B,G2A 使能端,实现对 138 的使能控制,达到锁存功能,Q4,Q5,Q6 分别接 138 的 A,B,C 端,A,B,C 为 138译码器的三个地址输入。具体电路如图 3.1 所示图 3.1 行驱动单元电路行译码采用的是芯片 74HC138。如果不采用译码电路完全依靠单片机的端口输出来控制 LED 显示屏显示,需要很多个端口。而采用了译码电路后仅仅需要少量端口便可实现控制显示。大大减少了 I/O 口的占用数目,为单片机扩展其他功能预留下来了空间。74HC138 译码器可接受 3 位二进制加权地址输入(A0,A1
9、 和 A2) ,并当使能时,提供 8个互斥的低有效输出(Y0 至 Y7) 。74HC138 特有 3 个使能输入端:两个低有效(E1 和 E2)和一个高有效(E3) 【4】 。除非 E1 和 E2 置低且 E3 置高,否则 74HC138 将保持所有输出为高。表 1 74HC138 集成译码器功能表3.2 列驱动单元列驱动电路由 74HC595 构成,它具有一个 8 位串入并出的移位寄存器和一个 8 位输出锁存器,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,传送下一行的列数据,达到重叠处理的目的 【5】 。各管脚说明见表 3-2。数据在SH_CP 的上升沿输
10、入,在 ST_CP 的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲 【6】 。移位寄存器有一个串行移位输入(DS) ,和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行 8 位的,具备三态的总线输出,当使能 OE 时(为低电平) ,存储寄存器的数据输出到总线 1。表 3.2 74HC595 管脚说明管脚编号 管脚名 说明1、2、3、4、5、6、7、15 QA-AH 三态输出管脚8 GND 电源地9 SQH 串行数据输出管脚10 SCLR 移位寄存器清零端11 SCK 数据输入时钟线1 引用自 ATmega128 通用实验板手册12
11、RCK 输出存储器锁存时钟线13 OE 输出使能14 SI 数据线15 VCC 电源端工作顺序:单片机先送 1 个 8 位数据到第一个 595 的内部移位寄存器-然后数据会送到内部的输出寄存器-输出,当 MR(10 引脚)为高电平,OE(13 引脚)为低电平时,数据在 SHCP 上升沿进入移位寄存器,在 STCP 上升沿输出到并行端口。具体电路如图 3.2 所示图 3.2 列驱动单元电路3.3 按键模块矩阵键盘用 4 条 I/O 线作为行线,4 条 I/O 线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是 44 个,它能够有效地提高单片机系统中 I/O
12、口的利用率。矩阵键盘的编程方法:(1)先读取键盘的状态,得到按键的特征编码。先从 P1 口的高四位输出低电平,低四位输出高电平,从 P1 口的低四位读取键盘状态。再从 P1 口的低四位输出低电平,高四位输出高电平,从 P1 口的高四位读取键盘状态。将两次读取结果组合起来就可以得到当前按键的特征编码。使用上述方法我们得到 16 个键的特征编码。(2)根据按键的特征编码,查表得到按键的顺序编码。将 16 个按键的特征编码按照按键排列的顺序排成一张特征编码与顺序编码的对应关系表,然后用当前读得的特征编码来查表,当表中有该特征编码时,它所在的位置就是对应的顺序编码。矩阵键盘电路如图3.3 所示。图 3
13、.3 矩阵键盘电路4. 程序设计设计目标和硬件总体结构确定的情况下,软件可以分为主程序,通信程序,静态显示子程序,各种特效显示子程序,键盘控制程序等五个主要部分组成。具体结构如图 4.1 所示。图 4.1 软件功能结构框图4.1 主程序系统软件采用 C 语言编写,按照模块化的设计思路设计。首先分析程序所要实现的功能,程序要实现静态显示,动态显示,按键控制三大功能。其通信程序接收上位机数据,交给主程序处理再通过控制程序选择不同的显示程序进行显示。主程序的工作流程如图4.2 所示。静态显示程序特效显示程序 主程序键盘控制程序通信程序图 4.2 主程序流程图4.2 左移显示程序显示程序分为静态显示程
14、序、左移显示 2 种种显示方式。其中左移程序调用了静态显示程序为子程序。 显示采用的是列扫描的显示方式,选通一列后按照列与数据元素的对应关系第 i 列对应的行数据为数组中的第 i 和第 i+16 个元素。将对应元素的由低至高位依次从端口输出具体做法为将元素向右逻辑移位后再与 0X01 相与,所得结果通过单片机端口输出到串并转换器的 A 端,锁存在锁存器里完成一列数据移位后再将其输出。如此依次循环选通各列来显示所需画面。动态显示程序流程如图 4.3 所示,根据显示数据的存储原理通过改变实际 LED 列与数据逻辑列的方法来实现程序的左右移动。显示数据与列的对应关系为:第 i 列对应的数据为数组中
15、i 和第 2i 个数据。显示数组中,第 1 至 16 个元素的第 8 至第 1 位 LED 显示屏中的第 1 至第 8 行。同理第 17 至 32 个元素的第 8 至第 1 位 LED 显示屏中的第 9 至第 16 行。所以将元素数据进行逻辑位移便能产生左移动的效果。开始读入显示数组显示显示数组元素逻辑左移一位移位次数是否为16NY图 4.3 左移程序流程图4.3 矩阵按键程序的设计4*4 矩阵键盘有 8 个引脚,4 个一组,分别对应行和列,通过按键扫描的方法,对不同行(列)分别输入高低电平,然后读取不同列(行)上的电平,从而知道键盘上的某一按键按下。例如,当第 1 行输出低电平,其他行输出高电平,分别读取依次列上的状态,如果第 1 列为低,结果为(1,1) ,按键为 1,如果第 2 列为低,则结果为(1,2)按键为 2。5 系统调试对矩阵键盘进行调试,利用简单的控制程序测试矩阵按键是否能控制 13 号数字接口上的 LED 等的亮灭。发现有时控制不了,说明焊接存在虚焊情况,然后及时补救,将觉得可能虚焊的点又重新焊了一次,再次测试,没有问题了。然后矩阵按键与单片机的连接进行了检查,方法是接入电源试运行,发现有时运行不稳定,说明接线有时会存在接触不良现象,于是换用了插口比较紧的接线,也解决了这一问题。在软件调试过程中,配合对应硬件电路单独运行某程序功能块,检查是否正确,发现
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。