实验六 动态数码管实验

一、实验目的

1.熟悉实验软件和硬件,进行正确的接线;
2.编程使得数码管排依次显示01234567

二、实验软硬件

1.Keil uVision4
2.PZISP自动下载软件
3.HC6800S开发板

三、实验原理

动态数码管实验整体图
通过P22、P23、P24控制3-8译码器来对数码管进行位选,通过P0口经过573的驱动控制数码管的段选,通过P13控制573的使能端,为低电平时573才会有输出。

动态数码管硬件图
当一个选通端(E1)为高电平,另二个选通端((/E2))和(/E3))为低电平时,可将地址端(A0、A1、A2)的二进制编码在Y0至Y7对应的输出端以低电平译出。输出为Y0至Y7的非,比如:A2A1A0=110时,则Y6输出端输出低电平信号。

138译码器硬件

四、软件流程图

动态数码管实验程序流程图

五、实验代码

1.#include<reg51.h>
2.
3.#define GPIO_DIG P1
4.
5.sbit LSA=P2^2;
6.sbit LSB=P2^3;
7.sbit LSC=P2^4;
8.
9.unsigned char DisplayData[17]={
10.0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
11.0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
12.
13.void DigDisplay()
14.{
15.    unsigned char i;
16.    unsigned int j;
17.    for(i=0;i<8;i++)
18.    {
19.        switch(i)
20.        {
21.            case(0):LSA=0;LSB=0;LSC=0; break;//显示第0位
22.            case(1):LSA=1;LSB=0;LSC=0; break;//显示第1位
23.            case(2):LSA=0;LSB=1;LSC=0; break;//显示第2位
24.            case(3):LSA=1;LSB=1;LSC=0; break;//显示第3位
25.            case(4):LSA=0;LSB=0;LSC=1; break;//显示第4位
26.            case(5):LSA=1;LSB=0;LSC=1; break;//显示第5位
27.            case(6):LSA=0;LSB=1;LSC=1; break;//显示第6位
28.            case(7):LSA=1;LSB=1;LSC=1; break;//显示第7位
29.        }
30.        GPIO_DIG=DisplayData[i];//发送段码
31.        j=1000;          //控制显示位的保留的时间
32.        while(j--);
33.        GPIO_DIG=0x00;
34.    }
35.}
36.void main(void)
37.{
38.    while(1)
39.    {
40.        DigDisplay();
41.    }
42.}

六、实验步骤

1.连接实验相关模块连线

硬件线路图
2.编写动态数码管程序
用三根LSA、LSB和LSC 输出到38译码器中,比如输入000,选中第一个数码管。然后把数据通过P1送出给数码管,然后改数码管显示相应的数字。其后,开始循环选中第二个数码管,送数字,然后第三个…依次循环,每次显示之间间隔一段时间,间隔时间合适便可达到数码管排依次显示01234567的效果。
3.下载动态数码管程序

程序下载界面
4.观察实验现象
实验现象就是随着延时的增加,第一个数码管显示0,然后第一个数码管灭,第二个显示1,之后第二个数码管灭,第三数码管显示2… 间隔时间过小的话的,呈现的效果是8个数码管同时显示01234567。

七、实验思考

有人说,静态数码管是动态的,动态数码管是静态的。其实这里面的静态动态并不是那样理解的,静态数码管直接是使能的,之后可以往里面写入数值对应的段码,这时就可以显示出相应的数值。动态数码管是一排,通常应该有八个,要用一个38译码器连接它们的使能端。它们的连接相同的数据总线,通过选择,相应的数码管将数字读入显示。它其实是在不停的动作的,只是扫描的比较快,人眼看到的是“静态”的。
这样就可以用3根控制线和8根数据线完成8个数码管的显示。如果这8个数码管用静态的方式显示就需要8*8根线,但51单片机很难可以有这么多IO口资源。即使对于其它种类的单片机来说,64个IO口也是一个不小的开销。
本实验要求并38译码器转换不同状态是时间延长多一点,就出现了第一个数码管显示0,然后灭。第二个数码管显示1,然后灭…这样的效果。

单片机实验六 动态数码管实验相关推荐

  1. 51单片机——动态数码管实验,小白讲解,相互学习

    多位数码管介绍: 多位数码管,即两个或两个以上单个数码管并列集中在一起形成一体的数码管.当多位一体时,他们内部的公共端是独立的,二负责显示什么数字的段线(a-dp)全部是连接在一起的,独立的公共端可以 ...

  2. 51单片机 | 动态数码管实验

    文章目录 一.数码管介绍 1.多位数码管简介 2.数码管动态显示原理 二.74HC245和74HC138芯片介绍 1.74HC245 芯片简介 2.74HC138 芯片简介 三.硬件设计 四.软件设计 ...

  3. AVR单片机 实验六 AD转换应用实验

    AVR单片机 实验六 AD转换应用实验 1 实验目的 通过实验,了解AVR单片机模数转换器的初始化,及以定时器自动触发AD转换的方法和工作原理. 2 实验内容 (1) 调整可变电阻, 以获取模拟电压输 ...

  4. 单片机c语言数码显示实验报告,单片机c语言版数码动态显示实验报告.doc

    单片机c语言版数码动态显示实验报告 数码管动态显示实验一.实验要求在Proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路在电路中增加四个7段数码管(共阳/共阴自选),将P1口作数据输 ...

  5. 计算机网络技术动态路由配置,计算机网络实验六动态路由的配置

    计算机网络实验六动态路由的配置 (6页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 计算机网络原理实验报告 实验六 动态路由的配置 系 ...

  6. 计算机网络实验ripv2配置,实验六 动态路由协议RIP初步配置

    <实验六 动态路由协议RIP初步配置>由会员分享,可在线阅读,更多相关<实验六 动态路由协议RIP初步配置(11页珍藏版)>请在人人文库网上搜索. 1.南昌大学实验报告学生姓名 ...

  7. 实验六 键盘扫描显示实验(矩阵键盘)

    实验六 键盘扫描显示实验(矩阵键盘) 一.实验要求 在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在八位数码管上显示出来. 实验程序可分成 ...

  8. 计算机网络 实验六 静态路由配置,实验六-静态路由配置.doc

    实验六-静态路由配置 实验报告书 课程名称 计算机网络技术与应用 实验题目 实验六:静态路由配置 专业班级 2010级信息管理与信息系统2班 学 号 37号 姓 名 肖丹妮 指导教师 赵圆圆老师 计算 ...

  9. 《数据库原理》实验六 SQL数据查询实验

    本系列传送门: 实验二 SQL Server SSMS工具创建和管理数据库及数据表 实验三 SQL Server SSMS工具添加数据 实验四 SQL的数据定义语句 实验五 数据库完整性约束的实现与验 ...

  10. 数据库实验六:完整性语言实验

    数据库实验六 1.参照实验一供应商的表结构,创建供应商表(Supplier1)时定义实体完整性(列级实体完整性). 2.参照实验一供应商的表结构,创建供应商表(Supplier2)时定义实体完整性(表 ...

最新文章

  1. 看到这些代码,我自叹不如!!!
  2. Linux查看/var/log/wtmp文件查看可疑IP登陆
  3. Web性能压力测试工具——Siege详解
  4. 微信小程序把玩(四十)animation API
  5. xslt 标签取集合第一条数据_XSLT函数集合:数值函数、字符串函、节点集函数和布尔函数...
  6. 简约才是王道? CardView 的使用
  7. 【CyberSecurityLearning 附】域的复习+小综合实验(重要!)
  8. 内存管理代码分析 stm32
  9. Linux开机启动过程详细分析
  10. arraylist线程安全吗_Java中的集合和线程安全
  11. 茂名2021高考成绩查询入口,茂名高考成绩查询入口
  12. Macaca-iOS入门那些事2
  13. Spring容器中 singleton 单例、 prototype多例
  14. HBuilder原生功能概述
  15. docker改变镜像源
  16. Mac 开机没声音了?只需 2 招关闭/恢复
  17. 驱动人生8新版助力电脑性能起飞
  18. 一本教你如何编写高质量代码的图书:《设计模式之美》
  19. 20190919-2 功能测试
  20. 通过ktr文件写交换代码

热门文章

  1. 计算机组成原理选择题题库
  2. 怎样将PDF作为矢量图插入PPT中
  3. Python400集 视频教程(高淇老师)学习笔记
  4. php 生成小程序码
  5. 最常用的scrum工具、敏捷开发工具、看板工具
  6. 用什么软件可以编辑pdf文件
  7. 共识算法PBFT和Raft
  8. 安川焊接机器人做圆弧运动编程_安川MOTOMAN工业机器人编程与操作(6)
  9. 计算机软考中级网络工程师考点总结——待续
  10. win10计算机网络共享设置密码,win10局域网设置密码如何设置_win10局域网怎么设置访问密码-win7之家...