logo资料库

74HC595驱动两位数码管.doc

第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
资料共11页,剩余部分请下载后查看
在前文讲述 1 位 LED 数码管显示的基础之上,本文进一步介绍 2 位 LED 数码管的工作原理 及用法。 1.1 2 位 LED 数码管工作原理 与 1 位数码管不同的是,2 位数码管显示时要进行位选。如图 1.2 所示,公共脚 10 决定位 DIG1 是否有效,公共脚 5 决定位 DIG2 是否有效。 图 1.1 与图 1.2 显示了 2 位数码管引脚分布和内部电路设计。其中笔段分布如图 1.1 所示,引脚对应笔段分布如图 1.2 所示。 数码管笔段 图 1.1 2 位 图 1.2 2 位数码管引脚图 2 位数码管引脚分如: 1) 公共脚:10、5 ; 2) DIG:A-3 B-9 C-8 D-6 E-7 F-4 G-1 DP- 2。 1.2 74HC595 简介 74HC595 是一款具有 8 位移位寄存器和一个存储器,三态输出功能的驱动芯片。 移位寄存器和存储器分别具有独立的时钟信号。数据在 SHCP 的上升沿输入,在 STCP 的上升
沿进入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个 脉冲。移位寄存器有一个串行移位输入(DS),和一个串行输出(Q7’),和一个异步的低 电平复位(MR),存储寄存器有一个并行 8 位的,具备三态的总线输出,当使能 OE 时(为 低电平),存储寄存器的数据输出到总线。 1.3 74HC595 引脚图 74HC595 引脚排布如图 1.3 所示,引脚功能见表 1.1。 表 1.1 74HC595 引脚功能 图 1.3 硬件电路设计 1.3.1 设计原理 本设计采用 LPC2103 自带的硬件 SPI 接口与 74HC595 进行数据传输。74HC595 将 LPC2103 发送过来的 8 位串行数据转换成 8 位并行数据来驱动 2 位共阳数码管。与 1 位数码 管类似,2 位 LED 数码管的输入端在 5 V 电源或高于 TTL 高电平(3.5 V)的电路信号相接时,
一定要串加限流电阻,以免损坏器件。如图 1.4 所示 2 位数码管设计原理图。位选控制脚如 表 1.2 所示。由于本设计采用共阳数码管,所以 2 位数码管位选引脚选择用 LPC2103 的 P0.8 与 P0.9 控制。 当 P0.8 输出高电平(3.3V)时,位选 com1 有效,即 LED1 选通; 当 P0.9 输也高电平(3.3V)时,位选 com2 有效,即 LED2 选通。 表 1.2 2 位数码管位选控制 图 1.4 2 位共阳数码管设计原理图 1.3.2 元器件选择 由于现在市场上所卖的 74HC595 大多都为贴片式 SO16,为了便于学习者在多功能 板上焊接,在本设计中选用贴片转直插的 SO16 PACK 板实现贴片转直插功能。当然,学习如 果能买到直插式 74HC595 芯片那就更好,直接把直插式 74HC595 焊在多功能板上即可。 对于数码管的选择,学习者可自由选择,共阳共阴都可以。如果选择共阴 2 位数码, 硬件电路的极性刚好与本设计相反。 限流电阻选择直插式 470 欧左右即可,保证不烧坏数码管即可,建议选择 470 欧。
件选择列表 表 1.3 元器 1.3.3 布局 由于 2 位数码管与 1 位数码管在硬件上仅多了位选引脚,因此分析 2 位数码管的原 理图及各元器件的布局与走线,与上节讲的 1 位数码管类似。在本设计中为了走线方便,降 低学习者的焊接难度, 2 位数码管与 74HC595 采用自由连接方式如图 1.5 所示。当然,这 样做会增加软件设计的工作量,后面会做说明。 ------------------------------------------------------------------------------- ------------------- ☛ 小贴士:学习者不一定按照本设计所采用的自由连接方式,可具体根据自己所选 元器件规格及电路原理来设计连接方式。总之,不管采用哪种走线方式尽量保证走线方便, 焊接容易,使最终效果简单美观大方即可。 ------------------------------------------------------------------------------- -------------------
图 1.5 自由连接 1.3.4 焊接 按照图 1.5 所示自由连接方式进行焊接,就会避免在走线中使用交叉线的麻烦,从 而使整个板子焊接完成没有使用一根跳线,并采用“拖锡”的方式连线,简单美观。焊接完 成最终效果如图 1.6 所示。 ------------------------------------------------------------------------------- ------------------- ☛ 小贴士:如果学习者实在不能保证最终效果美观大方,最好在焊接之前模拟“万 能板”在草稿纸上画出走线路径,这样避免在实际焊接过程中走交叉线,尽可能保证走线的 简单美观,从而给人一种赏心悦目的感觉。 ------------------------------------------------------------------------------- ------------------- 图 1.6 完成效果 整体效果如图 1.7 所示。
图 1.7 整 体效果图 1.4 程序设计 1.4.1 段码表生成 前面电路设计时,数码管和 74HC595 采用自由连接的方式(如图 1.5 所示),所以 段码不能采用标准段码,需另行设计。下面介绍一种生成段码表的简单方法。  测试步骤一 首先发送字符‘0x7F’,参考代码如下文所示。 MSPI_SendData(0x7F); 实验现象:数码管笔段 a 被点亮。 实验现象分析:当向 74HC595 发送‘0x7F’时,Q0 引脚输出低电平,Q1~Q7 输出高 电平。 可以得出 Q0 引脚在硬件上对应数码管笔段 a,低电平驱动数码管笔段发光。  测试步骤二 发送字符‘0xF7’,更改上文代码为: MSPI_SendData(0xF7); 实验现象:数码管笔段 a 熄灭,笔段 b 被点亮。 实验现象分析:当向 74HC595 发送‘0xF7’时,Q1 引脚输出低电平,Q0、Q2~Q7 输出 高电 平。从而可以判断出 Q1 引脚硬件上对应数码管笔段 b,低电平驱动笔段发光。  测试步骤三 在了解如何驱动 a、b 笔段发光的基础之上,更改测试字符,依次向 74HC595 发送 0xFB、0xFE、0xFD、0xBF、0xEF、0xDF 六个数据,即可分别点亮 c、d、e、f、g、dp 六个 笔段。  测试结论 参考以上测试方法,用户在不清楚硬件电路连接的情况下,逐次向 74HC595 发送测 试数据,即可理清 74HC595 引脚与数码管笔段的对应关系。同时,也可得出数码管笔段与测 试字符的对应关系,如表 1.4 所列。
表数值 表 1.4 段码 为了在 7 端数码管显示数字或者字符,控制器送出的字符需要进行转换,真值表的 计算如表 1.4 所列。表中列出了 7 段数码管上能够显示的常用字符的真值表。如果用户需要 显示其它字符,可根据表 1.5 所示的方法设置。 ------------------------------------------------------------------------------- ------------------- ☛ 小贴士:由于不同的硬件电路,段码表的测试数据有所区别,从而导致段码表和 数码管真值表不一样,但笔段测试方法与数码管真值表生成原理是相同的。 ------------------------------------------------------------------------------- ------------------ 管真值表 表 1.5 七段共阳数码
本示例程序使用 LPC2103 的硬件 SPI 接口,设置 LPC2103 为 SPI 主机模式,与 74HC595 进行通讯。SPI 初始化见程序清单 1.1。 程序清单 1.1 SPI 初 始化程序 LPC2103 通过硬件 SPI 接口把数据发送给 74HC595,数据发送程序见程序清单 1.2。 程序清单 1.2 数据发 送程序
分享到:
收藏