返回该小组首页 回复主题
dzgdzzh

dzgdzzh

小组等级:     E币:622  (E币换礼)

#1楼主:DIY"硬盘时钟"资料公开

文章发表于:2008-03-29 03:31

本人经过一段时间的动手制作,基本掌握了其原理和技术。 关键问题还是噪音大和发光亮度低,几乎没有继续做下去的必要了(另一原因是目前要忙于其它事情)。现公开本人的制作资料,让有兴趣朋友继续。

    C51程序显示部分:
   
// 硬盘时钟试验(部分)程序
//
//    周正华
// 2008.3.29

#include

#define LR 0x02;
#define LB 0x08;
#define LG 0x10;

sbit Rs="P3"^0;
sbit LED_R=P3^1;
sbit LED_B=P3^3;
sbit LED_G=P3^4;

unsigned char Put_LED[60];
unsigned int m,Ti0,Tm0;


void intersvr1(void) interrupt 0 using 1
{
TH0=-Ti0/256; TL0=-Ti0%256;
m=0;
}


/*定时中断1处理函数*/
void timer0(void) interrupt 1 using 1
{
TH0=-Tm0/256; TL0=-Tm0%256;
P3=P3|Put_LED[m];
TH1=-300/256; TL1=-300%256;
m++;
}

/*定时中断2处理函数*/
void timer1(void) interrupt 3 using 1
{
LED_R=0;LED_B=0;LED_G=0;
}

/*演示主程序*/
void main(void)
{
m=0;
Rs=0;
Ti0=103;
Tm0=273;

//分别指示四个时钟位置的"时针"
Put_LED[15]=LR;
Put_LED[30]=LG;
Put_LED[45]=LB;
Put_LED[0]=LR;

//中断初始化
TMOD=0x11;  
TH0=-Ti0/256; TL0=-Ti0%256;
TR0=1;ET0=1;

TH1=-300/256; TL1=-300%256;
TR1=1;ET1=1;

EA=1;IT0=1;EX0=1;
for(;;){
}
}

    我试着将硬盘的晶振换小,的确会让主轴电机转速减慢,而且噪音明显减小。遗憾的是此时的电机转速变成不稳定了。
    发现一个很有趣的问题, 可能受光波性质影响,  同时设置在同一地方的不同颜色的"时针"实际上并不在一起, 就像光谱一样散开的, 在编程时, 也许要作适当的修正。上一张图(分别指示0, 3, 6, 9点位置的四个指针 )。
    最后要说明的是: 原方案用的是透光方式而我在做试验时用的是反光方式。

点击开大图

      【回复】

彩云

   小组等级:    E币:3446  (E币换礼)

#2

文章发表于:2008-04-01 11:18

楼主厉害啊~佩服,,学习中

cat_li

   小组等级:    E币:2048  (E币换礼)

#3

文章发表于:2008-04-17 09:07

厉害,学习了

jyzt

   小组等级:    E币:14  (E币换礼)

#4

文章发表于:2008-04-23 12:28

楼主好野,及时雨啊

 

cndfzx

   小组等级:    E币:175  (E币换礼)

#5

文章发表于:2008-04-23 20:32

好呀,有时间研究研究,下复制了!

zhaosir

   小组等级:    E币:162  (E币换礼)

#6

文章发表于:2008-04-28 12:35

楼主能否介绍下硬件电路?

dzgdzzh

   小组等级:    E币:622  (E币换礼)

#7

文章发表于:2008-04-28 18:10

硬件很简单,用光偶传感器作外部中断,然后是三色LED的驱动信号,这在程序中可看出。这里发表程序不知什么原因,会自动添加一些双引号,大家引用时要注意。

zhaosir

   小组等级:    E币:162  (E币换礼)

#8

文章发表于:2008-05-07 00:08

请问楼主:硬盘上的那三束光是怎样产生的,是把发光二极管固定在盘片上的吗?

我拆了一个硬盘正准备步楼主之后尘,谢谢!

dzgdzzh

   小组等级:    E币:622  (E币换礼)

#9

文章发表于:2008-05-07 09:10

不是的,是在硬盘蝶片上开一小口,用透光或反光方式显示一个光条,而由于视觉暂留原理可显示若干这样的光条,详细资料见:http://alan-parekh.com/projects/hard-drive-clock/

zhaosir

   小组等级:    E币:162  (E币换礼)

#10

文章发表于:2008-05-08 12:44

请问楼主:你说“是在硬盘蝶片上开一小口,用透光或反光方式显示一个光条”

的意思是不是把发光二极管放在开口碟片的下面,然后硬盘通电是碟片旋转起来就可以有光条出现?    我按照这样的方法做出来 只看到碟片下的二极管,我用的高亮度白色发光管,碟片开口约1mm。

dzgdzzh

   小组等级:    E币:622  (E币换礼)

#11

文章发表于:2008-05-08 18:35

对呀, 下一步你让发光二极管的发光与旋转的硬盘碟片同步(用光偶传感器检测位置), 你就会看到一发亮的光条. 一个指针就成了.

总共 , 当前 /,2【下一页】

快速回复主题--如果想加入编辑器功能,建议使用 [高级回复]

您目前还不是小组成员,请先加入

回复贴子区

用户名:    您没有注册?

密码:    忘记了密码?

内容:

浏览该小组的用户还看过...

设计资源与分销

";