当前位置: 首页 > news >正文

单片机学习笔记 5. 数码管静态显示

更多单片机学习笔记:
单片机学习笔记 1. 点亮一个LED灯
单片机学习笔记 2. LED灯闪烁
单片机学习笔记 3. LED灯流水灯
单片机学习笔记 4. 蜂鸣器滴~滴~滴~


目录

0、实现的功能

1、Keil工程

1-1 数码管显示原理

1-2 静态与动态显示

1-3 74HC573锁存器的工作原理

1-4 上拉电阻的作用

1-5 原理图

2、代码实现

Q:发现如果没有代码最后一行的while(1),除了亮1之外,其他数码管还会亮!WHY?


0、实现的功能

        数码管的静态显示

1、Keil工程

1-1 数码管显示原理

        数码管在生活中运用的已经很广泛了。该板子用的是共阴极,可以拿万用表测数码管的公共端和任意一个管脚,来判断是共阴还是共阳极。
        不同端口控制不同管脚,给出共阴极的数码码表

1-2 静态与动态显示

        数码管的a b c d e是段选,P0口控制哪个管脚亮灭;公共脚GND是位选,P0口控制选择8个数码管中的某一个。静态显示就是让显示出的数字保持不变的状态,直到下一次输入新的状态

1-3 74HC573锁存器的工作原理

        IO口资源很宝贵,所以尽量增加外设电路的可操作性。首先OE是低电平有效,否则输出高阻态。其次就是LE的状态,高电平时,随输入D变化而变化;低电平时,锁存上一状态数据

1-4 上拉电阻的作用

        上拉电阻主要是可以钳位在高电平,且限流
        P0口不是准双向口,没有上拉电阻。开漏状态只能输出低电平,不能输出高电平

        P1 P2 P3口是准双向口,是有上拉电阻的。可以输出高低电平。所以要在P0加上拉电阻,实现输出高电平的效果

1-5 原理图

        实际上就是P0口的分时复用,P0口就8个口,但是要先控制选择哪个数码管(要8个管脚控制),再控制亮什么数字(要8个管脚控制)。

        为了同时实现这些条件,就需要用到锁存器,先位选出哪个数码管工作,锁存一下数据(因为一会要改变P0口数据实现亮什么数字),再段选出亮什么数字,再锁存一下

        U8是位选,先选择亮哪个数码管,共阴的位选是接地的,置0即可;U9是段选,控制亮的数字,置1即可

2、代码实现

#include <reg52.h>
#include <intrins.h>#define uchar unsigned char
#define uint unsigned intsbit WE = P2^7; //锁存器位选,U8的LE,选择哪个数码管
sbit DU = P2^6; //锁存器段选,U9的LE,控制亮什么数字//延时模块
//void delay(uint z)
//{
//	uint x;
//	uint y;
//	for(x = z; x > 0; x--)
//		for(y = 114; y > 0; y--);
//}void main()
{WE = 1;//位选锁存器打开P0 = 0xfe;//选择第一个数码管WE = 0;	//关上位选锁存器,进入锁存DU = 1;//段选锁存器打开P0 = 0x06;//亮的数字为1DU = 0;//关上段选锁存器,进入锁存WE = 1;//位选锁存器打开P0 = 0x0;//选择第二个数码管WE = 0;	//关上位选锁存器,进入锁存DU = 1;//段选锁存器打开P0 = 0x5B;//亮的数字为2DU = 0;//关上段选锁存器,进入锁存while(1){}	
}

        这段代码会发现结果只显示2,因为静态显示当下一个操作来的时候,上一个锁存的数据就没了。实物展示:

        此时静态显示只能亮同一个数字,想要同时亮多个不一样的数字需要把代码写到循环里


Q:发现如果没有代码最后一行的while(1),除了亮1之外,其他数码管还会亮!WHY?

相关文章:

单片机学习笔记 5. 数码管静态显示

更多单片机学习笔记&#xff1a;单片机学习笔记 1. 点亮一个LED灯单片机学习笔记 2. LED灯闪烁单片机学习笔记 3. LED灯流水灯单片机学习笔记 4. 蜂鸣器滴~滴~滴~ 目录 0、实现的功能 1、Keil工程 1-1 数码管显示原理 1-2 静态与动态显示 1-3 74HC573锁存器的工作原理 1-…...

ValueError: not enough values to unpack (expected 2, got 1) 解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

java基础知识(常用类)

一、包装类&#xff08;Wrapper) &#xff08;1&#xff09;包装类与基本数据的转换 装箱&#xff1a;基本类型->包装类型 拆箱&#xff1a;包装类型->基本类型 java5以后是自动装箱和拆箱的方式&#xff0c;自动装箱底层调用的是valueOf方法&#xff0c;比如Integer.…...

Selenium+Java(19):使用IDEA的Selenium插件辅助超快速编写Pages

前言 或是惊叹于Selenium对于IDEA的支持已经达到了这样的地步,又或是由于这个好用的小工具的入口就在那里,它已经陪伴了我这么久,而我这么久的时间却都没有发现它。在突然发现这个功能的一瞬间,真的是喜悦感爆棚,于是赶快写下了这篇文章。希望可以帮助到其他同样在做UI自动…...

决策树分类算法【sklearn/决策树分裂指标/鸢尾花分类实战】

决策树分类算法 1. 什么是决策树&#xff1f;2. DecisionTreeClassifier的使用&#xff08;sklearn&#xff09;2.1 算例介绍2.2 构建决策树并实现可视化 3. 决策树分裂指标3.1 信息熵&#xff08;ID3&#xff09;3.2 信息增益3.3 基尼指数&#xff08;CART&#xff09; 4. 代码…...

深入理解 Spring Boot 的 WebApplicationType

1. 前言 在 Spring Boot 应用程序启动过程中,WebApplicationType 是一个重要的概念,它决定了应用程序是以 Web 应用程序的形式运行还是以非 Web 应用程序的形式运行。本文将详细探讨 WebApplicationType 的工作机制及其在实际项目中的应用。 2. 什么是 WebApplicationType?…...

摄影:相机控色

摄影&#xff1a;相机控色 白平衡&#xff08;White Balance&#xff09;白平衡的作用&#xff1a; 白平衡的使用环境色温下相机色温下总结 白平衡偏移与包围白平衡包围 影调 白平衡&#xff08;White Balance&#xff09; 人眼看到的白色&#xff1a;会自动适应环境光线。 相…...

Python网络爬虫技术及其应用

Python网络爬虫技术及其应用 在当今数字化时代&#xff0c;互联网已经成为信息传播的主要渠道。海量的数据每天都在互联网上产生&#xff0c;这些数据对于企业决策、市场分析、科学研究等有着极其重要的价值。然而&#xff0c;如何高效地收集并利用这些数据成为了一个挑战。Py…...

鸿蒙学习笔记:ArkUI概述

ArkUI是构建分布式应用界面的声明式UI开发框架。组件是界面搭建最小单位&#xff0c;页面是最小调度分隔单位。其有诸多特征&#xff0c;如内置丰富多态UI组件、多样布局、多种动画及绘制能力、交互事件适配多输入设备等&#xff0c;还有平台API通道与两种开发范式。 JS、TS、…...

Selenium 在自动化测试中的应用

在自动化测试中&#xff0c;Selenium是一种非常流行的工具&#xff0c;它允许开发者通过编程的方式与Web浏览器进行交互&#xff0c;模拟用户操作&#xff0c;如点击按钮、填写表单、导航网页等。 1. Selenium 简介 Selenium是一个支持多种浏览器的Web自动化测试工具&#xff…...

python3 Flask应用 使用 Flask-SQLAlchemy操作MySQL数据库

一、环境搭建 下载命令&#xff1a; pip install flask flask-sqlalchemy pymysql 二、创建项目结构 yourProjectFolder/ |—— app.py |—— config.py |—— models.py |__ mydb.py 三、基本使用 3.1 config.py 进行数据库连接配置 import osbasedir os.path.abspat…...

Python学习——猜拳小游戏

import random player int(input(“请输入&#xff1a;剪刀 0&#xff0c;石头 1&#xff0c;布2”)) computer random.randint(0,2)# print(“玩家输入的是%d&#xff0c;电脑输入的是%d” %(player,computer)) 用于测试 if (player 0) and (computer 0) or (player 1) a…...

递归-迭代

24. 两两交换链表中的节点 Leetcode 24 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 递归解法 // 注意&#xff1a;cpp …...

恋爱通信史之完整性

在前面的章节中&#xff0c;介绍了对通信消息的加密&#xff0c;可以保证保密性(机密性)。虽说中间人无法解密通信消息的内容&#xff0c;但是可以篡改通信的消息。在接受者视角来看&#xff0c;是无法识别通信消息是否被篡改。因此&#xff0c;必须引入一种机制&#xff0c;保…...

Docker 容器的初始化设置

虽然现在Conntainerd 大有取代Docker作为容器运行时的趋势&#xff0c;但是docker还是有自己的优势在。尤其是对于开发者来讲&#xff0c;使用Docker 比使用 containerd 方便很多&#xff0c;尤其是在Docker Desktop等工具的加持下。 本文主要面向Docker的初、中级学者&#xf…...

密码编码学与网络安全(第五版)答案

2.4题&#xff1a; 通过如下代码分别统计一个字符的频率和三个字符的频率&#xff0c;"8"——"e"&#xff0c;“&#xff1b;48”——“the”&#xff0c;英文字母的相对使用频率&#xff0c;猜测频率比较高的依此为&#xff09;&#xff0c;t,*,5&#xf…...

C++初阶(十四)--STL--vector的模拟实现

文章目录 一、vector的基本结构 二、默认成员函数的实现 1.构造函数 2.拷贝构造函数 3.赋值运算符重载 4. 析构函数 三、迭代器相关函数 begin和end 四、容量和大小相关函数 size capacity reserve resize empty 五、修改容器的函数 push_back pop_back insert…...

贴代码框架PasteForm特性介绍之query,linkquery

简介 PasteForm是贴代码推出的 “新一代CRUD” &#xff0c;基于ABPvNext&#xff0c;目的是通过对Dto的特性的标注&#xff0c;从而实现管理端的统一UI&#xff0c;借助于配套的PasteBuilder代码生成器&#xff0c;你可以快速的为自己的项目构建后台管理端&#xff01;目前管…...

高防IP如何构建安全高效的数字政务新生态

随着数字化转型浪潮的日渐汹涌&#xff0c;政务行业也在朝着智慧政务的方向高速迈进&#xff0c;提升了为民服务的整体效率。然而&#xff0c;凡事都有双面性&#xff0c;随着政务服务线上化的深入发展&#xff0c;网络安全威胁也日益严峻。黑客攻击、DDoS攻击、CC攻击等安全事…...

数据结构与算法——1122—复杂度总结检测相同元素

1、复杂度总结 1、时间复杂度计算遵循的原则 1、复杂度与其具体的常系数无关&#xff08;即&#xff1a;常数项的系数不要&#xff09; 2、多项式级复杂度相加的时候&#xff0c;把其高项作为结果&#xff08;即&#xff1a;多项式只保留最大项&#xff09; 3、O(1)含义为&…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

SpringCloudGateway 自定义局部过滤器

场景&#xff1a; 将所有请求转化为同一路径请求&#xff08;方便穿网配置&#xff09;在请求头内标识原来路径&#xff0c;然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...