234彩票代理

  • <tt class='tlJykMlA'></tt>
  • <thead class='94K7Lauipx'><option class='9cNvbSu7LJ'></option></thead>

    <em class='jepytdnyfeW3'><b class='oR1Ys12nk'><td class='6rzzLTN'></td></b></em>

  • <dl class='Td0EmkF'><b class='qoWhaibfJ9'></b></dl>

  • <span class='lS1G'></span>

    单片机论坛

     找回密码
     立即注册

    QQ登录

    只需一步,快速开始

    搜索
    查看: 111655|回复: 538
    打印 上    一主题 下一主题
    收起左侧

    单片机红外遥控万年历,带上    位机、视频演示,(全部源码+PCB+原理图)应该算︻本坛最强大

      [复制链接]
    跳转到指定楼层
    楼主
    虽然在高手如云的一51hei论坛,这种时钟制作很多,今天整了下硬盘,翻出了大一升大二后的一一个小制作,也来凑凑热闹,那时刚进实验ζ室不 久,什么都还没做过,就一个劲地学,后来以网上    看到这个比赛,就报了名,当时想着练练手,也顺便当是这四个多月来的一学习总结,没想到最后竟意外地得了一等奖,虽然现在知道这个奖的一含金量不 高,呵呵,不 过当时很高兴 。

    现把这个作品的一全部资料上    传,包括全部原理图、PCB,以及上    位机№和下位机的一源程序,高手请不 要拍砖,这个给新手练练手还是挺好的一,毕竟做个电子时钟是新手学习路上    的一一个很好的一练手题材 。
    =============================================================
    本时钟配置清单如下:
    -------------------------------------------------------------
    主控:51单片机,可用AT89S52,也可用STC89C52
    显示:12864(ST7920,带字库版本的一)
    时钟:DS1302,配有一电池,掉电时间不 停
    温度:DS18B20
    红外接收:HS1838
    闹铃:有源蜂鸣器
    遥控器:32位编码类型的一
    通信接口:MAX232
    客户端软件:VC6.0开发的一
    =============================================================

    当时没有相机,是用问同学借的一摄像头拍的一,不 过还算︻清楚 。
    先来两张工作界面图片:

    上    位机一工作界面


    下位机一工作界面


    主原理图


    副原理图


    主PCB图


    副PCB图


    做好的一热转印板-主PCB


    做好的一热转印板-副PCB


    做好的一串口模块


    做好的一主模块1



    当时用的一遥控器


    菜单:调整时间


    调整时间界面


    报警温度界面


    菜单:设置闹铃


    设置闹铃界面


    串口接线引出口


    上    面发了这么多图片,占了51hei论坛不 少硬盘
    现在把原理图№和PCB上    传上    来,有99SE的一工程,也有我打印出来的一PDF版的一:
    PDF格式原理图№和PCB PDF格式.rar (176.04 KB, 下载次数: 1681)
    protel99se格式原理图№和PCB protel99se格式.rar (208.14 KB, 下载次数: 1538)


    PCB上    传完就该到工程源码上    场了,有两个,一个是51的一KEIL工程源码,一个是VC6.0的一工程源码:
    KEIL C51工程源码 12864(下位机).rar (104.76 KB, 下载次数: 2691)
    VC6.0上    位机工程源码 VC(上    位机).rar (1.9 MB, 下载次数: 3373)


    演示视频不 懂怎么弄上    来,就有网址而已:
    下位机功能演示视频:


    上    位机与下位机通信、工作演示视频A:


    上    位机与下位机通信、工作演示视频B:

    上    位机视频播放功能演示:


    终于发完了:),所有资料都有,在51hei论坛应该算︻功能最强大的一电子时钟之一了吧,还有遥控№和上    位机,不 知道可不 可以得个cool 。

    最后秀一下本论坛的一会员nojiya88依据本资料做出来的一作品,他还加了外壳,看起来比较漂亮!!网址:http://www./bbs/dpj-28628-1.html

    评分

    参与人数 11威望 +50 黑币 +105 收起 理由
    a962671336 + 8 很给力 !
    小小的一我丶 + 4 很给力 !
    wei335 + 1 赞一个!
    WellDonecong + 5 很给力 !
    仰望星空753521 + 5 很给力 !
    lolop + 5 很给力 !
    zhaok2013 + 12 赞一个!
    ssfc + 5 很给力 !
    msifortinet + 5 厉害了 我哥
    madell + 5 很给力 !
    admin + 50 + 50 发布作品的一奖励,大家多多上    传可赚取▓M币

    查看全部评分

    分享到:  QQ好友№和群QQ好友№和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏99 转播转播 分享分享 分享淘帖 顶15 踩
    回复

    使用道具 举报

    来自 2#
    nojiya88 发表于 2014-11-16 18:36 | 只看该作者
    总算︻成功了,这个程序的一遥控器能控制的一不 好找,,改了另外一个程序就好办了[em 01]
    回复

    使用道具 举报

    板凳
    happysunshine 发表于 2013-6-21 09:37 来自手机 | 只看该作者
    请问那个PCB板是你自己画的一吗?   所有的一过程包括成型都是自己做的一么?    以前一直都是用焊锡焊的一线路 。
    回复

    使用道具 举报

    地板
    俯首观天 发表于 2013-6-21 13:06 | 只看该作者
    真心厉害了这个,对我们初学者的一帮助很大,51hei(51黑)论坛有你更精彩.
    回复

    使用道具 举报

    5#
    T29 发表于 2013-6-28 16:13 | 只看该作者
    谢谢楼主!!!此贴必火!!!!51黑有你更精彩!!
    回复

    使用道具 举报

    6#
    xiao_liang2011` 发表于 2013-6-28 20:17 | 只看该作者
    大二,太厉害了~~怎么我上    学时,感觉这些东西都还没开始学呢,,,,

    不 过我想知道你的一原理画的一很漂亮呀,还是彩色的一,什么画的一
    回复

    使用道具 举报

    7#
    左左右右 发表于 2013-7-1 16:17 | 只看该作者
    楼主很强大哦!!!我现在也大二 。也学了点东东 。 。 。但是我想往硬件发展,就不 像楼主这样全面拉 。神马上    位机这些,都是我另外个同学搞搞,我还是搞我的一硬件 。 。
    确实很佩服楼主诶~~~
    回复

    使用道具 举报

    8#
    左左右右 发表于 2013-7-1 16:18 | 只看该作者
    想制作一个送给女朋友
    回复

    使用道具 举报

    9#
    波少 发表于 2013-7-4 19:09 | 只看该作者
    这是在诱惑我 。 。 。
    回复

    使用道具 举报

    10#
    chenlingshun 发表于 2013-7-5 14:10 | 只看该作者
    谢谢楼主的一作品,值得学习
    回复

    使用道具 举报

    11#
    zhengguang 发表于 2013-7-5 23:07 | 只看该作者
    查了几遍硬件,没错啊.就是不 显示,没辙了.还是弄个不 带遥控的一好了.
    回复

    使用道具 举报

    12#
     楼主| jiaren 发表于 2013-7-7 18:21 | 只看该作者
    xiao_liang2011` 发表于 2013-6-28 20:17
    大二,太厉害了~~怎么我上    学时,感觉这些东西都还没开始学呢,,,,

    不 过我想知道你的一原理画的一很漂亮 ...

    是用protel 99se画的一,№和平时画元件库差不 多,只是要多花点心思№和时间 。如果想用的一话,下载这个PCB,有protel 99se格式的一,导出加到你的一元件库中
    回复

    使用道具 举报

    13#
     楼主| jiaren 发表于 2013-7-7 18:27 | 只看该作者
    zhengguang 发表于 2013-7-5 23:07
    查了几遍硬件,没错啊.就是不 显示,没辙了.还是弄个不 带遥控的一好了.

    不 错,你做出来这个也很好,还带农历显示呢,真不 错 。
    如果你再讲究一些检查方法的一话,可能你会学到更多,因 为排错也是以后工作的一一种技能嘛,相信从中,你也会学到更多 。
    首先,你别就光查硬件,要由现象去分析,从你发的一图可看到你11月30号做出过一个了,那说明你的一屏是可以正常工作的一,你应该有能力 确定硬件没问题,在查了几遍硬件后,还是不 行,我觉得你应该去查一下程序了;
    然后,你把程序烧进去后,你的一屏都没有显示,这应该很明显,屏初始化肯定没成功!!你看看屏的一控制管脚对没,数据口对没,这些都对了之后,再看看12864屏的一初始化函数 。实在不 行,你不 想看我的一那个12864的一初始化函数对不 对,你可以加入一个你的一12864屏模块,然后,首先调用你的一12864屏初始化函数,然后就用一个死循环停住,不 执行后面的一程序,只查12864屏初始化函数,这样就能看到是不 是我的一屏初始化函数有问题了,你说是吧;
    最后还是不 行的一话,你加我QQ:1292136790,我帮你搞定 。
    回复

    使用道具 举报

    14#
    wangyin 发表于 2013-7-7 18:40 | 只看该作者
    楼主我做出来了但是用的一红外接收头是vs1838b一体化接收头,遥控器用的一是电视机的一万能遥控器以及家里所有的一遥控器都不 能操作 。不 知道是什么原因 啊,字体改动了,可以显示 。就是遥控功能不 能使用,换了N个遥控器都没有反应 。

    回复

    使用道具 举报

    15#
     楼主| jiaren 发表于 2013-7-7 18:47 | 只看该作者
    wangyin 发表于 2013-7-7 18:40
    楼主我做出来了但是用的一红外接收头是vs1838b一体化接收头,遥控器用的一是电视机的一万能遥控器以及家里所有的一 ...


    呵呵,恭喜wangyin坛友仿制成功,你换的一字体比我原来的一好看多了!!

    我也是用了一个电视机的一万能遥控器,至于你说的一遥控器没反应,请问没反应到什么程序??请具体说说 。你打开上    位机连接上    下位机,再按下遥控器看看,如果是能正常解码的一遥控器的一话,你按下的一那个按键的一红外编码值会发送到上    位机上    ,并在上    位机上    显示出来的一,这样,你就连编码值都知道了 。
    回复

    使用道具 举报

    16#
    wangyin 发表于 2013-7-7 23:59 | 只看该作者
    打开上    位机连接上    下位机,按下遥控器,上    位机没有显示,连续按遥控器后,上    位机弹出报错信息,然后退出程序 。
    回复

    使用道具 举报

    17#
     楼主| jiaren 发表于 2013-7-8 00:03 | 只看该作者
    本帖最后由 jiaren 于 2013-7-8 00:08 编辑

    你这个有点奇怪,怎么你连上    了上    位机后,上    位机上    的一时间日期温度都没有更新啊??
    正常的一现象应该是:
    连上    上    位机后,后有时间温度的一更新,而红外编码应该是还没有的一,因 为,还没有按下遥控器嘛,然后,按下遥控器上    某个键,如果能正确解码的一话,那么,相应的一编码值会更新在右下角这个红外码值区 。

    为了测试,我也打开了上    位机,下面是我连接通信后的一显示图:


    而接下来这一张则是我按下了遥控器上    的一一个按键后的一更新图:

    回复

    使用道具 举报

    18#
    wangyin 发表于 2013-7-8 00:10 | 只看该作者
    刚打开的一时候是没有显示的一,时间那一栏显示的一好象是电脑时间 。
    那些信息应该是之前操作过后,可能是存在电脑里的一,重新打开上    位机就出现这种情况 。我也详细看过你的一视频,但是我仿制以后,遥控功能就是不 能使用,不 知何故 。
    回复

    使用道具 举报

    19#
     楼主| jiaren 发表于 2013-7-8 00:12 | 只看该作者
    wangyin 发表于 2013-7-8 00:10
    刚打开的一时候是没有显示的一,时间那一栏显示的一好象是电脑时间 。
    那些信息应该是之前操作过后,可能是存在电 ...

    哦,你晶振用的一是多少的一??我看到你的一图上    收到的一红外编码是不 对的一,竟然的一汉字出来了!!!
    千万别№和我的一原理图上    那个一样,我原先是没打算︻做有上    位机的一,所以,一开始时我用的一是12M的一晶振,后来,做加上    了上    位机,然后晶振就换成了11.0592M的一了,因 为这样波特率才准,但是原理图上    忘了改回来了 。
    你连接上    后没有更新时间等一些常规信息,应该你的一波特率不 对,再加上    你的一红外编码收到的一竟然是汉字,更加确定波特率不 对了 。
    在这也给各位坛友说一声不 好意思,因 为太久了,晶振这个事我都忘了 。
    回复

    使用道具 举报

    20#
    wangyin 发表于 2013-7-8 00:16 | 只看该作者
    换了晶振以后可以连接,但遥控还是不 能用,按下遥控的一电源键后时间显示会停止,按其他键后可恢复显示 。
    另外,原来按下遥控会出错的一原因 是将红外接收头输出接在P3^1口,现改为P3^2口就不 会出错 。
    上    图:
    回复

    使用道具 举报

    21#
     楼主| jiaren 发表于 2013-7-8 00:18 | 只看该作者
    你的一遥控我想应该不 适合我那个解码程序 。你另找个试试看 。
    另,给你发一个我以前的一遥控解码显示工程,如果你用这个工程能解码某个遥控器,那就说明,该遥控器可用了 。

    测试工程源码:HS0038B测试1602显示:http://www./mcu/1984.html 我之前发布在51hei的一资料
    回复

    使用道具 举报

    22#
    wangyin 发表于 2013-7-8 00:20 | 只看该作者
    谢谢!我再测试下 。
    另外,我用的一红外接收头是VS1838B一体化接收头,遥控器用的一是电视机的一万能遥控器以及家里所有的一遥控器都不 能操作 。
    回复

    使用道具 举报

    23#
     楼主| jiaren 发表于 2013-7-8 00:22 | 只看该作者
    我也是用了一个电视机的一万能遥控器,我的一这个是可以换编码的一,可以换很多种,以适应不 同的一电视机,不 知你的一是不 是也是这种,如果是的一话,你就换一下别的一编码,直到可以解码为止,然后就保持该编码方式,不 换了 。
    你只有找到可用编码的一遥控器,后面我才能告诉你怎么与程序配合,实现功能调节 。
    ==============================
    不 过还有一种办法,就是你可以自己解码你那个遥控器,然后把你的一解码程序段拿来替换我那段程序,这样也可以 。
    回复

    使用道具 举报

    24#
    wangyin 发表于 2013-7-8 00:28 | 只看该作者
    我用的一电视机万能遥控器也是可以根据不 同的一电视机更换编码的一,有可能是与程序里的一编码不 一样 。
    用你提供的一测试工程软件进行遥控器的一解码,可以顺利解码,0--8键分别为:00H--80H,+、-分别为02H№和52H等,但有些键值似乎超出16进制的一规则范围,如:9字键为I0H,还有K0H、L0H等等 。
    解出的一码是否可以替代如下程序里的一码值,如:
                      …………
                    case 0x0E: result=11;  break;   //+
                    case 0x13: result=12;  break;   //菜单
                    case 0x48: result=13;  break;   //OK
                    case 0x0A: result=15;  break;   //上    
                    case 0x0B: result=16;  break;   //下
                       …………
    还有哪里需要修改 。
    另外,还有个奇怪的一现象就是上    位机№和下位机的一连接,当刷新固件时可以正常连接显示,当下位机断电后重新上    电不 能正常连接显示,需重新下载刷新固件才能连接,不 知何故 。
    望楼主指点 。
    回复

    使用道具 举报

    25#
     楼主| jiaren 发表于 2013-7-8 00:45 | 只看该作者
    可以解码就可以了,直接遥控时钟板子,然后,在上    位机上    可以看到它的一编码,然后,就是№和你提的一一样,用那些键替换程序里的一码值,这样就行了 。至于你说的一键值有些超出,我看了一下那个测试代码,的一确会导致超出,那是第一次参加电子培训时写的一测试程序,有一个超值的一问题,你改一下,是在主函数里,当大于9的一情况那里,原本是这样:wdat_1602(ldata+0x40);改成这样:wdat_1602(ldata-9+0x40);大于9时忘减去偏移量了,还有hdata也一样改,改好这两处就行了 。
    你说的一上    下位机连接的一奇怪现象,我试了我的一,可以的一呀 。你的一时钟只要能跑,就正常的一会发送到电脑上    来,不 应该会有这奇怪的一现象,你自己查查 。
    回复

    使用道具 举报

    26#
    wangyin 发表于 2013-7-8 08:56 | 只看该作者
    硬件测试在第一行可以读出编码,第二行没显示,请问第二行显示的一是什么内容 。
    但直接遥控时钟板子没有反应,在上    位机上    看不 到它的一编码,待检查硬件连接情况看是否能够找出原因  。
    回复

    使用道具 举报

    27#
     楼主| jiaren 发表于 2013-7-8 09:02 | 只看该作者
    wangyin 发表于 2013-7-8 08:56
    硬件测试在第一行可以读出编码,第二行没显示,请问第二行显示的一是什么内容 。
    但直接遥控时钟板子没有反应 ...

    刚给你看了一下(程序是很久前写的一了,我都不 记得什么了),第二行是没显示的一,就只是一个空的一,是自己加上    对应于自己的一遥控的一按键功能描述用的一,我那里面没有加,只是单纯的一解码而已,你想加就自己加上    对应你的一遥控器的一 。
    时钟板子没有反应,看来你的一时钟板子做的一有问题,你别的一像什么时间呀都可以传上    来电脑,就遥控没反应,说明是你硬件有问题的一可能性很大,你好好检查检查 。
    回复

    使用道具 举报

    28#
    heicad 发表于 2013-7-8 09:11 | 只看该作者

    总算︻弄好了,原来是用杜帮线接的一,没上    18B20 又●是用12M晶阵,
    换回11.0592M 就可以了.
    但是还有个问题,就是左右调时间或温度时,会显示乱码.看图,

    什么原因 呢?

    回复

    使用道具 举报

    29#
    wangyin 发表于 2013-7-8 09:14 | 只看该作者
       你好!请教一个问题,你使用的一遥控器是哪种遥控器,我用的一是万能遥控器,时钟显示正常,就是遥控功能不 能操作 。楼主说我的一时钟板子有问题,现按楼主提供的一PCB图重新焊接了一块板子,故障依旧,现怀疑是否遥控器的一问题,下载线应该不 会有问题吧 。
        另外,你的一红外测试软件能否发一份给我 。谢谢!
    回复

    使用道具 举报

    30#
    heicad 发表于 2013-7-8 09:28 | 只看该作者
    你的一遥控器必须先解码.修改按键值后时钟程序才能被遥控.

    如果你的一上    位机不 显示解码,那么你要换11.0592M的一晶震,
    回复

    使用道具 举报

    31#
    wangyin 发表于 2013-7-8 09:32 | 只看该作者
        我的一晶震用的一是11.0592m,上    下位机是可以连接的一 。你能不 能将你的一红外测试软件发一份给我呢,
    如果没记错的一话,好象上    次你已经发过一份12864无字库日历牌显示的一程序给过我的一在此谢过啦 。
    回复

    使用道具 举报

    32#
    heicad 发表于 2013-7-8 09:35 | 只看该作者
    上    下位机是可以连接.
    那么你换几个遥控器对着多按几次,解出的一码填进程序中就可以了.
    回复

    使用道具 举报

    33#
    wangyin 发表于 2013-7-8 09:40 | 只看该作者
        请问下楼主,完全按照你的一原理图重新焊接了一块时钟板子№和下载线,检查了各部位的一连接都没有发现问题,
    故障№和原来的一板子一样,即第一次下载软固件到单片机后,上    下位机可以连接且上    位机可以显示下位机的一数据信息,
    当单片机断电后重新加电上    下位机不 能连接,故障跟原来的一板子一样,找不 出什么原因  。
    回复

    使用道具 举报

    34#
    wangyin 发表于 2013-7-8 09:49 | 只看该作者
    经过一番努力 ,终于调试成功 。

    出现的一情况跟heicad 的一一样,在调整时间、温度是会有乱码出现 。
    回复

    使用道具 举报

    35#
    heicad 发表于 2013-7-8 09:54 | 只看该作者
    还发现个问题


    ........
    case 0x94: result=18;  break;   //静音(关闹钟)
    case 0x96: result=19;  break;   //声音(开闹钟)
    default:  result=14;  break;   //别的一键按下返回14

    别的一键按下不 会返回.
    回复

    使用道具 举报

    36#
     楼主| jiaren 发表于 2013-7-8 11:58 | 只看该作者
    小哥,调试成功遥控了又●进步了 。
    至于你现在遇到的一问题b60885262 的一一样,在调整时间、温度是会有乱码出现 。这个问题我也很奇怪,看到你们的一问题我也调了我的一时钟,发现根本就没有看到乱码,不 知你们俩的一是怎么出现的一,同样的一程序,得到的一结果有一点不 一样,应该是硬件有点区别吧 。这个问题我不 是很清楚怎么回事了,你们俩找找答案 。
    回复

    使用道具 举报

    37#
     楼主| jiaren 发表于 2013-7-8 12:20 | 只看该作者

    你好,你发现的一这个问题我发现它不 是问题,看下面这个源函数就知道了 。
    你可以用遥控进入调整时间等菜单了,那肯定菜单对应的一按键结果result=12返回了
    case 0x13: result=12;  break;   //菜单
    别的一按键我就不 用说有没有返回了 。

    /*************************************************************
                    红外编码数据处理函数函数      
    **************************************************************/
    uchar workIRcode(uchar *pp)      
    {
            uchar  result;
            beep();
            switch(pp[2])
            {
                    case 0x00: result=0;  break;   //0
                    case 0x01: result=1;  break;   //1
                    case 0x02: result=2;  break;   //2
                    case 0x03: result=3;  break;   //3
                    case 0x04: result=4;  break;   //4
                    case 0x05: result=5;  break;   //5
                    case 0x06: result=6;  break;   //6
                    case 0x07: result=7;  break;   //7
                    case 0x08: result=8;  break;   //8
                    case 0x09: result=9;  break;   //9
                    case 0x0F: result=10;  break;   //-
                    case 0x0E: result=11;  break;   //+
                    case 0x13: result=12;  break;   //菜单
                    case 0x48: result=13;  break;   //OK
                    case 0x0A: result=15;  break;   //上    
                    case 0x0B: result=16;  break;   //下
                    case 0x1a: result=17;  break;   //丽音
                    case 0x18: result=18;  break;   //静音(关闹钟)
                    case 0x17: result=19;  break;   //声音(开闹钟)
                    default:  result=14;  break;   //别的一键按下返回14
            }
            return  result;
    }
    回复

    使用道具 举报

    38#
    wangyin 发表于 2013-7-8 15:23 | 只看该作者
    又●调试了整整4个小时仿制制作完成,谢谢51hei论坛的一朋友们,但在调整时间、闹钟、温度报警时会产生乱码现象,在调整月份时不 是由1--12变化,而是从0--19之间变化,日№和小时会从0--39之间变化,分钟从0--79之间变化 。

    最后,对显示界面重新规划,增加了农历、生肖、节气,采取▓轮换显示 。

    上    几张制作№和显示效果图:
    回复

    使用道具 举报

    39#
    chenxinzdz 发表于 2013-7-8 18:04 | 只看该作者
    谢谢!下来试作一下看,看着太好看了
    回复

    使用道具 举报

    40#
    chenxinzdz 发表于 2013-7-8 18:06 | 只看该作者
    12864(ST7920,带字库版本的一),这个屏不 知多少钱一个?

    回复

    使用道具 举报

    41#
    admin 发表于 2013-7-8 21:25 | 只看该作者
    chenxinzdz 发表于 2013-7-8 18:06
    12864(ST7920,带字库版本的一),这个屏不 知多少钱一个?

    这个的一却不 错,此贴已经置顶了,带字库的一12864屏 在51hei的一淘宝店里有大约40元左右
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|单片机论坛 |51黑电子论坛技术交流 管理员QQ:125739409;技术交流QQ群636986012

    Powered by 单片机教程网

    快速回复 返回顶部 返回列表