切换到宽版
爱科技/爱创意/爱折腾/爱极致;技术知识分享平台,点击进入新版数码之家网站
  • 16214阅读
  • 110回复

[其他]【红外遥控的旋转LED数码钟】已完成整理并添加程序 [复制链接]

上一主题 下一主题
离线shawyao
 

发帖
75
M币
1099
专家
5
粉丝
46
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2010-06-18
整体效果

平常在盒子里面工作 安全放心

制作过程  
STC单片机引脚驱动能力有限 只能加三级管放大
三极管用这种排列可以在不另行飞线的前提下最大限度的减小占用空间



反面很简洁吧

上面的一排焊点接反面的排阻

被压扁的排阻

单片机的P0和P2口正好和三极管一一对应

每根漆包线的长度都是正好的 线头用两个排阻夹住 降低故障率

这个需要点耐心 ~~~~

最恶心的就是配重了  因为旋转部分太小了而且不规则 旋转重心很难找 牺牲了很多实验盘

为了找重心 铁丝都是有余量的 后面的铜铸是配重用的 哈哈

底座的走线
   
方便调速的电阻
   
为了美观 走线部分采用了铝箔 方便拆装而且美观  虽然有点电阻 我忍了....

电刷的特写
曾经将被刷部分设计在旋转的光盘下面
后来因为阻力噪音都比较大就改在这里了
现在效果很理想


导电顺序
底座VCC---铜柱---铝箔----电机体 --电机主轴---旋转部分的小弹簧----单片机
底座GND---铜柱---电刷---主轴上面的铜套----压紧弹簧----铝箔---旋转部分铝箔--短铜柱---铁丝----单片机和LED


转盘下面的细节
沿用了光盘夹的磁铁固定方式
拆卸安装都非常简单
这样的设计很方便下载程序和调整  


耳机线正好16根丝 呵呵

干簧管 曾经考虑过霍尔元件 觉得还是干簧管的原理简单 而且便宜易用

GND 连接细节

支架部分

俯视图  晶振和小电容在芯片座里面 哈哈

铁丝支架连在排阻的公共端 担负供电任务
 
电容保证在电刷不接触不良时的供电  效果不错

为了稳定显示 用这种方式确定每圈的起始点  字有轻微晃动 效果还可以


改为102的排阻 白天也很亮


开灯的效果

关灯的效果  实际很亮 这是相机调节后的结果

有朋友问时钟芯片的问题  
呵呵     其实这也是我下一步的想法  
现在走时是用定时器模拟的  想先看一看效果  不是真正意义上的时钟  
等加上了时钟芯片可以让它实现更多的功能 比如日期星期和时间滚动显示 问好等等之类的功能
现在比较头疼备用电源的问题  多放一块电池很困难 而且可能破坏已有的平衡  正在研究中....


电源不错 一次买了4个 至于淘宝地址吗......呵呵 大家自己找吧 ...
坛里有人拆过这款电源了 我看过拆解后才买的..事实证明很不错~~~


电源小板  可以插普通电线  可以插杜邦线 可以接USB公口  断开跳冒可以测电流  有电源指示灯和输出指示灯······自己做的用着就爽  哈哈!!

咱们的LOGO
            

遥控视频

    flash: http://player.youku.com/player.php/sid/XMTgyNjcwNTk2/v.swf

原理和摇摇棒是一样的 大家可以自己找一下原理 很好理解的  
稳定显示就是在每圈设置一个起始点 到达这一点就发生一次中断 让单片机重新“播放”显示内容 这样每圈显示的内容就一样了
制作方法上面已经说的很详细了 大家可以清楚的看见每一个细节 我毫无保留
有坛友要源程序的 为了不浪费大家M 直接粘贴到下面了
其实程序真的很简单 在这里给大家发一个最基本的框架吧   这样激励大家创新  
大家可以自己加更多的功能的 记住  它只是一个显示屏........

基本稳定显示


#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int

uint t=0;

uchar code a[22][8]=
{

{0xFF,0xF7,0xF7,0x03,0x03,0xFF,0xFF,0xFF},
{0xFF,0xFF,0xFF,0xC0,0xC0,0xFF,0xFF,0xFF},/*"1",0*/

{0xE7,0xE3,0xFB,0xFB,0x7B,0x03,0x87,0xFF},
{0xC7,0xC3,0xD9,0xDC,0xDE,0xDF,0xDF,0xFF},/*"2",1*/

{0xE7,0x63,0x7B,0x7B,0x7B,0x03,0x87,0xFF},
{0xE7,0xC7,0xDF,0xDF,0xDF,0xC0,0xE0,0xFF},/*"3",2*/

{0xFF,0xFF,0x3F,0x0F,0xC3,0x03,0x03,0xFF},
{0xFB,0xF8,0xF8,0xFB,0xFB,0xC0,0xC0,0xFB},/*"4",3*/

{0x03,0x03,0xBB,0xBB,0xBB,0x3B,0x7B,0xFF},
{0xE7,0xC7,0xDF,0xDF,0xDF,0xC0,0xE0,0xFF},/*"5",4*/

{0x07,0x03,0x7B,0x7B,0x7B,0x63,0xE7,0xFF},
{0xE0,0xC0,0xDF,0xDF,0xDF,0xC0,0xE0,0xFF},/*"6",5*/

{0xFB,0xFB,0xFB,0x3B,0x0B,0xC3,0xF3,0xFF},
{0xFF,0xFF,0xC1,0xC0,0xFE,0xFF,0xFF,0xFF},/*"7",6*/

{0x87,0x03,0x7B,0x7B,0x7B,0x03,0x87,0xFF},
{0xE0,0xC0,0xDF,0xDF,0xDF,0xC0,0xE0,0xFF},/*"8",7*/

{0x07,0x03,0xFB,0xFB,0xFB,0x03,0x07,0xFF},
{0xE7,0xC6,0xDE,0xDE,0xDE,0xC0,0xE0,0xFF},/*"9",8*/

{0x0F,0x07,0xF3,0xFB,0xFB,0xF3,0x07,0x0F},
{0xF0,0xE0,0xCF,0xDF,0xDF,0xCF,0xE0,0xF0},/*"0",9*/

{0xFF,0xFF,0xCF,0xCF,0xFF,0xFF,0xFF,0xFF},
{0xFF,0xFF,0xF3,0xF3,0xFF,0xFF,0xFF,0xFF},/*":",10*/

};





void main()
{

    IT0=0;
    PX0=1;
    TMOD=0x01;
    TH0=(65536-1200)/256;
    TL0=(65536-1200)%256;
    EX0=1;
    ET0=1;
    TR0=1;
    EA=1;
    while(1)
    {

    }
}
void zhongduan0() interrupt 0
{
    t=0;
}
void timer0() interrupt 1
{
    TH0=(65536-400)/256;
    TL0=(65536-400)%256;
    t++;
    P0=a[2*(t/8)][t%8];
    P2=a[2*(t/8)+1][t%8];
}



遥控的时钟显示部分因为增加了从上至下擦除效果(视频中秒的显示效果)比较难理解  给大家发一下核心部分研究吧   呵呵  4个中断全用上了

void zhongduan0() interrupt 0
{
    t=0;
}
void timer0() interrupt 1
{
    TH0=(65536-400)/256;
    TL0=(65536-400)%256;
    t++;
    if((t<20)||(t>=36))
    {
        P0=0x00;
        P2=0x00;
    }
    if((t>=20)&&(t<28))        //显示时的十位
    {
         P0=a[2*(shi/10)][t-20];
        P2=a[2*(shi/10)+1][t-20];
    }
    if((t>=28)&&(t<36))            //显示时的个位
    {
         P0=a[2*(shi%10)][t-28];
        P2=a[2*(shi%10)+1][t-28];
    }
}

void IR_IN(void) interrupt 2      //红外解码部分
{
  unsigned char j,k,N=0;
     EA = 0;  
     delay(15);
     if (IRIN==1)
     { EA =1;
       return;
      }
                           //确认IR信号出现
  while (!IRIN)            //等IR变为高电平,跳过9ms的前导低电平信号。
    {delay(1);}

for (j=0;j<4;j++)         //收集四组数据
{
  for (k=0;k<8;k++)        //每组数据有8位
  {
   while (IRIN)            //等 IR 变为低电平,跳过4.5ms的前导高电平信号。
     {delay(1);}
    while (!IRIN)          //等 IR 变为高电平
     {delay(1);}
     while (IRIN)           //计算IR高电平时长
      {
    delay(1);
    N++;          
    if (N>=30)
     { EA=1;    
     return;}                  //0.14ms计数过长自动离开。
      }                        //高电平计数完毕                
     IRCOM[j]=IRCOM[j] >> 1;                  //数据最高位补“0”
     if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;}  //数据最高位补“1”
     N=0;
  }//end for k
}//end for j
  
   if (IRCOM[2]!=~IRCOM[3])
   { EA=1;
    return;
   }
   switch(IRCOM[2])
   {
          case 0x0F: shi++; break;
      case 0x0D: fen++; break;
      case 0x10: miao++; break;
    }

    EA = 1;
}

void timer1() interrupt 3
{
    TH1=(65536-25000)/256;
    TL1=(65536-25000)%256;
    count++;
              if(count==48)
        {
            count=0;
            miao++;
            if(miao>=60)
            {
                miao=0;
                fen++;
                if(fen>=60)
                {
                    fen=0;
                    shi++;
                    if(shi>=24)
                    {
                        shi=0;
                    }

                }

            }


            
        }    
}

[ 此帖被shawyao在2010-06-20 07:42重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共53条打赏
myhaly M币 +20 謝謝分享 2019-01-21
温力口 M币 +9 谢谢分享,胶枪用了五、六支,第一次看到这样脑残的设计。。。。。。。 2019-01-13
myhaly M币 +13 謝謝分享 2019-01-09
aacyxjz M币 +9 原創內容,可以改遥控开关接收器了,三路哟 2019-01-09
萍聚 M币 +9 - 2019-01-08
离线onefrog
发帖
192
M币
104
专家
1
粉丝
50
只看该作者 1楼 发表于: 2010-06-18
请登录后查看
离线hongo

发帖
53039
M币
149632
专家
275
粉丝
15184
只看该作者 2楼 发表于: 2010-06-18
请登录后查看

发帖
23702
M币
5090
专家
131
粉丝
34303
只看该作者 3楼 发表于: 2010-06-18
请登录后查看

发帖
23702
M币
5090
专家
131
粉丝
34303
只看该作者 4楼 发表于: 2010-06-18
请登录后查看
离线tonywawd

发帖
12982
M币
372
专家
32
粉丝
4221
只看该作者 5楼 发表于: 2010-06-18
请登录后查看
离线srm2002

发帖
1352
M币
2130
专家
3
粉丝
165
只看该作者 6楼 发表于: 2010-06-18
请登录后查看
离线cokyzqy

发帖
487
M币
2384
专家
2
粉丝
10
只看该作者 7楼 发表于: 2010-06-19
请登录后查看
离线174505598

发帖
1739
M币
6356
专家
2
粉丝
65
只看该作者 8楼 发表于: 2010-06-19
请登录后查看
本帖最近打赏记录:共1条打赏
离线izebra

发帖
1522
M币
4907
专家
3
粉丝
40
只看该作者 9楼 发表于: 2010-06-19
请登录后查看
快速回复
限80 字节
温馨提示:欢迎交流讨论,请勿发布纯表情、纯引用等灌水帖子;以免被删除
 
上一个 下一个