51单片机实验二:数码管静态显示

目录

一、实验环境与实验器材

二、实验内容及实验步骤

1.单个数码管显示

2.六个数码管依次从0~F变换显示

3.proteus仿真


 

一、实验环境与实验器材

环境:KeliSTC-ISP烧写软件,Proteus.        

器材:TX-1C单片机(STC89C52RC)

图1.1 工具

二、实验内容及实验步骤

1.单个数码管显示

Keil编写及编译生成hex文件,STC烧写下载至单片机,单片机数码管静态显示‘8’

#include<reg52.h>
sbit dula=P2^6;                 // 申明U1锁存器的锁存端
sbit wela=P2^7;					// 申明U2锁存器的锁存端
void main()
{wela=1;								// 打开U2锁存端P0=0xFE;							// 送入位选信号wela=0;								// 关闭U2锁存端dula=1;								// 打开U1锁存端P0=0x7F;							// 送入位选信号dula=0;								// 关闭U1锁存端    while(1);
}

图2.1.1 烧录

图2.1.2 硬件效果

proteus 仿真效果

图2.2.3 Proteus仿真图“第一数码管显示8” 

2.六个数码管依次从0~F变换显示

#include "reg52.h"
#define uchar unsigned char     //定义无符号字符型
#define uint unsigned int       //定义无符号整形
sbit dula=P2^6;                 // 申明U1锁存器的锁存端
sbit wela=P2^7;					// 申明U2锁存器的锁存端
uchar num;
uchar code table[]={0x3f,0x06,0x5b,0x4f,      // 0-F共阴级数码管编码0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delayms(uint);						//声明延时函数void main()
{wela=1;								// 打开U2锁存端P0=0xc0;							// 送入位选信号wela=0;								// 关闭U2锁存端while(1){for(num=0;num<16;num++)			// 16个数循环显示{dula=1;						// 打开U1锁存端P0=table[num];				// 送入选段信号dula=0;						// 关闭U1锁存端delayms(500);				// 延时0.5s}}}void delayms(uint xms)        // 定义延时函数
{uint i,j;for(i=xms;i>0;i--)		  // i=xms即延时约xms毫秒 for(j=110;j>0;j--);
}

图 2.2.1 硬件初始显示

图2.2.2 硬件最后显示 

proteus仿真图:

图2.2.2 proteus 仿真图 

视频:

静态数码管显示0~F

 

3.proteus仿真

仿真图:

图2.3.1 Proteus仿真电路图 

因为仿真点亮画的简单,所以代码也相对简单:

#include "reg52.h"
unsigned char s[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7c,0x39,0x5e,0x79,0x71};//共阴0-9void delay(unsigned int n)
{unsigned int i=0,j=0;for(i=0;i<n;i++){for(j=0;j<120;j++);}
}void seg()
{int i=0;for(i=0;i<16;i++){P2=s[i];    //0011 1111delay(1000);}
}void main()
{while(1){seg();}}

视频:

静态数码管bz

注意:仿真电路绘画中,共阴共阳电路易混淆。(共阴接地,共阳接电源)

 

 

 

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

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

相关文章

学术AI工具推荐

一、基础信息对比 维度知网研学AI&#xff08;研学智得AI&#xff09;秘塔AIWOS AI开发公司同方知网&#xff08;CNKI&#xff09;上海秘塔网络科技Clarivate Analytics是否接入DeepSeek✅ 深度集成&#xff08;全功能接入DeepSeek-R1推理服务&#xff09;✅ 通过API接入DeepS…

冰川流域提取分析——ArcGIS pro

一、河网提取和流域提取视频详细GIS小熊 || 6分钟学会水文分析—河网提取&#xff08;以宜宾市为例&#xff09;_哔哩哔哩_bilibili 首先你要生成研究区域DEM&#xff0c;然后依次是填洼→流向→流量→栅格计算器→河网分级→栅格河网矢量化&#xff08;得到河网.shp&#xff…

【物联网-RS-485】

物联网-RS-485 ■ RS-485 连接方式■ RS-485 半双工通讯■ RS-485 的特点 ■ RS-485 连接方式 ■ RS-485 半双工通讯 一线定义为A 一线定义为B RS-485传输方式&#xff1a;半双工通信、&#xff08;逻辑1&#xff1a;2V ~ 6V 逻辑0&#xff1a;-6V ~ -2V&#xff09;这里的电平…

解析检验平板:设备还是非设备?深入了解其功能与应用(北重铸铁平台厂家)

检验平板通常被归类为设备&#xff0c;因为它们具有特定的功能&#xff0c;并且被用于测试和评估其他设备或产品的性能和质量。检验平板通常具有平坦的表面&#xff0c;用于放置要进行测试或检验的物品。它们可以用于测量尺寸、形状、平整度、表面光洁度等参数。 检验平板的应…

6.数据手册解读—运算放大器(二)

目录 6、细节描述 6.1预览 6.2功能框图 6.3 特征描述 6.3.1输入保护 6.3.1 EMI抑制 6.3.3 温度保护 6.3.4 容性负载和稳定性 6.3.5 共模电压范围 6.3.6反相保护 6.3.7 电气过载 6.3.8 过载恢复 6.3.9 典型规格与分布 6.3.9 散热焊盘的封装 6.3.11 Shutdown 6.4…

2025年03月中国电子学会青少年软件编程(Python)等级考试试卷(六级)真题

青少年软件编程&#xff08;Python&#xff09;等级考试试卷&#xff08;六级&#xff09; 分数&#xff1a;100 题数&#xff1a;38 答案解析&#xff1a;https://blog.csdn.net/qq_33897084/article/details/147341458 一、单选题(共25题&#xff0c;共50分) 1. 在tkinter的…

centos与ubuntu系统版本介绍

CentOS与Ubuntu系统镜像版本介绍 前言CentOS官网镜像历史版本阿里云镜像总结 Ubuntu官网系统总结 最后 前言 在我准备给虚拟机&#xff08;我使用的是vritualbox&#xff09;安装一个Linux系统&#xff0c;不知道该选择centos还是Ubuntu。并且在下载镜像的过程中对系统的版本、…

Go 语言中的 package main、 func main() 和main.go的使用规范

本文旨在解释 Go 语言中 package main 、 func main() 和main.go的关系及其使用规则,解决如下典型问题: 是否可以在一个项目中定义多个 func main()?是否可以在非 package main 中写 func main()?多个文件中都写 func main() 会冲突吗?main.go是必须的命名方式吗?正确的结…

MySQL启动Failed to start LSB: start and stop MySQL

错误呈现 数据库初始化 删除 mysql/data中的文件 在对数据库重新进行初始化之前&#xff0c;需要事先删除 /usr/local/mysql/data目录下已经生成的文件。 查看 ll /usr/local/mysql/data/#删除 rm -rf /usr/local/mysql/data/* 删除 使用以下命令对数据库初始化 /usr/local/m…

服务器架构:SMP、NUMA、MPP及Docker优化指南

文章目录 引言 一、服务器架构基础1. SMP&#xff08;对称多处理&#xff0c;Symmetric Multiprocessing&#xff09;2. NUMA&#xff08;非统一内存访问&#xff0c;Non-Uniform Memory Access&#xff09;3. MPP&#xff08;大规模并行处理&#xff0c;Massively Parallel Pr…

【HarmonyOS NEXT】多目标产物构建实践

目录 什么是多产物构建 如何定义多个构建产物 如何在项目中使用 参考文章 什么是多产物构建 在鸿蒙应用开发中&#xff0c;一个应用可定义多个 product&#xff0c;每一个 product 对应一个定制的 APP 包&#xff0c;每个 product 中支持对 bundleName、bundleType、输出产…

Django视图(未分离)

ListView、DetailView、CreateView、UpdateView 和 DeleteView 是 Django 框架中基于类的通用视图&#xff08;Class-Based Generic Views&#xff09; 配置 URL 路由 在 urls.py 中为这些视图配置路由&#xff1a; from django.urls import path from .views import (PostLis…

如何通过自动化解决方案提升企业运营效率?

引言 在现代企业中&#xff0c;运营效率直接影响着企业的成本、速度与竞争力。尤其是随着科技的不断发展&#xff0c;传统手工操作和低效的流程逐渐无法满足企业的需求。自动化解决方案正成为企业提升运营效率、降低成本和提高生产力的关键。无论是大型跨国公司&#xff0c;还…

3.8/Q1,GBD数据库最新文章解读

文章题目&#xff1a;Regional and National Burden of Traumatic Brain Injury and Spinal Cord Injury in North Africa and Middle East Regions, 1990-2021: A Systematic Analysis for The Global Burden of Disease Study 2021 DOI&#xff1a;10.1007/s44197-025-00372-…

C#中扩展方法和钩子机制使用

1.扩展方法&#xff1a; 扩展方法允许向现有类型 “添加” 方法&#xff0c;而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法&#xff0c;但可以像实例方法一样进行调用。 使用场景&#xff1a; 1.当无法修改某个类的源代码&#…

2021 CCF CSP-S2.廊桥分配

目录 题目算法标签: 模拟, 贪心, 堆思路代码 题目 4090. 廊桥分配 算法标签: 模拟, 贪心, 堆 思路 可以将每个飞机的起始时间和离开时间看作一个线段, 每个廊桥在同一时间只能服务一架飞机, 因为先到先得因此是按照起始时间进行排序 每个廊桥只关心最后一架飞机离开的时刻…

MCP系列之实践篇:搭建你的第一个MCP应用

前言 在前两篇文章中&#xff0c;我们已经介绍了MCP&#xff08;模型上下文协议&#xff09;的基本概念和技术架构。本篇文章将从理论走向实践&#xff0c;通过一个简单但完整的案例&#xff0c;手把手教你如何搭建和调试一个基于MCP的应用。我们将一起构建一个天气查询和活动…

《软件设计师》复习笔记(4.2)——关系代数、函数依赖、范式

目录 一、关系代数 基本运算 笛卡尔积&#xff08;&#xff09; 投影&#xff08;π&#xff09; 选择&#xff08;σ&#xff09; 自然连接&#xff08;⋈&#xff09; 真题示例&#xff1a; 二、函数依赖 基本概念 Armstrong公理系统 键与约束 三、范式&#xff…

【TeamFlow】 1 TeamFlow 去中心化生产协同系统架构

总体架构设计 采用四层混合架构&#xff0c;结合分层设计与去中心化网络&#xff1a; #mermaid-svg-qBgw9wMd8Gi0gOci {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-qBgw9wMd8Gi0gOci .error-icon{fill:#552222;}…

宜搭与金蝶互通——连接器建立

一、 进入连接器工厂 图1 连接器入口 二、 新建连接器 图2 新建连接器第一步 1、 连接器显示名,如图2中①所示; 2、 图2中②域名,是金蝶系统API接口里面的“完整服务地址”com之前的信息,不含“https”,如图3中①所示; 3、 Base Url通常为“/”,如图2…