基于51单片机的led显示设计内容摘要:

控制一路输出,即会有 16 路输出。 如果一行 64 点全部点亮,则通过 74LS154 的电流将达 640 mA,而 实际上, 74LS154中北大学信息商务学院 2020 届毕业设计说明书 第 15 页 共 41 页 译码器提供不了足够的吸收电流来同时驱动 64 个 LED 同时点亮,因此,应在 74LS154每一路输出端与 16 64点阵显示器对应的每一行之间用一个三极管来将电流信号放大,本文选用的是达林顿三极管 TIP127。 这样, 74LS154 某一输出脚为低电平时,对应的三极管发射极为高电平,从而使点阵显示器的对应行也为高电平。 其引脚 如图 所 示。 图 显示了 74LS154 的输入输出逻辑关系图。 图 74LS154 引脚图 图 74LS154 逻辑功能图 行驱动电路设计 上 面已经论述过行扫描原理,下图 显示了行驱动电路的具体连接方式, 图中只画出了两行的驱动电路,但足以 题。 74LS154 的输入引脚 A、 B、 C、 D分别和单片机的四个 I/O 口相连,单片机控制 I/O 口产生 16 种不同的输入状态,进而使得 74LS154 分别驱动 16 64点阵 LED 的 16行。 中北大学信息商务学院 2020 届毕业设计说明书 第 16 页 共 41 页 图 行扫描示意电路图 16 64点阵列扫描电路 74HC595 介绍 系统采用 74HC595[9]作为数据锁存。 74HC595 是一个八位串行输入三态并行输出的移位寄存器,其内部结构原理 如图 所示。 其引脚 如图 所示 包括: A串行数据输入端口; LATCH CLOCK 存储寄存器的输入时钟; SHIFT CLOCK 移位寄存器的输入时钟; OUTPUT ENABLE 对输入数据的输出使能控制; HSQ 串入数据的输出; AQ HQ 是串入数据的并行输出。 从 A 口输入的数据可在移位寄存器的 SHIFT CLOCK 脚上升沿的作用下输入到74HC595 中,并在 LATCH CLOCK 脚的上升沿作用下将输入的 数据锁存在 74HC595 中,这样,当 OUTPUT ENABLE 为低电平时,数据便可并行输出。 为了避免与 PC 机串口输入的数据相互干扰, 系统 使用模拟串口 ~ 来分别输出串行数据、移位时钟 SHIFT CLOCK、存储信号 LATCH CLOCK 和并行输出的使能信号 OUTPUT ENABLE。 中北大学信息商务学院 2020 届毕业设计说明书 第 17 页 共 41 页 图 74HC595 功能结构图 图 74HC595 引脚图 列扫描电路设计 列扫描电路 [10]的实现是 将 8 片 74HC595 进行级连, 通过 共用一个移位时钟 SHIFT CLOCK 及数据锁 存信号 LATCH CLOCK。 这样,当第一行需要显示的数据经过 8 8=64 个SHIFT CLOCK 时钟后便可将其全部移入 74HC595 中,此时还将产生一个数据锁存信号LATCH CLOCK 将数据锁存在 74HC595 中,并在使能信号 OUTPUT ENABLE 的作用下,使串入数据并行输出;同时由行扫描控制电路产生信号使第一行扫描管导通,相当于第一行LED 的正端都接高,显然,第一行 LED 管的亮灭就取决于 74HC595 中的锁存信号;此外,在第一行 LED 管点亮的同时,再在 74HC595 中移入第二行需要显示的数据,随后 将其锁存,同时由行扫描控制电路将第一行扫描管关闭而接通第二行,使第二行 LED 管点亮,中北大学信息商务学院 2020 届毕业设计说明书 第 18 页 共 41 页 以此类推,当第十六行扫描过后再回到第一行,这样,只要扫描速度足够高,就可形成一幅完整的文字或图像。 图 列扫描电路原理示意图 具体列扫描电路连接方式 如图 所示,为了说明问题,上图只画了两片74HC595 级联控制 16 列点阵 LED 显示,对于 16 64点阵的 64 列扫描电路,同样是由 8 片 74HC595 级联而成,这 8片 74HC595 有同一个 SHIFT CLOCK 移位寄存器的输入时钟 、同一个 LATCH CLOCK 存 储寄存器的输入时钟和同一个 OUTPUT ENABLE 对输入数据的输出使能控制端。 中北大学信息商务学院 2020 届毕业设计说明书 第 19 页 共 41 页 串口通信电路 图 RS232 串口扩展电路图 为了方便地更新 16 64 点阵 LED 显示数据,系统设计了专门和上位机进行通信的RS232 串行接口 [11][12](图 )。 采用 美信公司专门为电脑的 RS232 标准串口设计的单电源电平转换芯片 MAX232 芯片 ,其主要特点有: ( 1) 、 符合所有的 RS232C 技术标准 ( 2) 、只需要单一 +5V 电源供电 ( 3) 、片载电荷泵具有升压、电压极性反转能力,能够产生 +10V 和 10V 电压 V+、V ( 4) 、功耗低,典型供电电流 5mA ( 5) 、内部集成 2 个 RS232C 驱动器 ( 6) 、内部集成两个 RS232C 接收器 ( 7) 、高集成度,片外最低只需 4 个电容即可工作。 其引脚功能如下: 第一部分 是电荷泵电路。 由 6 脚和 4 只电容构成。 功能是产生 +12v和 12v 两个电源,提供给 RS232 串口电平的需要。 第二部分是数据转换通道。 由 1 1 1 14 脚构成两个数据通道。 其中 13 脚( R1IN)、 12 脚( R1OUT)、 11 脚( T1IN)、 14 脚( T1OUT)为第一数据通道。 8脚( R2IN)、 9脚( R2OUT)、 10 脚( T2IN)、 7 脚( T2OUT)为第二数据通道。 TTL/CMOS中北大学信息商务学院 2020 届毕业设计说明书 第 20 页 共 41 页 数据从 T1IN、 T2IN 输入转换成 RS232 数据从 T1OUT、 T2OUT 送到电 脑 DB9 插头; DB9插头的 RS232 数据从 R1IN、 R2IN 输入转换成 TTL/CMOS 数据后从 R1OUT、 R2OUT 输出。 第三部分是供电。 15脚 GND、 16脚 VCC( +5v)。 中北大学信息商务学院 2020 届毕业设计说明书 第 21 页 共 41 页 4 系统软件设计及仿真结果 软件开发平台及开发语言介绍 Keil 开发平台 Keil C51[13]是 美国 Keil Software 公 司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比, C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。 Keil 提供了包括 C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境( uVision)将这些部分组合在一起。 运行 Keil 软件需要 WIN9 NT、 WIN20 WINXP 等操作系统。 使用独立的 Keil 仿真器时, 要 注意 以下 事项 : ( 1) 仿真器标配 的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。 ( 2) 仿真器上的复位按钮只复位仿真芯片,不复位目标系统。 ( 3) 仿真芯片的 31 脚( /EA)已接至高电平,所以仿真时只能使用片内 ROM,不能使用片外 ROM;但仿真器外引插针中的 31 脚并不与仿真芯片的 31 脚相连,故该仿真器仍可插入到扩展有外部 ROM(其 CPU 的 /EA 引脚接至低电平)的目标系统中使用。 其工作环境 如图 所示。 中北大学信息商务学院 2020 届毕业设计说明书 第 22 页 共 41 页 图 Keil 工作界面图 proteus 开发软件 Proteus 软件 是英国 Labcenter electronics 公司出版的 EDA 工具软件 (该软件 中国 总代理为广州风标电子技术有限公司)。 它不仅具有其它 EDA 工具软件的仿真功能,还能仿真单片机及外围器件。 它是目前最好的仿真单片机及外围器件的工具 [14]。 广泛 受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。 Proteus 是世界上著名的 EDA 工具 (仿真软件 ),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从概念到产品的完整设计。 是目前世界上唯一将电路仿真软件、 PCB 设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持 805 HC1 PIC10/12/16/18/24/30/DsPIC3 AVR、 ARM、 8086 和 MSP430等。 其主要功能模块包括: ( 1)智能原理图设计( ISIS) ; ( 2)完善的电路仿真功能( Prospice) ; ( 3)独特的单片机协同仿真功能( VSM) ; ( 4)实用的 PCB 设计平台。 具体仿真实验就是 在 PROTEUS 绘制好原理图后,调入已编译好的目标代码文件:*.HEX, 这样 可以在 PROTEUS 的原理图中看到模拟的实物运行状态和过程。 其工作环境如图 所示。 图 Proteus 工作界面图 中北大学信息商务学院 2020 届毕业设计说明书 第 23 页 共 41 页 单片机 C 语言介绍 C 语言是一种面向过程的计算机 程序设计语言 ,它是目前众多 计算机语言 中举世公认的优秀的结构程序设计语言之一。 它由美国 贝尔 研究所的 于 1972 年推出。 1978 后, C 语言已先后被移植到大、中、小及微型机上。 C语言发展如此迅速,而且成为最受欢迎的语言之一,主要因为它具有强大的功能,归纳起来 C语言 [17]具有下列特点: (1)语言简洁、紧凑,使用方便、灵活。 (2)运算符丰富。 (3)数据结构丰富,具有现代化语言的各种数据结构。 (4)具有结构化的控制语言 (如 if„ else 语句、 while 语句、 do„ while 语句、 switch 语句、 for 语句 )。 (5)语法限制不太严格,程序没计自由度大。 (6)C 语言能进行位 (bit)操作。 (7)生成目标代码质量高,程序执行效率高。 (8)用 C 语言写的程序可移植性好 (与汇编语言相比 )。 C51 是一种专门针对 51 系列微处理器的 C 开发工具,它提供了丰富的库函数,具有很强的数据处理能力,编程中对 8051 寄存器和存储器的分配均由编译器自动管理,因而通常用 C51 来编写主程序。 当然,有时也需要在 C程序中调用一些用汇编 A51 编写的子程序。 例如,以前用汇编语言编写的子程序、要求较高的处理速度而必须用更简练的汇编语言编写的特殊函数或因时序要求严格而不得不使用灵活性更强的汇编语言编写的某些接口程序等 等。 另一方面,在以汇编语言为主体的程序开发过程中,如果涉及到复杂的数学运算,往往需要借助 C语言工具所提供的运算库函数和强大的数据处理能力,这样就要求在汇编中调用 C 函数。 中北大学信息商务学院 2020 届毕业设计说明书 第 24 页 共 41 页 系统软件流程图 主程序流程图 开 始系 统 初 始 化串 行 中 断 初 始 化配 置 串 行 中 断开 总 中 断 , 开 串 行中 断调 用 显 示 子 程 序 图 主程序流程图 图 显示了系统正常工作的主要流程。 中北大学信息商务学院 2020 届毕业设计说明书 第 25 页 共 41 页 串行中断子程序流程图 进 入 中 断关 中 断是 否 起 始 字节。 查 询 R I ,接 收 下 一 个字 节是 否 结 束。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。