求高手,编写单片机程序做一个时钟 用c语言

编写单片机程序做一个时钟
基本要求:
编程实现电子时钟,用 proteus 进行仿真(不需要制作硬件电路板) ,电路
图参考仿真图 2,八位共阴数码管显示时分秒,显示格式为“XX-XX-XX” (提示:
使用定时器中断,不会使用中断可使用延时实现) ;

第1个回答  2012-12-02
启用TIMER0 和TIMer 1,
Timer 0 用于计时,timer 1 用于刷新数码管!很简单的程序,好好看看书追问

我们什么都没有学,只是实验室一个考试。。。求答案。。。

本回答被网友采纳
第2个回答  2012-12-02
这个很简单的吧,用定时器设定一个定时中断,在中断里面置标志,然后外面计算时间之类的和显示出来。追问

我什么都不懂啊。。。求解释啊。。。

追答

假如设定timier0每2ms溢出中断一次,在中断里面设置一个2ms溢出标志。然后主循环查询这个标志。有这个标志就累加计时,如累加了500次就是1秒钟,然后用1秒钟累加60次就是1分钟。同时在2ms时刷新显示部分。
不知道这样理解了没有?LZ可以同时看看课本资料。

本回答被提问者采纳

求一个51单片机定时闹钟程序。要C语言。能够调时间
delay(1);

单片机控制多位数码管的电子时钟程序
=0aclock==0)) time++; if(time=time1timetime1+60) beep=0; else beep=1; Calender(); if(aclock==0) { second=time%60; minute=(time%3600)\/60; hour=time\/3600; if(hour==24) { time=0; hour=0; } } else { second=time1%60; minute=(time1%3600)\/60; hour=time1\/36...

单片机时钟程序 24小时制
C语言的:include <reg51.h> include<stdio.h> unsigned char ledbuf[8];code unsigned char ledmap[] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99,0x92, 0x82, 0xf8, 0x80, 0x90}; \/\/8段显示 void delay(unsigned char cnt){ unsigned char i;while(cnt--!=0)for(i=100;i!=0;i-...

请高手用单片机C语言编写c51时钟程序,含有6个数显管,3个按键,要自己写...
}void led_adj(){ P1=tab[hour_1];led_1=0;\/\/开1 if(led_mov==0){delay(200);}else{ delay(2);} led_1=1; P1=tab[hour_2];led_2=0;\/\/开2 if(led_mov==1){delay(200);}else{ delay(2);} led_2=1; P1=tab[minute_1];led_3=0;\/\/开3 if(led_mov==2){delay(...

用C语言编写AT89C51单片机程序,设计一个智能数字钟。
void work()interrupt 1 using 0 { t++; \/\/时钟时间 h++;} \/\/===计时子函数=== void time(){ if(t>=4000) \/\/中断了4000次,一秒 { t=0;num[5]++;if(num[5]>9) \/\/1 { num[5]=0;num[4]++;} if(num[4]>5) \/\/2 { num[4]=0;num[3]++;} if(num[...

单片机C语言该怎么编写时钟程序?
这个是简单的数码管时钟显示如果有需要,我写过比较完善的1602显示时钟.显示控制年月日等等.#include<reg51.h> sbit Begin=P2^0;sbit Hour=P2^1;sbit Mus=P2^2;sbit End=P2^3;unsigned char code Tab[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x...

用c语言循环语句怎么写一个51单片机的时钟啊,用8个数码管显示时间...
){switch(flashbit){case 0:break;case 1:disdat[6]=0x10;disdat[7]=0x10;delay(50);dischg();delay(80);break;case 2:disdat[3]=0x10;disdat[4]=0x10;delay(50);dischg();delay(80);break;case 3:disdat[0]=0x10;disdat[1]=0x10;delay(50);dischg();delay(80);break;...

51单片机时钟程序,C语言,汇编都行
Set_RTC(); \/\/写入时钟值,如果使用备用电池时候,不需要没每次上电写入,此程序应该屏蔽 while(1){ if(ReadRTC_Flag){ ReadRTC_Flag=0;Read_RTC();l_tmpdisplay[0]=l_tmpdate[2]\/16; \/\/数据的转换,因我们采用数码管0~9的显示,将数据分开 l_tmpdisplay[1]=l_tmpdate[2]&0x...

c语言怎么样编写一个时钟程序
c语言时钟程序代码如下:include<windows.h> include<math.h> define ID_TIMER 1\/\/计时器ID define TWOPI (2*3.14159)LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR szCmdLine,int iCmdShow){ static TCHAR szAppName[]=TEXT...

用C语言编写程序使89C52单片机实现数字时钟功能,显示时分秒的数码管,p1...
TH0=(65535-50000)\/256; \/\/因为晶振用的是11.0592MHZ。在取初值时,大概定义为一个中断为50MS TL0=(65535-50000)%256;TR0=1;} void display(char h_shi,h_ge,m_shi,m_ge,s_shi,s_ge){ P2=duma[h_shi];P1=wema[0];delay(8);P2=duma[h_ge];P1=wema[1];delay(8);P2=duma...

相似回答