该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

编写程序实现80C51的P0口控制一个数码管显示,让它循环显示0~9等十位数字,时间间隔为1秒钟。

利用查表程序可以完成BCD与七段码的转换,从而取代硬件七段译码电路,查表程序本身并无复杂之处,需要注意的是七段码的取值,因为七段数码管有共阳极及共阴极之分(参考本站数码管的相关文章)。

共阳极是低电平有效时有效输入。共阴极是高电平时有效输入(所以在C51单片机要使发光二极管点亮,数码管是共阳极的就要让I/O口的电位变为低电位.如果是共阴极的就是合I/O口的电位变为高电位),因些不同的器件会有不同的数码值。另外引脚信号与码位的对应关系也会影响码值,即引脚可以由高到低排列(7-1),也可以由低到高排列(1-7)。本实验的数码管为共阳极,采用由高到低的排列(特别说明.本站的学习工具全部为共阳极接法)。

例如对应0的二进制代码为11000000本实验在本站推出的实验板及学习套件上可直接使用。请参照本站产品实验部份原理图。

***************************源程序******************************

ORG 0100H ;程序起始地址

MAIN: MOV R2,#00H ;段码地址表指针清零

MOV DPTR,#TAB ;指向段码地址表起始地址

DSUP: MOV A,R2 ;将R2的内容送入累加器A

MOVC A,@A+DPTR ;累加器的值与从数据表中取出的数码显示值相加后送入累加器A

MOV P0,A ;将累加器的值送入P0口显示

MOV R1,#11111110B ;将11111110B(位选P2.0)送入寄存器R1

MOV P2,R1 ;将R1的值送入P2口进行位选

LCALL YSH1S ;调用延时1秒子程序

INC R2 ;段码地址表指针加1

CJNE R2,#0AH,DSUP ;如果0-9显示完毕,程序重新开台执行

SJMP MAIN ;跳转到MAIN入口

YSH1S:MOV R3,#05H ;延时1秒子程序

LOOP0:MOV R4,#0C8H

LOOP1:MOV R5,#0FAH

XHD: DJNZ R5,XHD

DJNZ R4,LOOP1

DJNZ R3,LOOP0

RET

TAB: DB 0C0H ;0-9段码表

DB 0F9H

DB 0A4H

DB 0B0H

DB 99H

DB 92H

DB 82H

DB 0F8H

DB 80H

DB 90H

END

单片机c语言数码管显示循环0到9程序,七段数码管0~9循环显示程序相关推荐

  1. python七段数码管绘制英文字母_Python实例之七段数码管绘制理解

    Python 实例之七段数码管绘制理解 八段线的编号如上图所示.基本逻辑为画笔从 1 走到 7 ,每一步画笔落下代表画或者是 画笔抬起代表不画,最终形成 1-9 的数字排列.以下理解均为个人学习理解. ...

  2. 单片机c语言too many actual parameter,出现 too many actual parameters 怎么回事??? 是不是程序有问题???...

    出现 too many actual parameters 怎么回事??? 是不是程序有问题???0 #include #define uint unsigned int #define uchar ...

  3. c语言实现7段数码管显示,七段数码管显示实验.doc

    七段数码管显示实验 单 片 机 实 验 报 告 实验九 七段数码管显示实验 实验目的 学习七段数码管的工作原理: 学习数码管与8051单片机的接口方法: 掌握动态扫描显示技术. 实验原理 如图4.9- ...

  4. 【51单片机】七段数码管显示实验+详细讲解

    [51单片机]七段数码管显示实验 前言 一.兵马未动,粮草先行--认识七段数码管 1.关于显示器 2.七段数码管 3.七段数码管的结构 4.数码管显示方法 二.数码管显示程序 1.静态显示 效果 2. ...

  5. 【51单片机】七段数码管和矩阵键盘的综合实验——计算器(思路+仿真电路+源代码)

    系列文章目录 [51单片机]矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤 [51单片机]点阵LED的显示实验 [51单片机]七段数码管显示实验+详细讲解 [51单片机]矩阵键 ...

  6. 接口技术七段数码管c语言,031 实例7-七段数码管绘制

    [TOC] 一."七段数码管绘制"问题分析 1.1 问题分析 七段数码管 需求:用程序绘制七段数码管,似乎很有趣 该怎么做呢? turtle绘图体系 --> 七段数码管绘制 ...

  7. python七段数码管绘制单个数字_使用Python的turtle库实现七段数码管绘制

    七段数码管绘制: 七段数码管是由7段数码管拼接而成,每段有亮或不亮两种情况,改进的七段数码管还包括一个小数点位置. 七段数码管能形成2^7=128种状态,其中部分状态能够显示易于人们理解的数字或字母含 ...

  8. python七段数码管的详解,Python入门基础:七段数码管绘制

    1.在学习Python的过程中,运用所学的一些基础知识,进行一些简单的编程,可以收获很多乐趣.在生活中,LED灯无处不在,荧幕显示的广告词,给我们呈现出动态的视觉效果.下面,则以最简单的显示日期为例, ...

  9. 【初学python】实例七:七段数码管绘制

    七段数码管:https://baike.baidu.com/item/七段数码管 这样的实例在我们的生活中无处不在,而今天,我们学习怎么绘制七段数码管. 用到的内容:前期学过的turtle绘图体系,以 ...

最新文章

  1. STM8S单片机修改工程编译器配置
  2. CS294-112 深度强化学习 秋季学期(伯克利)NO.17 Meta-learning and parallelism
  3. 分享几个路由器设置小技巧,总有用得到的一天!
  4. 头条Java后台3面(含答案):事务+List集合+慢查询SQL+Redis+秒杀设计
  5. 6月20日云栖精选夜读丨国内首家!阿里云宣布全面提供IPv6服务
  6. 【转】深入理解JVM—JVM内存模型
  7. 正则表达式收集(转)
  8. 普林斯顿微积分读本篇二:三角学
  9. html5车牌效果,车牌自编效果预览软件【京牌】
  10. 前端测试之用户体验测试
  11. [古文观止]《相州昼锦堂记》(宋·欧阳修)
  12. 按头安利!好看又实用的电机 SolidWorks模型素材看这里
  13. 如何复制网页上不能复制的文字——三种解决方案
  14. 应届生程序员如何写好一份简历?
  15. 科普:手机的各种传感器原理及用途
  16. Mysql并发读写解决方案分析--MVCC
  17. Visual Studio2015产品密钥
  18. [加载XlUE组件失败,迅雷看看桌面图标已损坏,请重新安装。]问题处理
  19. 安装tesseract时Status of chi_tra: sendrequest error什么意思
  20. 魔兽修改默认服务器,魔兽怎么设置默认服务器

热门文章

  1. 解决windows 2000无法安装vmtool的问题
  2. 关于DialogBox的使用
  3. 计算机算法的概念教案,《算法的概念》教学设计
  4. 抖音上的战斗力测试软件,抖音战斗力测试app
  5. GameFramework篇:StarForce全解读(前言)
  6. java.io.IOException: java.io.FileNotFoundException: XXX(系统找不到指定的路径)
  7. 测网速时抖动_宝马730Li轿车冷车时发动机抖检修
  8. 电力通信专业技术总结,智能电网通信技术总结
  9. OpenGL(十三) 天空盒 的 shader 实现
  10. 面试小知识(2)为什么TCP需要三次握手和四次挥手