• 实验目的
  1. 学习单片机程序开发软件Keil uVision的使用方法
  2. 学习单片机控制数码管动态显示的方法
  3. 学习模块化程序设计的方法
  • 实验仪器

硬件:X86型兼容计算机,单片机开发板;软件:Keil uVision和烧录软件

  • 实验内容
  1. 设计程序控制数码管动态显示需要的数值;
  2. 硬件方案:数码管为共阴极连接,段码端通过锁存器74HC245与IO口(自选)连接,位选端通过译码器74LS138与IO口(自选)连接;
  3. 软件原理:根据锁存器、译码器原理和数码管动态显示原理依次循环送段码和位选信号,通过调整延时时间来进行动态显示。
  4. 要求: 1)在单个数码管上循环显示0-9;

  2)在左起4个数码管上滚动显示数字“2022”;

                      3)在右起4个数码管上稳定显示数字“HELP”。

循环显示0-9

#include<reg52.h>
#include <intrins.h>
unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void delay(unsigned int t)
{unsigned int i;while(t--)for(i=0;i<125;i++);
}
void main()
{unsigned char i;for(i=0;i<5;i++){P1=tab[i];delay(300);}
}

实现数字2022

#include <reg52.h>
void delay(unsigned int t)
{unsigned int i;while(t--)for(i=0;i<125;i++);
}
void display(unsigned char dat,unsigned char pos)
{unsigned char seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsigned char poscc[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};P1=seg[dat];P0=poscc[pos];delay(200);
}
void main()
{while(1){display(2,0);display(0,1);display(2,2);display(2,3);}
}

实现help的显示就更简单了

我这里就提一下思路,就不放代码了。

在seg里面加入H,L,E,P的相应的段码段,显示的时候不要循环就可以了。

单片机实验--单片机控制数码管相关推荐

  1. 单片机实验八、数码管实验

    目录 一.实验目的: 二.实验内容: 三.实验步骤: 四.实验程序 五.实验结果 六.实验小结 一.实验目的: 1.掌握51单片机前后台程序结构及编程方法: 2.了解数码管段码和位码的控制. 二.实验 ...

  2. 单片机实验四-七段数码管及键盘控制

    动态显示0-15 ORG 0100HLCALL INIT START:MOV P1,#00H ;控制哪个7段数码管显示MOV R0,#16MOV R1,#30H;LOOP0:MOV P2,@R1;IN ...

  3. 串口控制74HC164C语言,51单片机74HC164串口控制数码管显示

    一般数码管需要接7个脚才能显示,如果用单片机本身的I/O口,虽然可以但是浪费宝贵的i/O口资源.本例用移位寄存器74HC164作为数码管驱动进行控制. 74HC164特性   是一种8位串转并口的控制 ...

  4. 单片机实验2:数码管动态显示0-F

    数码管动态显示0-F代码: 单片机晶振需要调节为11.0592,只有在这个状态下X*110次循环才能约等于X毫秒 下文循环约为1s #include <reg52.h> #define u ...

  5. 串行口实验 编写程序利用PC机控制单片机实验板上的数码管设备工作

    编写程序利用PC机控制单片机实验板上的数码管设备工作 在pc上输入fe,第一个数码管显示1. 在pc上输入fa第五个数码管显示5 程序: #include<reg51.h> #define ...

  6. 【51单片机实验笔记】2. 数码管的基本控制

    目录 前言 硬件介绍 原理图分析 段选和位选 驱动芯片 74HC138芯片 74HC245芯片 软件实现 点亮一只数码管 倒计时效果 动态显示字符 总结 前言 本节内容我们学习如何控制数码管,先尝试点 ...

  7. 单片机实验----控制数码管的动态显示

    控制数码管的动态显示 文章目录 控制数码管的动态显示 一.动态显示与静态显示的比较 1.什么是动态显示 2.什么是静态显示 3.优缺点对比 二.如何控制多只数码管 1.电路图 2.代码 3.程序分析 ...

  8. 入门必做的51单片机实验2----》利用外部中断的方法来控制发光二极管和共阴极数码管显示十六进制的0到F

    嘿!各位中午好! 我是肖肖的猪会飞 欢迎收看肖小猪频道 刚刚做了个单片机实验->ヽ( ̄ω ̄( ̄ω ̄")ゝ 分享一下 文章目录 前言 一,实验题目 二,程序 三,仿真效果 前言 此实验为 ...

  9. 单片机原理及其应用——单片机定时器中断实验(八段数码管依次显示0~9数字)

    目录 一.实验要求 二.知识要点 (一)单片机定时器/计数器 (二)相关的特殊功能寄存器 1.工作方式寄存器TMOD 2.定时器/计数器控制寄存器TCON (三)定时器/计数器的工作方式 1.工作方式 ...

最新文章

  1. 10次机会 js 猜数_题目:(由计算机产生一个1~100的随机数,然后键入猜想数,最多猜10次跳出)请问大神们这个代码哪错了?...
  2. linux字体栅格化,响应式开发---网页的布局方式、媒体查询、栅格化布局、less语言...
  3. 计算机网络 ip协议是,计算机网络知识:TCP/IP协议
  4. eclipse 设置working directory
  5. Adobe称Flash技术遭排斥 呼吁政府介入
  6. 使用Mongo索引需要注意的几个点
  7. Android:支持多选的本地相册
  8. c语言密文解密程序,请问有学长做过这个程序设计的吗?C语言写加密解密问题,跪求代码!...
  9. myeclipse 项目改名404
  10. [转载] python 字典查找_python字典的增,删,改,查
  11. DBeaver 导出数据库结构和数据
  12. JavaScript学习第一天——计算机基础导学(编程语言、计算机基础)
  13. 三角形外接圆圆心坐标
  14. 小白菜飘过计算机三级数据库
  15. 安装office,错误1706。安装程序找不到所需文件。请检查网络连接或CD-ROM驱动器。
  16. php实现用户登录、注册以及修改功能(附加源码~)
  17. 传说中的美丽 真实的仙境——三亚游记
  18. HCNP——DR和BDR的概念
  19. pymol 分离蛋白与小分子保存;pymol分离蛋白多聚体亚基;pymol对接位点交互图展示;去除杂原子
  20. linux系统FW升降级步骤,使用fwupd为Ubuntu 18.04系统更新固件的方法

热门文章

  1. mc盗版服务器显示皮肤,我的世界为啥不显示皮肤,为什么联机时显示不出皮肤...
  2. 快速解决U盘无法拷贝大文件
  3. loop invariant
  4. Ubuntu18.04安装ros-melodic教程(2021-11-18)
  5. 百度Apollo 5G云代驾企业版首发,四大创新优势、三大应用场景
  6. 基于8086投票器仿真系统设计-毕设课设资料
  7. 免费的编程中文书籍索引【收藏速度】
  8. 15万左右就能买国产知名纯电SUV——奇瑞大蚂蚁
  9. 盘点:App 移动自动化测试工具
  10. jquery异形轮播