找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 12554|回复: 28
收起左侧

送女朋友的生日礼物(TFT屏的触摸电子相册+真人语音闹铃的万年历)

  [复制链接]
ID:70650 发表于 2014-12-19 02:19 | 显示全部楼层 |阅读模式
DIY TFT屏的触摸电子相册+真人语音闹铃的万年历电子时钟+温湿度检测。

144403eombm584bm1m3xb5.jpg.thumb.jpg
主电路模块

144354gh2f13pjvwzwezaz.jpg.thumb.jpg
由于引脚不够用了两块单片机,做了两层结构。

144348famwqzgoy44pi4uf.jpg.thumb.jpg           144359ojwignqo6wddr7wn.jpg.thumb.jpg

144413tnli97wdf7fbwzr7.jpg.thumb.jpg

144420is3h3ifid3ff3fyd.jpg.thumb.jpg
用木板做了个框架

144430ctyby5hzygh6clcb.jpg.thumb.jpg
用家里的颜料给上颜色

144434sx9njhnnuthkj8kh.jpg.thumb.jpg
通过读取SD卡内的相片数据,在TFT屏显示。
当初在淘宝的时候看见这2.2寸TFT屏和LCD5110都没用个,所以都一起买了,用上去练一下手。

144448tizidvktmqhx0czq.jpg.thumb.jpg
还写了一个贪吃蛇的游戏进去,但效果不怎么好,就放着了。

144437xf4f2f032zfwugjg.jpg.thumb.jpg
用手机电池供电,不用触摸屏的话,可以连续工作三天。

144441zqjxwbxr9qrb9nsq.jpg.thumb.jpg
还可以用USB供电同时给手机电池充电。有一小麦克风可以用来录音做闹铃

144444peuzuu6cezv575ku.jpg.thumb.jpg
喇叭+温湿度传感器。



LCD5110屏的控制程序+DS1302时钟芯片: 时钟.zip (5.19 MB, 下载次数: 207)
TFT屏的程序: 电子相册 触摸 手写.zip (209.21 KB, 下载次数: 100)
TFT屏驱动芯片的技术文档: 控制器HX8340-B_T_DS_preliminary_v01_071203.rar (4.51 MB, 下载次数: 85)

评分

参与人数 1黑币 +15 收起 理由
piplxh + 15 赞一个!

查看全部评分

回复

使用道具 举报

ID:70650 发表于 2014-12-19 02:20 | 显示全部楼层
下面是主程序文件预览:
  1. #include<reg51.h>
  2. #include"define.h"
  3. #include"delay.h"
  4. #include"DS1302.h"
  5. #include"5110.h"
  6. #include"key.h"
  7. #include"dht11.h"

  8. bit flag1,flag_clock,flag,flag_c,flag7,flag_arm,flag_0=1,flag_1=1,flag_2=1,flag_c0;
  9. uchar flag_dht;
  10. uchar year,month,date,day,second,hour,min;
  11. uchar monthday[]={0,31,0,31,30,31,30,31,31,30,31,30,31};
  12. uchar *week[]={"SUN","MON","TUS","WEN","THU","FRI","SAT"};
  13. uchar flag_dis;
  14. void init_T0(void)
  15. {
  16.     TMOD = 0x01;
  17.     TH0 = 0x3C;
  18.     TL0 = 0x0B0;
  19.     EA = 1;
  20.     ET0 = 1;
  21.     TR0 = 1;
  22. }

  23. void main()
  24. {
  25.         P1=0XFF;
  26.         _nop_();
  27.         P0=0XFF;
  28.         _nop_();
  29.         P2=0XFF;
  30.         _nop_();
  31.         P3=0X84;
  32.         EX0=1;
  33.         IT0=1;
  34.         delay_ms(1);
  35.         time_init();
  36.         LCD_clear();
  37.         LCD_init();
  38.         init_T0();
  39.         while(1)
  40.         {
  41.                 if(flag_n==0)
  42.                 {
  43.                         delay_ms(10);
  44.                         if(flag_n==0)
  45.                         {
  46.                                 while(flag_n==0);
  47.                                 bl=1;
  48.                                 flag=0;
  49.                         }
  50.                 }
  51.            if(flag)
  52.            {
  53.                         alarm();
  54.                 }
  55.                 clock();
  56.                 key_scan();
  57.         //        changeweek();
  58.         if(flag_display)
  59.         {
  60.                 switch(flag_dis){
  61.                         case 0:
  62.                                 if(flag_0){
  63.                                         LCD_clear();
  64.                                         flag_2=1;
  65.                                         flag_0=0;
  66.                                 }
  67.                                 LCD_tuan(0,0);
  68.                                 flag_c0=0;
  69.                                 break;
  70.                         case 1:
  71.                                 if(flag_1){
  72.                                         LCD_clear();
  73.                                         flag_0=1;
  74.                                         flag_1=0;
  75.                                 }
  76.                                 flag_c0=1;
  77.                                 break;
  78.                         case 2:
  79.                                 if(flag_2){
  80.                                         LCD_clear();
  81.                                         changeweek();
  82.                                         flag_1=1;
  83.                                         flag_2=0;
  84.                                 }
  85.                                 delay(200);
  86.                                 Get_data();
  87.                                 other_display();
  88.                                 flag_c0=0;
  89.                                 break;
  90.                 }
  91.         }
  92.         }  

  93.        
  94. }

  95. void IN0()interrupt 0
  96. {
  97.         PCON=0;
  98.         TH0 = 0x3C;
  99.     TL0 = 0x0B0;
  100.         ET0=1;
  101.         TR0=1;
  102. }

  103. void TIME0()interrupt 1
  104. {
  105.         uchar x,y,z;
  106.         TH0 = 0x3C;
  107.     TL0 = 0x0B0;
  108.         TR0=0;
  109.         x++;
  110.         if(x==20){
  111.                 y++;
  112.                 x=0;
  113.                 if(y==5){                       
  114.                         y=0;
  115.                         z++;
  116.                         flag_dis++;
  117.                         if(flag_dis>2){
  118.                                 flag_dis=0;
  119.                         }
  120.                   if(z==6)
  121.                           {
  122.                                 z=0;
  123.                                 bl=0;

  124.                         }
  125.                 }
  126.         }

  127.         TR0=1;
  128. }
复制代码
回复

使用道具 举报

ID:67922 发表于 2014-12-19 11:05 | 显示全部楼层
为了女友也是拼了  赞一个
回复

使用道具 举报

ID:67922 发表于 2014-12-19 11:06 | 显示全部楼层
文件不全
回复

使用道具 举报

ID:71768 发表于 2015-1-7 12:28 | 显示全部楼层
厉害
回复

使用道具 举报

ID:71971 发表于 2015-1-10 22:09 | 显示全部楼层
楼主好人
回复

使用道具 举报

ID:71971 发表于 2015-1-10 22:09 | 显示全部楼层
楼主长命百岁
回复

使用道具 举报

ID:69240 发表于 2015-1-13 22:47 | 显示全部楼层
强强强
回复

使用道具 举报

ID:72053 发表于 2015-1-22 16:24 | 显示全部楼层
冯绍峰归属感
回复

使用道具 举报

ID:72611 发表于 2015-1-23 15:13 | 显示全部楼层
厉害呀
回复

使用道具 举报

ID:72901 发表于 2015-1-28 11:39 | 显示全部楼层
高手,值得学习,
回复

使用道具 举报

ID:74949 发表于 2015-4-1 17:21 | 显示全部楼层
看看,学学,谢谢分享
回复

使用道具 举报

ID:74143 发表于 2015-4-3 14:43 | 显示全部楼层
厉害。
回复

使用道具 举报

ID:64178 发表于 2015-4-19 09:57 | 显示全部楼层
好东西 参考下
回复

使用道具 举报

ID:92810 发表于 2015-12-9 13:35 | 显示全部楼层
溜溜的。。。
回复

使用道具 举报

ID:99694 发表于 2015-12-20 20:05 | 显示全部楼层
谢谢楼主分享,51hei有你更精彩!!
回复

使用道具 举报

ID:100555 发表于 2015-12-26 00:19 | 显示全部楼层
点赞 但是积分不够 想做一个 但是下不下来
回复

使用道具 举报

ID:117047 发表于 2016-5-14 20:31 | 显示全部楼层
非常不错的制作,赞一个!
回复

使用道具 举报

ID:68876 发表于 2016-8-14 16:07 | 显示全部楼层
楼主好人
回复

使用道具 举报

ID:134810 发表于 2016-9-20 16:57 来自触屏版 | 显示全部楼层
看介绍的功能,确实很强大,但是写一个贪吃蛇真的不简单
回复

使用道具 举报

ID:139761 发表于 2016-9-20 23:34 | 显示全部楼层
厉害厉害
回复

使用道具 举报

ID:1989 发表于 2018-1-16 15:22 | 显示全部楼层
学习中,多谢分享!
回复

使用道具 举报

ID:111099 发表于 2018-2-10 22:12 | 显示全部楼层
请问语音部分是怎么实现的?
回复

使用道具 举报

ID:283829 发表于 2018-2-12 15:04 | 显示全部楼层
好东西啊,谢谢版主分享
回复

使用道具 举报

ID:84997 发表于 2018-3-15 10:33 | 显示全部楼层
纯手工制作,没有华丽的外表,虽然不美观,但表达了你的真心,你女朋友一定会感动的
回复

使用道具 举报

ID:78901 发表于 2018-8-6 22:36 | 显示全部楼层

高手,值得学习,
回复

使用道具 举报

ID:380389 发表于 2018-8-8 06:37 来自触屏版 | 显示全部楼层
厉害的楼主,谢谢分享
回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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