• 回答数

    3

  • 浏览数

    257

厦门混世小魔王
首页 > 期刊论文 > 数码管显示时钟实验论文格式

3个回答 默认排序
  • 默认排序
  • 按时间排序

心如蝶舞

已采纳

给你个电路和程序,//前几天帮一个网友写,单片机定时时钟在调节功能,可以参考一下我程序

/**************************************************

*

*    6位数码管显示电子钟

*

* 功能:  按键加,按键减, 按键,启动和停止。

*

*

***************************************************/

#include "REG52.H"

sbit SHUG_01 = P2^0;    //数码管1

sbit SHUG_02 = P2^1;    //数码管2

sbit SHUG_03 = P2^2;    //数码管3

sbit SHUG_04 = P2^3;    //数码管4

sbit SHUG_05 = P2^4;    //数码管5

sbit    KEY0_01 = P0^0;    //按键  启动或停止

sbit    KEY0_02 = P0^1;    //按键  加

sbit    KEY0_03 = P0^2;    //按键减

#define     LED_DATA        P1      //P1数据端口

unsigned char value_temp = 0;

unsigned char value_Outk = 0;

unsigned char value_shio = 8;

unsigned char value_feno = 40;

unsigned char code   value_tab0[]={0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90}; //共阳极

unsigned char code   value_tab1[]={0x40, 0x79, 0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x10}; //共阳极带点

/*

* 延时1ms延时子函数

**/

void Delay_1ms(unsigned int Time)

{

unsigned int x, y;

for(x = Time; x > 0; x--)

for(y = 120; y > 0; y--);

/*

* 程序运行【启动和停止】子函数

**/

void Disp_layledketCmd(void)

{

/***小时***/

SHUG_01 = 1;

LED_DATA = value_tab0[value_shio / 10];   /*******小时的十位数显示***************/

Delay_1ms(5);

SHUG_01 = 0;

SHUG_02 = 1;

LED_DATA = value_tab1[value_shio % 10];   /*******小时的个位数显示***************/

Delay_1ms(5);

/***分钟***/

SHUG_03 = 1;

LED_DATA = value_tab0[value_feno / 10];   /*******分钟的十位数显示***************/

Delay_1ms(5);

SHUG_03 = 0;

SHUG_04 = 1;

LED_DATA = value_tab1[value_feno % 10];   /*******分钟的个位数显示***************/

Delay_1ms(5);

/***秒钟***/

SHUG_05 = 1;

LED_DATA = value_tab0[value_miao / 10];   /*******秒钟的十位数显示***************/

Delay_1ms(5);

SHUG_05 = 0;

SHUG_06 = 1;

LED_DATA = value_tab0[value_miao % 10];   /*******秒钟的个位数显示***************/

Delay_1ms(5);

SHUG_06 = 0;

/*

* 定时器初始化定时50ms

**/

void Tero_Init(void)

{

TMOD = 0x01;

TH0 = 0x4C;

TL0 = 0x00;

ET0 = 1;

TR0 = 1;

EA = 1;

/*

* 按键开关【启动和停止】子函数

**/

void Scan_keyoutCmd(void)

{

if(KEY0_01 == 0)

{

Delay_1ms(10);

if(KEY0_01 == 0)

{

TR0 = ~ TR0;

}

while(KEY0_01 == 0);

if(KEY0_02 == 0)

{

Delay_1ms(10);

if(KEY0_02 == 0)

{

value_miao--;

if(value_miao == -1)

{

value_feno--;

value_miao = 59;

if(value_feno == -1)

{

value_shio--;

value_feno = 59;

if(value_shio == -1)

{

value_shio = 23;

}

}

}

while(KEY0_02 == 0);

}

if(KEY0_03 == 0)

{

Delay_1ms(10);

if(KEY0_03 == 0)

{

value_miao++;

if(value_miao == 60)

{

value_miao = 0;

value_feno++;

if(value_feno == 60)

{

value_feno = 0;

value_shio++;

if(value_shio == 24)

{

value_shio = 0;

}

}

}

while(KEY0_03 == 0);          //检测松手

}

}

/*

* 函数主体

**/

int main(void)

{

P1 = P2 = P3 = 0x00;

Tero_Init();

while(1)

{

Scan_keyoutCmd();

Disp_layledketCmd();  //执行应运程序

}

/*

* 定时器中断服务程序

**/

void Tmero()interrupt 1

{

TH0 = 0x4C;

TL0 = 0x00;

value_temp++;

if(value_temp == 20)

{

value_temp = 0;

value_miao++;

if(value_miao == 60)

{

value_feno++;

value_miao = 0;

if(value_feno == 60)

{

value_shio++;

value_feno = 0;

if(value_shio == 24)

{

value_shio = 0;

}

}

}

100 评论

尚同家园

硬件是很简单的,我不画,和它的简要说明。最小的单芯片系统基础上的P0端口访问的数据的数字控制端,P2.6,P2.7连接数码管的控制端。 程序如下:#包括的的定义uint无符号整数定义UCHAR无符号的字符 SBIT S1 = P2 ^ 6 ;/ / 10位 SBIT S2 = P2 ^ 7 ;/ /位 UCHAR NUM0,数量; 的UCHAR代码表[] = {的0x3F,0X06,0x5b, 0x4f,0x66, 0x6d,0x7d,为0x07到0x7f,0x6f, 0x77,0x39,0x7c,0x5e者,值为0x79,0x71}; 无效延迟(UCHAR X) UCHAR I,J; (I = X> 0,我 - )为(J = 110; J> 0,J - ); } BR />无效的init() { TMOD = 0X01; / /的 TH0 =(65536-45872)/ 256的设置定时器0的作品01; ??/ /加载的初始值11.0592水晶定时50ms的 TL0 =(65536-45872)%256; EA = 1; ET0 = 1; TR0 = 1; } 的无效TO_time()中断 { TH0 =(65536-45872)/ 256 / /加载初始值的11.0592晶体定时50ms的 TL0 =(65536-45872)%256; NUM0 + +; (40 ==的NUM0)/ /到40,2秒 { NUM0 = 0; 数+ +; />} } 显示() { S1 = 1; P0 =表[num/10]; S1 = 0; P0 = 0XFF; 延迟(5); S2 = 1; P0 =表[NUM%10]; S2 = 0; } 无效的主要() {的init(); (1) {显示() } }

340 评论

excellentpri

我博客上有电子钟的程序,欢迎去参考。

271 评论

相关问答

  • 论文格式在wps显示不出页码

    具体操作步骤如下: 1、首先打开wps文字,可以看到箭头所指的地方页面、页面信息消失了。 2、在自定义状态栏的空白处,右击鼠标,展开菜单。 3、在展开的菜单中可

    曼特宁先森 4人参与回答 2023-12-10
  • 毕业论文页码显示不出来

    设置页码步骤如下:1、菜单"插入一顶码”,打开顶码对话框,点击左下角的'"格式”,开"页码格式”对话框,在数字格式中选择|,II,Il,在“超始页码”后选择|,

    木秀于森林 3人参与回答 2023-12-05
  • 数码管显示时钟实验论文格式

    给你个电路和程序,//前几天帮一个网友写,单片机定时时钟在调节功能,可以参考一下我程序 /***********************************

    厦门混世小魔王 3人参与回答 2023-12-06
  • 论文格式是显示还是内嵌

    论文是指描述学术研究成果的文章,论文的格式由题名、作者、摘要、关键词、正文、参考文献和附录等部分组成。以毕业论文为例,分为封面,题目,目录,内容摘要,正文,注释

    二的一米 5人参与回答 2023-12-06
  • 重庆大学数学实验论文格式

    论文格式与论文参考文献格式科学技术报告、学位论文、学术论文以及其它类似文件是主要的科技信息源,是记录科学技术进步的历史性文件.为了统一这些文件的撰写、编辑、印刷

    撒旦情人518 7人参与回答 2023-12-08