當前位置:首頁 » 軟體設計 » 鍾的設計

鍾的設計

發布時間: 2021-01-01 07:28:57

① 電子鍾設計

一、數字鍾的組成與基本原理
一、課程名稱:數字電子鍾的設計。
二、內容:設計並製作一台數字電子鍾,完成設計說明書。
三、設計內容及要求:
設計內容:要求由所學的數字電子知識以及查閱有關資料設計並製作出一台數字電子鍾。而且要完成電路的裝配和調試。設計基本框圖如下:
.......
四、要求:1>.採用位數碼管,顯示範圍0分00秒——23時59分59秒。
2>.提出至少兩種設計實現方案,並優選方案進行設計。
3>.詳細說明設計方案,並計算元件參數。包括選擇的依據和原理,參數確定的根據。
4>當電路發生走時誤差時,要求電路具有校時功能。3、要求電路具有整點報時功能,報時聲響為四低一高,最後一響正好為整點。
五、數字鍾的基本原理
數字電子鍾的原理方框圖如圖1所示。干電路系統由秒信號發生器,"時、分、秒計數器、解碼器及顯示器、校時電路、整點報時電路組成。秒信號產生器是整個系統的時基信號,它直接決定計時系統的精度,一般用石英晶體振盪器加分頻器來實現。將標准秒信號送入"秒計數器","秒計數器"採用60進制計數器,每累計60秒發一個"分脈沖"信號,該信號將作為"分計數器"的時鍾脈沖。"分計數器"也採用60進制計數器,每累計60分鍾,發出一個"時脈沖"信號,該信號將被送到"時計數器"。"時計數器"採用24進制計時器,可實現對一天24小時的累計。解碼顯示電路將"時"、"分"、"秒"計數器的輸出狀態菁七段顯示解碼器解碼,通過六位LED七段顯示器顯示出來。整點報時電路時根據計時系統的輸出狀態產生一脈沖信號,然後去觸發一音頻發生器實現報時。校時電路時用來對"時"、"分"、"秒"顯示數字進行校對調整的

② 鍾表設計學校

鍾表是抄一種計時的裝置,也襲是計量和指示時間的精密儀器。 鍾表通常是以內機的大小來區別的。按國際慣例,機心直徑超過80毫米、厚度超過30毫米的為鍾;直徑37~50毫米、厚度4~6毫米者,稱為懷表;直徑37毫米以下為手錶;直徑不大於20毫米或機心面積不大於314平方毫米的,稱為女表。手錶是人類所發明的最小、最堅固、最精密的機械之一。

③ java時鍾設計

import javax.swing.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.*;
import java.util.Calendar;
import java.util.GregorianCalendar;

class Clock extends JFrame implements ActionListener{

int x,y,x0,y0,r,h,olds_x,olds_y,oldm_x,oldm_y,oldh_x,oldh_y,ss,mm,hh,old_m,old_h,ang;
final double RAD=Math.PI/180;

public Clock(){
super("Clock by kikiwawa");
setDefaultCloseOperation(3);
setSize(200,200);
setBackground(Color.BLACK);
setLocation(300,150);
setResizable(false);
setVisible(true);
int delay = 1000;

ActionListener drawClock = new ActionListener(){
public void actionPerformed(ActionEvent evt){
repaint();
}
};

new Timer(delay,drawClock).start();
}

public void actionPerformed(ActionEvent e){
}

public void paint(Graphics g){
Graphics2D g2D = (Graphics2D)g;
Insets insets = getInsets();
int L = insets.left/2,T = insets.top/2;
h = getSize().height;
g.setColor(Color.white);

g2D.setStroke(new BasicStroke(4.0f));
g.drawOval(L+40,T+40,h-80,h-80);
r=h/2-40;
x0=40+r-5+L;
y0=40+r-5-T;
ang=60;

for(int i=1;i<=12;i++){
x=(int)((r+10)*Math.cos(RAD*ang)+x0);
y=(int)((r+10)*Math.sin(RAD*ang)+y0);
g.drawString(""+i,x,h-y);
ang-=30;
}

Calendar now= new GregorianCalendar();
int nowh= now.get(Calendar.HOUR_OF_DAY);
int nowm= now.get(Calendar.MINUTE);
int nows= now.get(Calendar.SECOND);
String st;
if(nowh<10) st="0"+nowh;else st=""+nowh;
if(nowm<10) st+=":0"+nowm;else st+=":"+nowm;
if(nows<10) st+=":0"+nows;else st+=":"+nows;

g.setColor(Color.pink);
g.fillRect(L,T,50,28);
g.setColor(Color.blue);
g.drawString(st,L+2,T+26);

ss=90-nows*6;
mm=90-nowm*6;
hh=90-nowh*30-nowm/2;
x0=r+40+L;
y0=r+40+T;

if(olds_x>0){
g.setColor(getBackground());
g.drawLine(x0,y0,olds_x,h-olds_y);
}
else{
old_m = mm;
old_h = hh;
}

x=(int)(r*0.9*Math.cos(RAD*ss))+x0;
y=(int)(r*0.9*Math.sin(RAD*ss))+y0-2*T;
g.setColor(Color.yellow);
g.drawLine(x0,y0,x,h-y);
olds_x=x;
olds_y=y;
g2D.setStroke(new BasicStroke(2.2f));

if(old_m!=mm){
g.setColor(getBackground());
g.drawLine(x0,y0,oldm_x,h-oldm_y);
}

x=(int)(r*0.7*Math.cos(RAD*mm))+x0;
y=(int)(r*0.7*Math.sin(RAD*mm))+y0-2*T;
g.setColor(Color.green);
g.drawLine(x0,y0,x,h-y);
oldm_x=x;
oldm_y=y;
old_m=mm;
g2D.setStroke(new BasicStroke(3.4f));

if(old_h!=hh){
g.setColor(getBackground());
g.drawLine(x0,y0,oldh_x,h-oldh_y);
}

x=(int)(r*0.5*Math.cos(RAD*hh))+x0;
y=(int)(r*0.5*Math.sin(RAD*hh))+y0-2*T;
g.setColor(Color.red);
g.drawLine(x0,y0,x,h-y);
oldh_x=x;
oldh_y=y;
old_h=hh;
}

public static void main(String[] args){
Clock c = new Clock();
} }

④ 數字鍾的設計 功能是什麼

一般來說來數字鍾要完成自的基本功能是利用數碼管、按鍵、蜂鳴器完成24小時制時間顯示(輸入時鍾脈沖一般要求為1024Hz),時間調節,鬧鍾設定,整點報時。我不知道你是用vhdl和實驗箱做還是直接用現有元件完成電路板,後者可能要麻煩一點我沒做過,前一種方法可能容易一定,可以自己增加一些功能,比如日期顯示,和鬧鍾開關。難度在於要利用設計軟體進行設計或模擬,需要摸清軟體的脾性,vhdl並沒有c語言那麼容易掌握。
我不清楚你到底哪個地方有問題,能不能再說清楚點?

⑤ 電子鍾設計原理圖

設計題目 電子鍾
具有6個led 顯示器,分別顯示 時,分,秒
要求能設置時間,並且時間精度,每天誤差小於30秒。
主要任務
1) 設計控制系統數字電子電路部分的電原理圖
2) 按照電原理圖製作實物(制線路版,焊接)
3) 編制單片機控製程序
4) 綜合調式
以上設計先把電原理圖和程序用電子郵件寄來,然後再做樣機調式。
程序范列
;實用單片機電子鍾的製作
;主程序(MAIN),如下:
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP TIME

ORG 0300H
MAIN:
mov 20h,#00h
MOV 21H,#00H
MOV 22H,#00H
MOV 23H,#00H
MOV IP,#02H ;IP,IE初始化
MOV IE,#82H
MOV TMOD,#01H ;設定定時器工作方式?
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0 ;啟動定時?
MOV SP,#40H ;重設堆棧指針
NEXT: LCALL DISP ;調用顯示子程序?
LCALL KEY ;調用按鍵檢測子程序
JZ NEXT ;
LCALL ANKEY ;調用按鍵處理子程序
SJMP NEXT ;重新循環
NOP
NOP
NOP
;定時中斷處理程序:
TIME: PUSH ACC ;保護現場
PUSH PSW
MOV TL0,#0B4H ;賦定時初值
MOV TH0,#3CH
INC 20H ;
MOV A,20H
CJNE A,#20,RETI1
MOV 20H,#00H ;一秒鍾時間到
MOV A,21H
ADD A,#01H
DA A
MOV 21H,A
CJNE A,#60H,RETI1
MOV 21H,#00H ;一分鍾時間到
MOV A,22H
ADD A,#01H
DA A
MOV 22H,A
CJNE A,#60H,RETI1
MOV 22H,#00H ;一小時時間到
MOV A,23H
ADD A,#01H
DA A
MOV 23H,A
CJNE A,#24H,RETI1
MOV 23H,#00H ;到時間達到24小時,清零.
RETI1: POP PSW ;恢復現場
POP ACC
RETI ;中斷返回?
NOP
NOP

;顯示子程序
DISP: ANL 2FH,#10H ;處理小數點
MOV A,21H ;處理秒21H-->2DH,2EH
ANL A,#0FH
ORL A,2FH
MOV 2FH,A
MOV A,21H
ANL A,#0F0H
SWAP A
MOV 2EH,A
ANL 2DH,#10H
MOV A,22H ;處理分鍾22H-->2CH,2DH
ANL A,#0FH
ORL A,2DH
MOV 2DH,A
MOV A,22H
ANL A,#0F0H
SWAP A
MOV 2CH,A
ANL 2BH,#10H
MOV A,23H ;處理小時23H-->2AH,2BH
ANL A,#0FH
ORL A,2BH
MOV 2BH,A
MOV A,23H
ANL A,#0F0H
SWAP A
MOV 2AH,A
MOV R0,#2FH ;顯示偏移量
MOV R3,#06H
MOV DPTR,#TABLE
MOV A,#0BFH
LOOP1: MOV B,A ;
MOV P2,a
MOV A,@R0
MOVC A,@A+DPTR
MOV P0,a ;送顯示
MOV R2,#80H ;延時
DJNZ R2,$
DEC R0
MOV A,B
RR A
DJNZ R3,LOOP1 ;循環顯示
RET

TABLE: db 28h,7eh,0a2h,62h,74h,61h,21h ;不帶小數點
DB 7ah,20h,60h,00,00,00,00,00,00
DB 8H,5eH,82H,42H,54H,41H,1H,5aH ;帶小數點
DB 00H,40H,00,00,00,00,00,00
NOP
NOP
;按鍵判斷程序
KEY: MOV P3,#0FFH ;
MOV A,P3
CPL A
ANL A,#3CH
JZ RETX ;無鍵按下則返回
LCALL DISP ;
LCALL DISP
MOV A,P3
CPL A
ANL A,#3CH
JZ RETX ;鍵盤去抖動。
MOV R6,A ;將鍵值存入R6。
LOOP2: LCALL DISP ;
MOV A,P3
CPL A
ANL A,#3CH
JNZ LOOP2 ;等待鍵釋放
MOV A,R6
RETX: RET
NOP
NOP
;按鍵處理子程序
ANKEY: CLR EA ;關中斷
LX: MOV A,R6
JB ACC.2,L1 ;是功能鍵轉L1
JB ACC.3,L2 ;是確認鍵轉L2
JB ACC.4,L3 ;是減1鍵轉L3
JNB ACC.5,L12 ;不是增1鍵,轉L12
JB 2BH.4,L6 ;判斷使哪一位(時、分、秒)的值加1
JB 2DH.4,L8
JB 2FH.4,L9

L12: LCALL DISP
LCALL DISP
LCALL KEY ;判斷有無鍵按下。
JZ L12
LJMP LX

L2: MOV 25H,#00H ;確認鍵處理程序
CLR 2BH.4
CLR 2DH.4
CLR 2FH.4
SETB EA
RET

L3: JB 2BH.4,L61 ;增一鍵處理程序
JB 2DH.4,L81
JB 2FH.4,L91
AJMP L12

L1: MOV A,25H ;功能鍵處理程序
JZ LB1
JB ACC.0,LB2
JB ACC.1,LB3
JNB ACC.2,L12
LB1: MOV 25H,#01H ;25H單元是標志位,(25H)=01H調節時單元的值
SETB 2BH.4
CLR 2DH.4
CLR 2FH.4
AJMP L12

LB3: MOV 25H,#04H ;25H單元是標志位,(25H)=01H調節秒單元的值
SETB 2FH.4
CLR 2DH.4
CLR 2BH.4
AJMP L12

LB2: MOV 25H,#02H ;25H單元是標志位,(25H)=01H調節分單元的值
SETB 2DH.4
CLR 2BH.4
CLR 2FH.4
AJMP L12

L61: AJMP L611 ;
L81: AJMP L811 ;
L91: AJMP L911
L6: MOV A,23H ;時加一
ADD A,#01H
DA A
MOV 23H,A
CJNE A,#24H,L15
L15: JC L112
MOV 23H,#00H
L112: AJMP L12

L8: MOV A,22H ;分加一
ADD A,#01H
DA A
MOV 22H,A
CJNE A,#60H,L16
L16: JC L112
MOV 22H,#00H
AJMP L12

L9: MOV A,21H ;秒加一
ADD A,#01H
DA A
MOV 21H,A
CJNE A,#60H,L17
L17: JC L112
MOV 21H,#00H
AJMP L12

L611: MOV A,23H ;時減一
ADD A,#99H
DA A
MOV 23H,A
CJNE A,#99H,L112
MOV 23H,#23H
AJMP L12

L811: MOV A,22H ;分減一
ADD A,#99H
DA A
MOV 22H,A
CJNE A,#99H,L112
MOV 22H,#59H
AJMP L12

L911: MOV A,21H ;秒減一
ADD A,#99H
DA A
MOV 21H,A
CJNE A,#99H,L112
MOV 21H,#59H
AJMP L12
NOP
NOP
END

⑥ 基於單片機的電子鍾的設計

非常簡單,這是隨著大自然的一個搖擺計算

⑦ 單片機電子時鍾設計

#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int
uchar code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};//共陽極數碼管數據表0--F
uchar code scan_con[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//位選碼表右-->左
uchar data timedata[]={0x00,0x00,0x00,0x00,0x00,0x00};//計時單元數據初值,共6個
uchar data dis[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};//顯示單元數據,共8個數據
uchar data con1s=0x00,con04s=0x00,con=0x00;//秒定時用
sbit key0=P1^0;
sbit key1=P1^1;
sbit key2=P1^2;
//
void delay(uint t) //延時子函數
{
uint i,j;
for(i=0;i<t;i++)
for(j=0;j<110;j++);
}
//
keyscan()//鍵盤掃描子程序
{
EA=0;
if(key0==0)
{
delay(10);
while(key0==0);
if(dis[con]==10)
{dis[7]=dis[con];dis[con]=dis[6];dis[6]=dis[7];}
con++;
TR0=0;
ET0=0;
TR1=1;
ET1=1;
if(con>=6)
{
con=0;
TR1=0;
ET1=0;
TR0=1;
ET0=1;
}
}
//
if(con!=0)
{
if(key1==0)
{
delay(10);
while(key1==0);
timedata[con]++;
if(timedata[con]>=10)
{timedata[con]=0;}
dis[con]=timedata[con];dis[6]=0x0a;
}
}
//
if(con!=0)
{
if(key2==0)
{
delay(10);
while(key2==0);
if(timedata[con]==0)
{timedata[con]=0x09;}
else
{
timedata[con]--;
}
dis[con]=timedata[con];dis[6]=0x0a;
}
}
EA=1;
}
//
void scan()//掃描程序
{
char k;
for(k=0;k<6;k++)
{
P0=table[dis[k]];
P2=scan_con[k];
delay(1);
P2=0xff;
}
}
//

⑧ C語言時鍾設計

#include<graphics.h> /* 引入graphic.h */ #include<math.h> /* 引入math.h */ #include<dos.h> /* 引入dos.h */ #define pi 3.1415926 /*定義pi=3.14159*/ #define X(a,b,c) x=a*cos(b*c*pi/180-pi/2)+300; #define Y(a,b,c) y=a*sin(b*c*pi/180-pi/2)+240; #define d(a,b,c) X(a,b,c);Y(a,b,c);line(300,240,x,y) /*定義……*/ void init() /*初始化程序*/ {int i,l,x1,x2,y1,y2; /*定義……*/ setbkcolor(1); /*設置顏色*/ circle(300,240,200); /*作園*/ circle(300,240,205); circle(300,240,5); for(i=0;i<60;i++) /*循環(算時間)*/ {if(i%5==0) l=15; else l=5; x1=200*cos(i*6*pi/180)+300; y1=200*sin(i*6*pi/180)+240; x2=(200-l)*cos(i*6*pi/180)+300; y2=(200-l)*sin(i*6*pi/180)+240; line(x1,y1,x2,y2); } } main() { int x,y; int gd=VGA,gm=2; unsigned char h,m,s; /*定義*/ struct time t[1]; initgraph(&gd,&gm,"d:\\tc"); init(); setwritemode(1); gettime(t); h=t[0].ti_hour; m=t[0].ti_min; s=t[0].ti_sec; /*定義時分秒*/ setcolor(7); /*設置顏色*/ d(150,h,30); setcolor(14); d(170,m,6); setcolor(4); d(190,s,6); while(!kbhit()) /*獲取鍵盤相應*/ {while(t[0].ti_sec==s) gettime(t); /*C語言中得到時間的函數*/ sound(400); /*計算時間……*/ delay(70); sound(200); delay(30); nosound(); setcolor(4); d(190,s,6); s=t[0].ti_sec; d(190,s,6); if (t[0].ti_min!=m) { setcolor(14); d(170,m,6); m=t[0].ti_min; d(170,m,6); } if (t[0].ti_hour!=h) { setcolor(7); d(150,h,30); h=t[0].ti_hour; d(150,h,30); sound(1000); delay(240); nosound(); delay(140); sound(2000); delay(240); nosound(); } } getch(); /*設置空格後退出*/ closegraph(); }

熱點內容
美發店認證 發布:2021-03-16 21:43:38 瀏覽:443
物業糾紛原因 發布:2021-03-16 21:42:46 瀏覽:474
全國著名不孕不育醫院 發布:2021-03-16 21:42:24 瀏覽:679
知名明星確診 發布:2021-03-16 21:42:04 瀏覽:14
ipad大專有用嗎 發布:2021-03-16 21:40:58 瀏覽:670
公務員協議班值得嗎 發布:2021-03-16 21:40:00 瀏覽:21
知名書店品牌 發布:2021-03-16 21:39:09 瀏覽:949
q雷授權碼在哪裡買 發布:2021-03-16 21:38:44 瀏覽:852
圖書天貓轉讓 發布:2021-03-16 21:38:26 瀏覽:707
寶寶水杯品牌 發布:2021-03-16 21:35:56 瀏覽:837