• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

自己动手做了一个电子时钟

学了2个月做的,拿上来大家一起看看

 

这是还没按键调时的。

这张和上面这张是有按键调时和暂停功能的。

全部回复(29)
正序查看
倒序查看
001a
LV.3
2
2014-02-18 21:04
不用DS1302吗?焊接的飞线真成问题啊
0
回复
pirate
LV.4
3
2014-02-18 21:07
@001a
不用DS1302吗?焊接的飞线真成问题啊
花了一个晚上,不过确实有点看不过去啊能用就好
0
回复
2014-02-18 21:11

那俩小的也是单片机?

0
回复
pirate
LV.4
5
2014-02-18 21:12
@soap泡泡
那俩小的也是单片机?
不是,是锁存器74hc573
0
回复
2014-02-18 21:15

 课程设计做的闹钟,除了按键跟蜂鸣器,其他部分跟你差不多

 

0
回复
pirate
LV.4
7
2014-02-18 21:16
@soap泡泡
[图片] 课程设计做的闹钟,除了按键跟蜂鸣器,其他部分跟你差不多 
这种做法有点类似开发板,线有点乱。我这个还没完成,蜂鸣器也会有,只是没有矩阵键盘,材料不够。
0
回复
2014-02-18 21:19
@pirate
这种做法有点类似开发板,线有点乱。我这个还没完成,蜂鸣器也会有,只是没有矩阵键盘,材料不够。
我是第一次做实物,怕线接错了或者设计的有问题
0
回复
2014-02-18 21:23
@soap泡泡
我是第一次做实物,怕线接错了或者设计的有问题

0
回复
matou
LV.3
10
2014-02-18 21:25
买了一个开发板 不知道能不能做时钟
0
回复
pirate
LV.4
11
2014-02-18 21:26
@matou
买了一个开发板不知道能不能做时钟
只要有数码管就可以。
0
回复
soap泡泡
LV.4
12
2014-02-18 21:28
@matou
买了一个开发板不知道能不能做时钟
可以自己作一个最小系统,花不了几块钱,就能作一个时钟
0
回复
matou
LV.3
13
2014-02-18 21:30
@pirate
只要有数码管就可以。
开发板上有液晶吗?想用液晶做,还带秒表,定时器
0
回复
daylight
LV.4
14
2014-02-18 21:32
说实在的布线真的不敢恭维,但是才学两个月,已经很不错了,可以尝试做一个稳压电源,比时钟这个难一点,可以尝试做做
0
回复
pirate
LV.4
15
2014-02-18 21:36
@daylight
说实在的布线真的不敢恭维,但是才学两个月,已经很不错了,可以尝试做一个稳压电源,比时钟这个难一点,可以尝试做做
我没有PCB,所以只能用跳线的方法。
0
回复
2014-02-20 17:19
@pirate
我没有PCB,所以只能用跳线的方法。
已经很不错了!!
0
回复
pirate
LV.4
17
2014-02-20 23:28
@看破红尘
已经很不错了!!

谢谢

0
回复
刘远俊
LV.1
18
2014-03-15 09:33
**此帖已被管理员删除**
0
回复
2014-03-15 10:04
@刘远俊
**此帖已被管理员删除**
顶楼主!!!
0
回复
2014-09-23 15:51
@001a
不用DS1302吗?焊接的飞线真成问题啊
我做过一个纯硬件的比这乱多了后面都是飞线啊。还好数字电路抗干扰好
0
回复
caoyugood
LV.7
21
2014-09-24 15:49

楼主动手能力真强!

0
回复
wj_12691495
LV.8
22
2014-09-25 10:58
@caoyugood
楼主动手能力真强!
支持楼主。
0
回复
陈1993
LV.1
23
2014-09-28 14:00
看着头晕。。。
0
回复
calpur
LV.1
24
2014-10-15 09:03
买了一个开发板 不知道能不能做时钟制砂生产线
0
回复
小徒弟a
LV.1
25
2014-10-17 20:45
漂亮
0
回复
zrk787
LV.8
26
2014-10-18 10:56

厉害,纯手工制作。

0
回复
fu-tao
LV.4
27
2014-10-21 11:39
锁存器可以不用,用几只三极管就可,楼主不错,学了俩月就如此进步,……
0
回复
wheelzhou
LV.9
28
2014-10-24 21:18
@fu-tao
锁存器可以不用,用几只三极管就可,楼主不错,学了俩月就如此进步,……

课程设计用51做的,直接带按键还可以设定时间哦,呵呵……

不过现在让我重做的话,估计得三个月,至少

0
回复
2014-11-11 21:10
@wheelzhou
课程设计用51做的,直接带按键还可以设定时间哦,呵呵……不过现在让我重做的话,估计得三个月,至少
用不了这么久吧,人家汇编都用不了那么久,
0
回复
abc123194
LV.2
30
2014-11-29 08:36

以下是我做的一个简易时钟程序,功能不多,就只显示小时和分钟,两个键调节小时数和分钟数,关键是代码少啊,也不用锁存器,只要三极管就行了

#include       

#define uchar unsigned char 

#define uint unsigned int 

uchar Hour,Minite,Second,Num;

uchar code table[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90};   

sbit jiashi=P3^1;

sbit jiafeng=P3^0;

void delayms(uint xms)     

{

 uint i,j;  

 for(i=xms;i>0;i--)        //i=xms即延时约xms毫秒   

for(j=113;j>0;j--);

 }   

void init()    //初始化函数 

TMOD=0x01;//设置定时器0为工作方式1(0000 0001)

TH0=(65536-50000)/256;//装初值50ms一次中断  

TL0=(65536-50000)%256;  

EA=1;  //开总中断  

ET0=1; //开定时器0中断   

TR0=1; //启动定时器0  

Num=0;

Hour=06;  

Minite=00; 

Second=00; 

}

void display(uchar Hour,uchar Minite)  //显示子函数 

{

P1=0xff;

P2=0xf7;

P1=table[Hour/10];      

delayms(5); 

P1=0xff;

P2=0xfb;     

P1=table[Hour%10]&0x7f;

delayms(5);

P1=0xff;

P2=0xfd;         

P1=table[Minite/10];    

delayms(5);       

P1=0xff;

P2=0xfe;

P1=table[Minite%10];   

delayms(5);           

void T0_time() interrupt 1

 TH0=(65536-50000)/256;//重装初值  

TL0=(65536-50000)%256;   

Num++;     

}     

void jishi ()   

{  

 if(Num==20)  //如果到了20次,说明1秒时间到 

 { 

 Num=0;  //然后把num清0重新再计20次  

Second++;  

 if(Second>=60)    

 {  

  Second=0; 

Minite++;

if(Minite>=60) 

 {

 Minite=0;  

Hour++; 

if(Hour>=24)

{

Hour=0;

}

 }

  }     

 }

if(jiashi==0)

{

delayms(50);

if(jiashi==0)

{

Hour++;

Second=0;

if(Hour>=24)

{

Hour=0;

}    

while(!jiashi);

}

}

if(jiafeng==0)

{

delayms(50);

if(jiafeng==0)

{

Minite++;

Second=0;

if(Minite>=60) 

{

 Minite=0;

}

while(!jiafeng);

}

}

   }

void main()

 { 

init(); 

 while(1)

 {

  display(Hour,Minite);

jishi();

 }

}

0
回复