c语言两位数码管程序,单片机制作—两位数码管显示 c语言 汇编程序+电路图
程序清单(汇编):
;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语言 汇编程序+电路图相关推荐
- micropython四位数码管程序代码(YX55759-+4位数码管模块)
micropython 4位数码管程序代码(YX55759-+4位数码管模块) 成品代码 实验器材&接线 代码思路&控制逻辑 应用 成品代码 话不多说,直接看最后可以直接使用的代码. ...
- 单片机c语言数码管程序,单片机C语言static属性和数码管显示程序
static从英文上翻译是静态的意思,在C语言中static所起的作用也正是静态.对于局部变量而言,其作用域是局部的如某一子函数体,程序在每次执行时调用该子函数时,其声明的局部变量都会重新赋值.那如果 ...
- c51倒计时程序汇编语言,两位倒计时器程序(单片机—汇编语言).doc
两位倒计时器程序 ? ??? ORG? ?00H? ?? ?JMP? ?START? ?? ?ORG? ?30HSTART:MOV? ?P2,#00H? ? :位选置低电平? ? 显示00??? ?? ...
- 基于单片机的24x24点阵led汉字显示 c语言,基于单片机的点阵式LED滚动汉字显示屏仿真设计...
3. 软件设计 AT89C51单片机是8位机,每次只能送出8位数据,因此要向16×16点阵送出16行阳极驱动,需要送两次,或先送上8行,或先送下8行,为了能够实现每一列字型码的完整显示,采用74LS2 ...
- 交通灯keil程序加2位数码管_51单片机红绿灯两个数码管显示实验报告
实验操作方法和步骤 1.熟悉keil C51基本操作 1.1熟悉keil C51命令窗口以及工作空间 2.打开Keil C51编译器: ⑴创建项目:Project------New uVision P ...
- c语言设置一个8位缓存区程序,单片机 并口 控制爱普生打印机开发流程记录
最近做一个项目,需求是通过昆仑通态的组态触摸屏作为上位机监测数据,然后将数据整合最后打印报表输出.昆仑通态以前可以直接将预览页的所有数据都打印出来,包括整屏未显示完全的.但是现在昆仑通态将WIN平台换 ...
- C语言六位数字钟程序,单片机制作的6位数字钟
以下是部分汇编源程序,购买我们产品后我们用光盘将完整的单片机汇编源程序和烧写文件送给客户. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 中断入口程序 ;; ...
- c语言时钟加秒表报告,51单片机秒表计时器课程设计报告(含C语言程序)-20210419061005.docx-原创力文档...
XXXXXX学院 51单片机系统设计课程设计报告 题 目:秒表系统设计 专业.班级: 学生姓名: 学号: 指导教师: 分数: [摘要]本设计是一个秒表计时器,采用51单片机实现.电路包括以下儿部分:单 ...
- c语言时钟加秒表报告,51单片机秒表计时器课程设计报告(含C语言程序)...docx
- - PAGE # - - - PAGE # - XXXXX)学院 51单片机系统设计 课程设计报告 目:秒表系统设计 目: 专业.班级: 学生姓名: 学 号: 指导教师: [摘要] 本设计是一个秒 ...
最新文章
- canvas——橡皮筋式线条绘图应用
- ARM架构和ARM核区别和联系
- go 链路追踪_【go-micro实践】jaeger分布式链路追踪
- Ubuntu(Linux)上安装ROS缓慢,解决方法:添加ros的国内镜像源,以及ROS安装过程使用rosdep update出现错误:‘The read operation timed out‘
- Java 10个调试技巧
- 3Linux内存映射,mmap()函数
- power(乘幂)函数剖析
- PHPCMS v9 安全防范教程!
- 这样用Docker 搭建 Jenkins 实现自动部署,你知道吗?
- 【NOIP2017提高组模拟12.10】神炎皇
- 小米鼠标垫功能奇异 价格也不贵
- 哈工大-操作系统的引导
- nginx配置lua脚本
- 计算机考试表格函数应用题,2017年职称计算机考试Excel练习题2
- 冒泡排序代码实现与详解
- C语言 数据结构 栈的线性实现 基本操作代码
- 计算机应用班级口号,适用于班级的口号大全
- XP的故障恢复控制台
- 作为老师的一些思考(二)
- BurpSuite-Target使用
热门文章
- 什么是超弦理论?它与姓名有什么关系?
- CodeForces 546-B (基础数学题签到)
- SpringCloud(H版以及Alibaba版本)的学习笔记(三)
- 【锐捷无线】AP模式切换
- iStat Menus mac中文
- vivado 编辑界面配色配置
- EMC设计技巧--传导整改时,什么时候该加大电容?什么时候该加小电容?
- VintaSoft Twain.NET SDK,实现扫描文档
- TWAIN扫描识别工具v16.2正式发布,添加了新的API
- 233网校计算机二级百度云盘6,2014年计算机二级考试《 Access》机考操作题题库(6)...