⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 数码管(秒表).c

📁 里面包含用visual c++编译的程序
💻 C
字号:
	/***********************************/
	/*                                 */
	/*该程序实现的功能:               */
	/*                                 */
	/*  数码管前两位显示分钟数,       */
	/*  后两位显示秒数                 */
	/*                                 */
	/*接线方法:                       */
	/*                                 */
	/*  将P0口接在数码管的数据端       */
	/*  再将4位位选端依次接在P2.0-P2.3 */
	/*                                 */
	/***********************************/

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int

uchar ge,shi,bai,qian;	                   //定义数码管显示的四位数
uint fen,miao;                             //定义要显示的变量fen,miao

uchar code number[]={0x28,0xeb,0x32,0xa2,
					 0xe1,0xa4,0x24,0xea,  //针对我们板子的数码管0-9编码
					 0x20,0xa0};

uchar wei[4]={0x07,0x0b,0x0d,0x0e};	       //数码管位选编码

void delay(uint m)						   //延时函数
{
	while(m--);
}
void main()
{
    uint i=0;							   //定义变量i供for语句使用
	while(1)
	{
		for(i=0;i<80;i++)
		{
			qian=fen/10;				   //将fen的值分散到前两位
			bai=fen%10;
			shi=miao/10;
			ge=miao%10;					   //将miao的值分散到后两位
				   
			if(qian!=0)
			{
			  	P0=number[qian];		   //不为0则显示fen的十位
				P2=wei[0];
				delay(300);
			}	

			P0=number[bai];				   //显示fen的个位
			P2=wei[1];
			delay(300);
	
			P0=number[shi];				   //显示秒的十位
			P2=wei[2];
			delay(300);
	
			P0=number[ge];				   //显示秒的个位
			P2=wei[3];
			delay(300);	
		}
		miao++;							   //秒值按周期增加
		if(miao==60)					   //当增加到60,清零,同时分加1
		{
			miao=0;
			fen++;
		}
		if(fen==60)						   //fen增加到60则清零。
		{
			fen=0;
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -