标题: 51单片机智能垃圾桶PCB文件电路+程序 WT588D语音芯片 [打印本页]

作者: 15773896335    时间: 2019-7-13 22:30
标题: 51单片机智能垃圾桶PCB文件电路+程序 WT588D语音芯片
51单片机,智能垃圾桶,超声破测距,语音提示
Altium Designer画的原理图和PCB图如下:(51hei附件中可下载工程文件)


单片机源程序如下:
  1. #include <STC89C5xRC.H>
  2. #include <intrins.h>
  3. #include <stdio.h>
  4. #include "HC_SR04.h"
  5. #include "usart1.h"
  6. #include "WT588D.h"
  7. #include "StepMotor.h"
  8. void Delay50ms()                //@11.0592MHz
  9. {
  10.         unsigned char i, j;

  11.         i = 90;
  12.         j = 163;
  13.         do
  14.         {
  15.                 while (--j);
  16.         } while (--i);
  17. }


  18. char xdata buff[128];
  19. unsigned int dis=420;
  20. char flg=0,flg2=0,flg3=0;
  21. unsigned int cnt=0;

  22. // may everything go well for you who will graduate in front of the screen.
  23.                             // but how about learning more in the future, tough girl?
  24. //Have bought a ticket to xiangtan, you look at it, I changed the code in the train station。
  25. void main()
  26. {
  27.                 HC_SR04_Init();//超声波初始化
  28.                 GoBackSM();//步进电机初始化,寻找垃圾箱盖子关闭的地方
  29.         while(1)
  30.         {
  31.                
  32.                 dis=getdis();//超声波测距把距离赋给dis
  33.                 if(dis<20)//设置垃圾箱盖子打开时的距离
  34.                 {
  35.                         if(flg==1)//判断标志位
  36.                         {
  37.                                 cnt=0;
  38.                                 P25=1;//关消毒灯
  39.                                 flg=0;
  40.                                 flg2=0;
  41.                         if(P20==1)Send_threelines(0);//播放垃圾放置请分类
  42.                                 Go90A();//转90°
  43.                                 while(getdis()<30)//如果上面的距离改了,这里也要改
  44.                                         {
  45.                                                 Delay50ms();//丢垃圾啊丢垃圾,屏幕前的你在丢垃圾
  46.                                   }
  47.                         }
  48.                 }
  49.                 else//垃圾丢完,人走了
  50.                 {
  51.                                 GoBackSM();//垃圾丢完了,垃圾盖归位
  52.                                 if(P20==0)//检测垃圾桶满了没,满了进入if内执行任务
  53.                                 {
  54.                                         if(flg3==0)
  55.                                         {
  56.                                                 flg3=1;
  57.                                                 Send_threelines(1);//播报垃圾已满,铲屎的,该倒垃圾了
  58.                                         }
  59.                                 }
  60.                                 else//垃圾箱没满
  61.                                 flg3=0;//复位标志位
  62.                                        
  63.                                 if(flg2==0)//判断第二个标志位是否为0
  64.                                 {
  65.                                         cnt++;//开始计算消毒时间
  66.                                         P25=0;//消毒开始,只有在垃圾箱盒子合上才会动作
  67.                                 }
  68.                                 if(cnt>=1200)//消毒时间到
  69.                                 {
  70.                                         flg2=1;//置为第二个标志位
  71.                                         P25=1;//关闭消毒指示
  72.                                 }
  73.                                
  74.                                 flg=1;//置为第一个标志位
  75.                 }
  76.        
  77.                 Delay50ms();//单次循环50ms
  78.         }
  79. }
复制代码

所有资料51hei提供下载:
资料合集垃圾箱.zip (1.85 MB, 下载次数: 370)



作者: 2448289424    时间: 2019-7-14 16:18
你不觉得51这种插件的封装看着难受嘛,,大哥大,,那个大块,占空间,建议能用封装片全部用封装片,PCB板就是要精简,电路布局可以在进行完善,,一起学习,,,!!!!
作者: winkle    时间: 2019-7-14 20:49
最近准备学习这方面的知识,很有帮助的资料
作者: 51jia    时间: 2019-7-14 21:49
可以用STC15W系列SOP14脚51 MCU,可以减少成本。
作者: 鹏博士PBs    时间: 2019-7-15 09:05
使用STM32应该优化性能会更好
作者: 小谭1111    时间: 2019-7-15 09:59
可以的
作者: 艾罗    时间: 2019-7-15 10:28
很不错的设计方案哦
作者: 15773896335    时间: 2019-7-16 21:27
只是给大家一起学习,意见都很好,搞了很久的32开发,来玩玩51
作者: hdl123    时间: 2019-8-23 16:51
可以很有用实用
作者: waerdeng    时间: 2019-8-23 19:47
谢谢分享,学习一下51,贴片封装节省面积。
作者: 1255230    时间: 2019-8-23 23:04
谢谢大神
作者: 1255230    时间: 2019-8-23 23:05
非常感谢
作者: hdl123    时间: 2019-8-27 17:39
感谢学习学习
作者: 莫超人    时间: 2019-11-2 12:34
感谢楼主分享 51有你精彩
作者: Dfadti    时间: 2019-11-7 17:12
最近准备毕业设计,很有帮助的资料
作者: 燦洋    时间: 2020-3-2 20:19
WT588D语音芯片时用什么烧语音进去的

作者: woaifrog    时间: 2020-3-3 00:09
明天找东西试试
作者: bg5skf    时间: 2020-3-3 23:39
有创意!
作者: 13487086265    时间: 2020-3-7 18:52
很好,就是浪费资源
作者: wangkailang    时间: 2020-3-8 16:53
很有帮助
作者: xiaoxinxiaoxin    时间: 2020-3-20 16:39
谢谢分享,一起学习一下
作者: xiaoxinxiaoxin    时间: 2020-3-20 16:40
谢谢分享,一起学习一下
作者: Xiaobaiqiudai    时间: 2020-3-21 09:37
很有帮助,感谢
作者: XEDZPT    时间: 2020-4-9 00:56
看看,学习哦,观摩
作者: 菜鸟娜娜    时间: 2020-4-13 10:26
谢谢分享
作者: 慕斯雪芙    时间: 2020-4-13 13:28
这个算是单层板自己在家可以做出来,个别顶层走线可以用跳线。布局挺清晰的,但是有的线与焊盘的链接不是很恰当,而且电源线没有加粗(虽然没必要但是应该有)从图来看最后没有补泪滴和地铜也没有缝合过孔抗干扰性能弱一点,51封装一般不直接用芯片坏了就麻烦了用锁定座子好点。以上纯属个人观点,不喜勿喷
作者: 慕斯雪芙    时间: 2020-4-13 13:32
晶振没有包地处理,每个芯片也没有加滤波电容,只是单纯意义上的放了封装简单布局和连了线
作者: 何雪    时间: 2020-4-27 13:41
很有启发
作者: 何雪    时间: 2020-4-27 13:42
谢谢分享,有学到东西
作者: dyy25    时间: 2020-6-5 15:03
这个真不错用得到
作者: sliver_q    时间: 2020-6-9 09:37
感谢分享
作者: anjilong    时间: 2020-11-24 11:12
很有创意,改天试试
作者: 你上课睡觉睡哪    时间: 2020-12-22 16:10
还行,帮助不也是很大,但是还是有一些作用的,感谢
作者: 潇湘夜雨1111    时间: 2021-3-23 19:04
学习学习
作者: lgjdqm    时间: 2023-6-29 11:14
很好,具有使用价值
作者: yanhaha    时间: 2023-7-9 21:40
非常有用,感谢分享

作者: 15227698010    时间: 2024-5-27 15:25
不错很实用谢谢了
作者: 小Zya    时间: 2024-6-1 10:26
2448289424 发表于 2019-7-14 16:18
你不觉得51这种插件的封装看着难受嘛,,大哥大,,那个大块,占空间,建议能用封装片全部用封装片,PCB板 ...

可以设计的很好
作者: fffffrrrr    时间: 2024-6-4 09:21
xdata buff[128];这段用到哪里了,请问一下
作者: 04097    时间: 2024-6-11 23:04
感觉把开关盖子的距离阈值设成一个范围更合适
作者: 04097    时间: 2024-6-11 23:05
设计的很好
作者: WangYu_308    时间: 2025-6-26 15:06
学习到了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1