程序清单(汇编):

;2011 04 05 D:\DPJ\数码管段显\数码管段显2.asm

S0 BIT P3.7

ORG 00H

AJMP MAIN

ORG 0BH

AJMP T0INT

ORG 30H

MAIN:

MOV TMOD,#01H

MOV TH0,#3CH

MOV TL0,#0B0H

SETB EA

SETB ET0

SETB TR0

MOV R0,#10

MOV DPTR,#TAB

MAIN1:

ACALL DISP

JB S0,$-2

ACALL DISP

JNB S0,$-2

INC R1

INC R1

CJNE R1,#16,MAIN1

MOV R1,#0

AJMP  MAIN1

DISP:

MOV A,R1

MOVC A,@A+DPTR

MOV P2,A

CLR P3.0

ACALL D1MS

SETB P3.0

INC R1

JNB F0,RT

CLR F0

MOV A,R1

MOVC A,@A+DPTR

MOV P2,A

CLR P3.1

ACALL D1MS

SETB P3.1

RT:

MOV A,R1

DEC A

MOV R1,A

RET

T0INT:

MOV TH0,#3CH

MOV TL0,#0B0H

DJNZ R0,RTI

MOV R0,#10

SETB F0

RTI:

RETI

D1MS:

MOV R7,#25

MOV R6,#20

DJNZ R6,$

DJNZ R7,$-4

RET

TAB:

DB      077H;A

DB      001H;A

DB      07CH;b

DB      002H;b

DB      039H;C

DB      004H;C

DB      05EH;d

DB      008H;d

DB      079H;E

DB      010H;E

DB      071H;F

DB      020H;F

DB      06FH;g

DB      040H;g

DB      076H;H

DB      080H;H

END

程序清单(51c):

//2011 04 05  D:\DPJ_C\数码管段显\数码管段显c2.c

#include

#define uchar unsigned char

uchar code tab[ ]={0x77,0x01,0x7c,0x02,0x39,0x04,0x5e,0x08,

0x79,0x10,0x71,0x20,0x6f,0x40,0x76,0x80};

uchar i,j,a,b;

sbit P3_0=P3^0;

sbit P3_1=P3^1;

sbit S0=P3^7;

void delay_ms(unsigned int ms)

{

while(ms--)

for(j=123;j>0;j--);

}

void disp( )

{

P2=tab[i];

P3_0=0;

delay_ms(2);

P3_0=1;

if(b==1)

{

b=0;

P2=tab[i+1];

P3_1=0;

delay_ms(2);

P3_1=1;

}

}

void t0init( )

{

TMOD=0x01;

TH0=0x3c;

TL0=0xb0;

EA=1;

ET0=1;

TR0=1;

}

void main( )

{

t0init();

while(1)

{

disp( );

while(S0==0)

{

disp( );

if(S0==1)

i=i+2;

if(i==16)

i=0;

}

}

}

void t0int() interrupt 1

{

TH0=0x3c;

TL0=0xb0;

a++;

if(a==10)

{

b=1;

a=0;

}

}复制代码

c语言两位数码管程序,单片机制作—两位数码管显示 c语言 汇编程序+电路图相关推荐

  1. micropython四位数码管程序代码(YX55759-+4位数码管模块)

    micropython 4位数码管程序代码(YX55759-+4位数码管模块) 成品代码 实验器材&接线 代码思路&控制逻辑 应用 成品代码 话不多说,直接看最后可以直接使用的代码. ...

  2. 单片机c语言数码管程序,单片机C语言static属性和数码管显示程序

    static从英文上翻译是静态的意思,在C语言中static所起的作用也正是静态.对于局部变量而言,其作用域是局部的如某一子函数体,程序在每次执行时调用该子函数时,其声明的局部变量都会重新赋值.那如果 ...

  3. c51倒计时程序汇编语言,两位倒计时器程序(单片机—汇编语言).doc

    两位倒计时器程序 ? ??? ORG? ?00H? ?? ?JMP? ?START? ?? ?ORG? ?30HSTART:MOV? ?P2,#00H? ? :位选置低电平? ? 显示00??? ?? ...

  4. 基于单片机的24x24点阵led汉字显示 c语言,基于单片机的点阵式LED滚动汉字显示屏仿真设计...

    3. 软件设计 AT89C51单片机是8位机,每次只能送出8位数据,因此要向16×16点阵送出16行阳极驱动,需要送两次,或先送上8行,或先送下8行,为了能够实现每一列字型码的完整显示,采用74LS2 ...

  5. 交通灯keil程序加2位数码管_51单片机红绿灯两个数码管显示实验报告

    实验操作方法和步骤 1.熟悉keil C51基本操作 1.1熟悉keil C51命令窗口以及工作空间 2.打开Keil C51编译器: ⑴创建项目:Project------New uVision P ...

  6. c语言设置一个8位缓存区程序,单片机 并口 控制爱普生打印机开发流程记录

    最近做一个项目,需求是通过昆仑通态的组态触摸屏作为上位机监测数据,然后将数据整合最后打印报表输出.昆仑通态以前可以直接将预览页的所有数据都打印出来,包括整屏未显示完全的.但是现在昆仑通态将WIN平台换 ...

  7. C语言六位数字钟程序,单片机制作的6位数字钟

    以下是部分汇编源程序,购买我们产品后我们用光盘将完整的单片机汇编源程序和烧写文件送给客户. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 中断入口程序 ;;  ...

  8. c语言时钟加秒表报告,51单片机秒表计时器课程设计报告(含C语言程序)-20210419061005.docx-原创力文档...

    XXXXXX学院 51单片机系统设计课程设计报告 题 目:秒表系统设计 专业.班级: 学生姓名: 学号: 指导教师: 分数: [摘要]本设计是一个秒表计时器,采用51单片机实现.电路包括以下儿部分:单 ...

  9. c语言时钟加秒表报告,51单片机秒表计时器课程设计报告(含C语言程序)...docx

    - - PAGE # - - - PAGE # - XXXXX)学院 51单片机系统设计 课程设计报告 目:秒表系统设计 目: 专业.班级: 学生姓名: 学 号: 指导教师: [摘要] 本设计是一个秒 ...

最新文章

  1. canvas——橡皮筋式线条绘图应用
  2. ARM架构和ARM核区别和联系
  3. go 链路追踪_【go-micro实践】jaeger分布式链路追踪
  4. Ubuntu(Linux)上安装ROS缓慢,解决方法:添加ros的国内镜像源,以及ROS安装过程使用rosdep update出现错误:‘The read operation timed out‘
  5. Java 10个调试技巧
  6. 3Linux内存映射,mmap()函数
  7. power(乘幂)函数剖析
  8. PHPCMS v9 安全防范教程!
  9. 这样用Docker 搭建 Jenkins 实现自动部署,你知道吗?
  10. 【NOIP2017提高组模拟12.10】神炎皇
  11. 小米鼠标垫功能奇异 价格也不贵
  12. 哈工大-操作系统的引导
  13. nginx配置lua脚本
  14. 计算机考试表格函数应用题,2017年职称计算机考试Excel练习题2
  15. 冒泡排序代码实现与详解
  16. C语言 数据结构 栈的线性实现 基本操作代码
  17. 计算机应用班级口号,适用于班级的口号大全
  18. XP的故障恢复控制台
  19. 作为老师的一些思考(二)
  20. BurpSuite-Target使用

热门文章

  1. 什么是超弦理论?它与姓名有什么关系?
  2. CodeForces 546-B (基础数学题签到)
  3. SpringCloud(H版以及Alibaba版本)的学习笔记(三)
  4. 【锐捷无线】AP模式切换
  5. iStat Menus mac中文
  6. vivado 编辑界面配色配置
  7. EMC设计技巧--传导整改时,什么时候该加大电容?什么时候该加小电容?
  8. VintaSoft Twain.NET SDK,实现扫描文档
  9. TWAIN扫描识别工具v16.2正式发布,添加了新的API
  10. 233网校计算机二级百度云盘6,2014年计算机二级考试《 Access》机考操作题题库(6)...