c51语言设计数码管秒表,采用中断计数1s,实现模60的秒表

Posted lanmanuesr

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c51语言设计数码管秒表,采用中断计数1s,实现模60的秒表相关的知识,希望对你有一定的参考价值。


徐浩宇 川师工学院电气2018级 2021.4.27

中断秒表数码段实验源码

#include<reg51.h>
#include<intrins.h>	
int i=0,k=0;
int decade,units;
int m,n;
void delay(n);

void displayLED(unsigned char x)

	unsigned char code segment[]=
	0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
  0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e
	;
	m=segment[x];


void main()

	TMOD=0x10;
  EA=1;
  ET1=1;	
	TH1=(65536-50000)/256;
	TL1=(65536-50000)%256;
	TR1=1;
	
  while(1)
			  if (k==60)k=0;     //设置模为60
				decade=k/10;   //十位
				units=k%10;    //个位
				P1=0Xff;       //先向P1口写1
				displayLED(decade);
				P1=m;
				P2=0x01;
				delay(10);
				P1=0Xff;
				displayLED(units);
				P1=m;
				P2=0x02;
				delay(10);
		


void isr_int3(void)interrupt 3 
 
  TH1=(65536-50000)/256;
	TL1=(65536-50000)%256;
  i++;
	if (i==20)	
		
			i=0;
			k++;
			  			


void delay(n)

	while(n)
	
		while(n)--n;
	


实验原理图如下


这里的数码管采用以下的两种


附上本次的工程文件:
https://download.csdn.net/download/Alangman/18474937

以上是关于c51语言设计数码管秒表,采用中断计数1s,实现模60的秒表的主要内容,如果未能解决你的问题,请参考以下文章

c51语言设计数码管,中断设计1s显示0~F,采用proteus仿真

c51语言设计数码管,中断设计1s显示0~F,采用proteus仿真

c51语言设计数码管,中断设计1s显示0~F,采用proteus仿真

c51语言设计数码管,中断设计1s显示0~F,采用proteus仿真

分别用汇编语言和C语言设计: 采用中断方式,利用定时器进行0-9秒表计数器的设计,并用数码

51单片机C语言秒表程序报错误和警告(程序如下)