【51单片机】要实现动静态数码管,你首先需要知道这些【数码管项目前置知识】

前言

大家好吖,欢迎来到 YY 滴单片机系列 ,热烈欢迎! 本章主要内容面向接触过单片机的老铁
主要内容含:
在这里插入图片描述

  • 本章节内容为【实现动静态数码管】项目的第一个模块
  • 完整章节:传送门

欢迎订阅 YY滴C++专栏!更多干货持续更新!以下是传送门!

  • YY的《C++》专栏
  • YY的《C++11》专栏
  • YY的《Linux》专栏
  • YY的《数据结构》专栏
  • YY的《C语言基础》专栏
  • YY的《初学者易错点》专栏
  • YY的《小小知识点》专栏
  • YY的《单片机期末速过》专栏
  • YY的《C++期末速过》专栏
  • YY的《单片机》专栏
  • YY的《STM32》专栏
  • YY的《数据库》专栏
  • YY的《数据库原理》专栏

目录

  • 一.前置操作
    • 1.LED数码管介绍
    • 2.位选的基本概念
    • 3. 1位数码管的引脚(10个)定义(应用【位选】概念)
    • 4. 4位1体数码管的引脚(12个)定义
    • 5.138译码器
      • (5.1)138译码器的作用
      • (5.2)138译码器的使能端
      • (5.3)138译码器的输出端
      • (5.4)138译码器的输入端
    • 6.74HC245芯片(双向数据缓冲器)
      • (6.1)74HC245芯片的作用
      • (6.2)74HC245芯片的使能端【OE(LE)引脚】
      • (6.2)74HC245芯片的方向选择端【DIR引脚】
        • (6.2.1)[J21跳线帽]
        • (6.2.2) 数码管模块为什么要加上74HC245芯片?
    • 7.104电容
    • 8. 4位1体排阻部分(限流电阻)

一.前置操作

1.LED数码管介绍

  • 在这里插入图片描述

2.位选的基本概念

  • 在单片机中,位选通常指的是 选择特定的寄存器位或者特定的位操作 。单片机中的寄存器通常是一个二进制数,每一位都代表一个特定的状态或者功能。当进行位选时,我们通常是指通过编程来选择特定的寄存器位,或者对特定的寄存器位进行操作, 比如置位(设置为1)或者清零(设置为0) 。这种操作可以用来控制单片机的各种功能,比如控制输入输出、控制器件的工作状态等。

3. 1位数码管的引脚(10个)定义(应用【位选】概念)

  • 1位数码管
  • 两种连接方式: 共阴极链接,共阳极链接
  • 【3,8引脚】事实上是同一个引脚,引出来两根 ,可以接正也可以接负
  • 数码管的链接实际上符合: 就近原则
    在这里插入图片描述
  • 例:我们要展示数字6,用共阴极的LED:
  1. 位选3,8译码器为0或者低电平
  2. 对应设置A,B,C,D,E,F,G,DP的L口(即7 6 4 2 1 9 10 5)
  3. 如图所示1011 1110 就是这个LED的段码在这里插入图片描述

4. 4位1体数码管的引脚(12个)定义

  • 4位1体数码管
  • 分成4个小的单元,各自小的单元的公共端各自独立(图中12,9,8,6引脚)
  • 剩余位选端为(10 7 4 2 1 10 5 3)
    在这里插入图片描述
  • 例:我们要展示第三个LED的数字1,用共阴极的LED:
  1. 位选8为0或者低电平,【12,9,6】为1
  2. 对应设置A,B,C,D,E,F,G,DP的L口(即11 7 4 2 1 19 5 3)
  3. 如图所示1001 1111 就是这个LED的段码
    在这里插入图片描述

5.138译码器

(5.1)138译码器的作用

  • 138译码器可以用于 选择某个特定的输出端
  • 通常被用于将输入的二进制数据转换成对应的输出信号。它通常有三个输入端和八个输出端。输入端通常是三位二进制数据,而输出端则对应着八种可能的组合。138译码器的作用是将特定的输入编码转换成相应的输出信号,从而实现特定的逻辑功能或控制。

(5.2)138译码器的使能端

  • 使能端:“使能端”是指在数字电路或者数字系统中用来 启用或者禁用某种功能或操作的输入端口 。当使能端为有效状态 时,相应的功能或操作会被激活或者允许执行;而当使能端为无效状态时,相应的功能或操作会被禁用或者停止执行。、
  • 如下图所示,138译码器中的使能端
  • 必须6号引脚接1 ; 4号五号引脚接0,元器件才能工作
  • 实际中并不需要管它,因为其上电就工作
    在这里插入图片描述

(5.3)138译码器的输出端

  • 我们观察输出端的Y0~Y7
  • 上方有横线,代表低电平有效 —— 即此时LED亮,位选为0;

在这里插入图片描述

  • 我们查看开发板图,发现: LED1~8接到的是138译码器的输出端
    在这里插入图片描述

在这里插入图片描述

(5.4)138译码器的输入端

  • 输入端C->B->A,从左到右: 高位到低位,表示一个二进制数
  • 这个2进制是n,就代表Yn有效
  • 有效: 上方有横线,代表低电平有效 —— 即此时LED亮,位选为0;
  • 如果CBA为000,就代表Y0有效,Y0为0
  • 接着再找Yn对应的LED
    在这里插入图片描述

6.74HC245芯片(双向数据缓冲器)

(6.1)74HC245芯片的作用

  • 它的作用是允许数据在 两个方向上 进行传输,同时提供了 数据缓冲和隔离的功能 ,以及 提高驱动能力
  • 双向数据缓冲器通常被用于数字系统中,特别是在多个设备或模块之间进行数据传输时。它可以有效地解决数据传输速度不匹配、数据格式不一致以及数据冲突等问题,从而提高了系统的稳定性和可靠性。

(6.2)74HC245芯片的使能端【OE(LE)引脚】

  • 如图所示, OE(LE)上方有横线,代表低电平有效
    在这里插入图片描述

(6.2)74HC245芯片的方向选择端【DIR引脚】

  • 英文注释为direction(方向)
  • 决定了数据是把左送右边,还是右边读回来
  • DIR接 高电平,把数据输送到右边;
  • DIR接 低电平,把数据读回左边;
    在这里插入图片描述
  • 如电路图所示:DIR引脚接的是LE引脚,也就是J21跳线帽
  • 我们这个静态数码管显示的项目只需要,写数据而不需要读
  • 所以LE接高电平即可, 也就是跳线帽链接LE和VCC
    在这里插入图片描述
    在这里插入图片描述
(6.2.1)[J21跳线帽]
  • 跳线帽是一种用于在电子电路板上进行连接的小组件。它通常由一个塑料外壳和两个金属引脚组成。跳线帽的作用是在电路板上的引脚之间建立连接,从而改变电路的功能或功能
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
(6.2.2) 数码管模块为什么要加上74HC245芯片?
  • 单片机高电平的驱动能力有限,最大电流不能太大
  • 单片机低电平的驱动能力强一些(LED采用低电平点亮会更亮一些)
  • 所以我们要加上 74HC245芯片(双向数据缓冲器) 提高驱动能力
  • 驱动的能力来源——双向数据缓冲器上的电源

7.104电容

  • 滤波电容是一种用于电路中的被动元件,其主要作用是在电路中实现 滤波 功能。滤波电容可以通过对不同频率的信号进行响应,将高频或低频信号滤除或通过,从而实现对信号的滤波处理
  • 作用:用来稳定电源
  • 单位:F(法拉)
    在这里插入图片描述

8. 4位1体排阻部分(限流电阻)

  • 四位一体
    在这里插入图片描述
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/674034.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity接入GVoice腾讯实时语音

Unity接入GVoice腾讯实时语音 一、介绍二、注册GVoice创建项目语音服务1.创建项目2.申请语音权限3.项目管理查看SDK初始化的一些参数和基本信息4.GVoice检测 三、SDK下载SDK是分为两种类型:独立版集成板 SDK放入Unity工程中 四、语音代码写法五、GVoice踩坑语音权限…

【canvas】获取鼠标点击位置坐标的颜色信息

在项目当中,要实现某业务需求例如PS魔棒功能时,则需要获取点击坐标的颜色信息。 功能不复杂,代码也很少,一看便知~~ 核心API为getImageData,传入4个参数,前2个为点击坐标xy,后2个都传1&#xf…

python调用golang中函数方法

一、原因说明:由于simhash方法有多种实现方式,现python中simhash方法与golang中的不一样,需要两者代码生成结果保持一致,故采用python中的代码调用golang编译的so文件来实现。 环境配置:①Windows10系统要有gcc环境&a…

ADSelfService Plus发布离线MFA功能,强化远程工作安全性

ManageEngine ADSelfService Plus推出离线多因素身份验证,提升远程工作安全性确保通过先进的验证方法对企业数据进行授权访问,无论时间、地点或连接问题如何允许远程用户安全进行身份验证,即使未连接到认证服务器或互联网使用高度安全的基于T…

Vue前端框架--Vue工程项目问题总结{脚手架 Vue-cli}

Vue脚手架部署问题总结 我所遇到的一共两大问题 只有先执行npm install之后 才能run serve 否则会报错 vue-cli-serve不是内部或者外部的命令,也不是可运行的程序或者批处理文件的错误 1. 运行npm install会报错 2. 运行npm run serve报错 nodejs官网为 https://no…

C#中实现串口通讯和网口通讯(使用SerialPort和Socket类)

仅作自己学习使用 1 准备部份 串口通讯需要两个调试软件commix和Virtual Serial Port Driver,分别用于监视串口和创造虚拟串口。网口通讯需要一个网口调试助手,网络上有很多资源,我在这里采用的是微软商店中的TCP/UDP网络调试助手&#xff0…

cleanmymacX和腾讯柠檬哪个好用

很多小伙伴在使用Mac时,会遇到硬盘空间不足的情况。遇到这种情况,我们能做的就是清理掉一些不需要的软件或者一些占用磁盘空间较大的文件来腾出空间。我们可以借助一些专门的清理工具,本文中我们来推荐几款好用的Mac知名的清理软件。并且将Cl…

SQL在云计算中的新角色:重新定义数据分析

文章目录 1. 云计算与数据分析的融合2. SQL在云计算中的新角色3. 分布式SQL查询引擎4. SQL-on-Hadoop解决方案5. SQL与其他数据分析工具的集成6. 实时数据分析与SQL7. SQL在云数据仓库中的角色8. 安全性与隐私保护9. SQL的未来展望《SQL数据分析实战(第2版&#xff…

14.scala隐式转换

目录 概述实践代码执行结果 结束 概述 隐式转换:偷偷的(隐式)对现有功能进行增强(转换) 实践 代码 package com.fun.scalaimport java.io.File import scala.io.Sourceobject ImplicitApp {def main(args: Array[String]): Unit {// implicit 2 to 等价 &…

vuecli3 执行 npm run build 打包命令报错:TypeError: file.split is not a function

问题 今天有个项目在打包的时候遇到了一个问题,就是执行 npm run build 命令的时候报错了,如下: 解决 我排查了一下,模拟代码如下:在打包的时候用了 MinChunkSizePlugin const webpack require("webpack"…

LabVIEW多任务实时测控系统

LabVIEW多任务实时测控系统 面对现代化工业生产的复杂性和多变性,传统的测控系统已难以满足高效、精准、可靠的监控和控制需求。因此,开发一种基于LabVIEW的智能测控系统,能够提高生产效率,保证生产安全,是解决现代工…

怎么清理电脑内存?详细图文教程分享!

“我的电脑用了才不到一年,现在内存总是不足。想问问大家平常遇到电脑内存不足的情况时有什么好用的清理方法吗?” 随着电脑使用时间的增长,内存占用可能会不断增加,导致电脑运行缓慢。为了保持电脑的良好性能,定期清理…

手把手教你实现Kmeans聚类,不使用MATLAB工具箱,纯手写matlab代码免费获取,UCI数据集为例...

K均值(K-means)是一种常用的聚类算法,用于将数据集划分为K个不同的组(簇),使得每个数据点属于与其最近的均值点所代表的簇。K均值算法的基本思想是通过迭代优化,将数据点分配到K个簇中&#xff…

【RT-DETR有效改进】重参数化模块DiverseBranchBlock助力特征提取(附代码 + 修改教程)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的是改进机制是一种替换多元分支模块(Diverse Branch Block),Diverse Branch Block (DBB) 是一种用于增强卷积神经网络性能的结构…

牛客网SQL进阶137:第二快/慢用时之差大于试卷时长一半的试卷

官网链接: 第二快慢用时之差大于试卷时长一半的试卷_牛客题霸_牛客网现有试卷信息表examination_info(exam_id试卷ID, tag试卷类别,。题目来自【牛客题霸】https://www.nowcoder.com/practice/b1e2864271c14b63b0df9fc08b559166?tpId240 0 问题描述 试…

基于tomcat的https(ssl)双向认证

一、背景介绍 某个供应商服务需要部署到海外,如果海外多个地区需要部署多个服务,最好能实现统一登录,这样可以减轻用户的使用负担(不用记录一堆密码)。由于安全问题(可能会泄露用户数据)&#x…

【数据结构】二叉树的三种遍历(非递归讲解)

目录 1、前言 2、二叉树的非递归遍历 2.1、先序遍历 2.2、中序遍历 2.3、后序遍历 1、前言 学习二叉树的三种非递归遍历前,首先来了解一下递归序: 递归序就是按照先序遍历的顺序,遇到的所有结点按顺序排列,重复的结点也必须记…

深度学习(14)--x.view()详解

在torch中,常用view()函数来改变tensor的形状 查询官方文档: torch.Tensor.view — PyTorch 2.2 documentationhttps://pytorch.org/docs/stable/generated/torch.Tensor.view.html#torch.Tensor.view示例 1.创建一个4x4的二维数组进行测试 x torch.…

NC6X单点登录设计文档说明

前言 因为业务场景需要,第三方系统有些工作需要经常到NC系统里做,如果每次去NC系统做业务单据,都需要反复登录,导致客户使用体验不是很好,所以需要开发实现从第三方系统单点登录到NC系统,提高客户满意度。 …

零基础学编程系列,从入门到精通,中文编程开发语言工具下载,编程构件容器件之控制面板构件用法

零基础学编程系列,从入门到精通,中文编程开发语言工具下载,编程构件容器件之控制面板构件用法 一、前言 编程入门视频教程链接 https://edu.csdn.net/course/detail/39036 编程工具及实例源码文件下载可以点击最下方官网卡片——软件下载…