| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 51单片机——动态数码管实验,小白讲解,相互学习 -> 正文阅读 |
|
[嵌入式]51单片机——动态数码管实验,小白讲解,相互学习 |
多位数码管介绍:
数码管显示原理:
74HC245
和
74HC138
芯片介绍:
74HC245
芯片这里简单简介:详细看芯片中文资料
????????74HC245 是一种三态输出、八路信号收发器,主要应用于大屏显示,以及其 它的消费类电子产品中增加驱动
????????
(
1)主要特性:
? ?①采用CMOS工艺
? ?②宽电压工作范围:3.0V-5.0V
? ?③双向三态输出
? ?④八线双向收发器
? ?⑤封装形式:SOP20、SOP20-2、TSSOP20、DIP20
(
2)管脚功能定义
????????从上面的管脚功能定义说明及真值表可以知道该芯片使用方法很简单,给 OE 使能管脚低电平,DIR 管脚为高电平传输方向是 A->B 输出,DIR 为低电平传输方 向是 B->A,至于输出高电平还是输出低电平取决于输入端的状态,如果输入为 低电平,输出即为低;输入为高电平,输出即为高。如果 OE 使能管脚为高电平, 不论 DIR 管脚是高还是低,输出是高组态。
?????????通常我们使用 74HC245 芯片用作驱动只会让其在一个方向输出,即 DIR 管脚 为高电平,传输方向是 A->B。 74HC138 芯片简单简介:详细看芯片中文资料
????????74HC138D 是一种三通道输入、八通道输出译码器,主要应用于消费类电子产 品。
(
1)主要特性
????????①采用 CMOS 工艺
????????②低功耗
????????③工作电压:3.0V-5.0V
????????④封装形式:SOP16
备注:L低电平? ?H高电平
????????从上面的管脚功能定义说明及真值表可以知道该芯片使用方法很简单,给 E1、E2 使能管脚低电平,E3 管脚为高电平,至于哪个管脚输出有效电平(低电 平),要看 A0,A1,A2 输入管脚的电平状态。如果 A0,A1,A2 都为低电平,则 Y0 输出有效电平(低电平),其他管脚均输出高电平。如果 A0 为高电平,A1, A2 都为低电平,则 Y1 输出有效电平(低电平),其他管脚均输出高电平。其他几种输出大家可以对照真值表查看。如果 E1、E2 使能管脚任意一个为高电平或 者 E3 为低电平,不论输入是什么,输出都为高电平。
????????这里给大家总结一个方法:A0、A1、A2 输入就相当于 3 位 2 进制数,A0 是 低位,A1 是次高位,A2 是高位。而 Y0-Y7 具体哪一个输出有效电平,就看输入
二进制对应的十进制数值。比如输入是 101(
A2,A1,A0),其对应的十进制数
是 5,所以 Y5 输出有效电平(低电平)
硬件设计:
本实验使用到硬件资源如下:
(1)动态数码管模块
(2)74HC138
开发板上的动态数码管模块电路如下图所示:
????????上图电路使用的是 2 个四位一体的共阴数码管组成,即 8 位数码管的段选数 据 a-dp 全部并联一起引出,每位数码管的位选即公共端引出。数码管的段选 a-dp 连接在 74HC245 驱动芯片输出口,由 P0 端口控制。由 P2.2、P2.3、P2.4 管脚控 制 74HC138 译码器输入从而控制数码管位选。
?软件设计
????????main.c 文件内代码非常少也很简单,首先将 51 单片机的头文件包含进来, 然后定义 38 译码器的控制引脚,并将共阴数码管 0-F 段码数据使用数组定义好。 主函数功能也很简单,直接进入 while 循环,在循环体内执行 smg_display()数 码管动态显示函数。该函数是根据动态数码管显示原理所编写,即选中所要显示 的那位数码管,然后发送在该位数码管上所要显示的段码数据,延时一定时间后 在将段选口清零即消隐(消除之前的显示),如此循环 8 次即可实现 8 位数码管 显示。在动态显示中,要注意延时时间,只要保证在人肉眼所能感觉时间之内即 可,让我们看到所要显示的内容就像是同时显示一样。如果时间过长或者过短都 可能会影响数码管的显示效果,大家可以在例程基础上试着修改延时时间观察效果
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 16:39:06- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |