收藏官网首页

【Gokit】之智慧宿舍

查看数: 102679 | 评论数: 32 | 收藏 6
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2016-7-28 11:48

正文摘要:

本帖最后由 Genius 于 2016-8-25 15:56 编辑 智慧宿舍:集成了高校宿舍防火子系统,防盗子系统,大功率用电器实时监测子系统,三网结合信息查询与充值子系统(电费,水费,热水卡),门禁控制子系统,利用机智云 ...

回复

Genius 发表于 2016-7-28 13:10:49
加油     如需帮助,可在社区发帖或者是QQ群讨论
竹石科技APP坚 发表于 2016-8-26 12:30:39
创意很不错,,有APP有上位机,,如果优化好能够稳定运行生产出产品,,对于全国高校来说,,确实是很大的市场
熊总熊 发表于 2016-8-17 22:50:41
再来一个stm32的主控程序
  1. int main(void)
  2. {
  3.         uint8_t p0_control_buf[MAX_P0_LEN];
  4.        
  5.         SystemInit();       
  6.         HW_Init();
  7. //        Printf_SystemRccClocks();
  8.         SW_Init();       
  9.         while(1)
  10.                
  11.         {       
  12.                 KEY_Handle();       
  13.                    
  14.                 GizWits_MessageHandle(p0_control_buf, sizeof(WirteTypeDef_t));
  15.                
  16.                 if(p0Flag == 1)
  17.                 {
  18.                         memcpy((uint8_t *)&WirteTypeDef, p0_control_buf, sizeof(WirteTypeDef_t));
  19.                         GizWits_ControlDeviceHandle();

  20.                         GizWits_DevStatusUpgrade((uint8_t *)&ReadTypeDef, 10*60*1000, 1);
  21.                         p0Flag =0;
  22.                 }
  23.         if(gaterSensorFlag != 0)   
  24.         {
  25.             GizWits_GatherSensorData();
  26.             gaterSensorFlag = 0;
  27.         }
  28.        GizWits_DevStatusUpgrade((uint8_t *)&ReadTypeDef, 10*60*1000, 0);
  29.         }
  30. }
  31. /** @addtogroup GizWits_HW_Init
  32.   * @{
  33.   */
  34. void HW_Init(void)
  35. {
  36.         Delay_Init(72);       
  37.         UARTx_Init();
  38.   RGB_KEY_GPIO_Init();
  39.         RGB_LED_Init();       
  40.         LED_GPIO_Init();       
  41.         KEY_GPIO_Init();
  42.         TIM3_Int_Init(7199,9);   //ms interrupt       
  43.         Motor_Init();       
  44.         DHT11_Init();       
  45.         IR_Init();       
  46. }
  47. /** @addtogroup GizWits_SW_Init
  48.   * @{
  49.   */
  50. void SW_Init()
  51. {
  52.         ReadTypeDef.Led=0;
  53.         ReadTypeDef.Get_data=0;
  54.         ReadTypeDef.Money=0;
  55.         ReadTypeDef.Wise=0;
  56.   ReadTypeDef.Temperature=0;
  57.         ReadTypeDef.Humidity= 0;            
  58.         ReadTypeDef.Sum_elec=0;
  59.         ReadTypeDef.Remaining=0;
  60.         GizWits_init(sizeof(ReadTypeDef_t));
  61. //        printf("Gokit Init Ok ...\r\n");
  62. }
  63. /** @addtogroup Printf_SystemRccClocks
  64.   * @{
  65.   */
  66. void Printf_SystemRccClocks(void)
  67. {
  68.         uint8_t SYSCLKSource;

  69.         RCC_ClocksTypeDef  SystemRCC_Clocks;
  70. //        printf("System start...\r\n");
  71.         ;
  72.         SYSCLKSource = RCC_GetSYSCLKSource();
  73.         if(SYSCLKSource==0x04)
  74.                 ;
  75.         //        printf("SYSCLKSource is HSE\r\n");
  76.         else if(SYSCLKSource==0x00)
  77.                 ;
  78. //                printf("SYSCLKSource is HSI\r\n");
  79.         else if(SYSCLKSource==0x08)
  80.                 ;
  81.         //        printf("SYSCLKSource is PL!\r\n");
  82.        
  83.         RCC_GetClocksFreq(&SystemRCC_Clocks);
  84. //        printf("SYS clock =%dMHz \r\n",(uint32_t)SystemRCC_Clocks.SYSCLK_Frequency/1000000);
  85. //        printf("HCLK clock =%dMHz \r\n",(uint32_t)SystemRCC_Clocks.HCLK_Frequency/1000000);
  86. //        printf("PCLK1 clock =%dMHz \r\n",(uint32_t)SystemRCC_Clocks.PCLK1_Frequency/1000000);
  87. //        printf("PCLK2_clock =%dMHz \r\n",(uint32_t)SystemRCC_Clocks.PCLK2_Frequency/1000000);       
  88. //        printf("SADCCLK_Frequencyclock =%dMHz \r\n",(uint32_t)SystemRCC_Clocks.ADCCLK_Frequency/1000000);

  89. }

  90. /*****************************************************
  91. * Function Name  : GizWits_ControlDeviceHandle
  92. * Description    : Analy P0 Package
  93. * Input          : None
  94. * Output         : None
  95. * Return         : Bit , Attr_Flags
  96. * Attention                 :
  97. *****************************************************/
  98. void GizWits_ControlDeviceHandle()
  99. {
  100.         if( (WirteTypeDef.Attr_Flags & (1<<0)) == (1<<0))  //控制灯
  101.         {

  102.                         if(WirteTypeDef.Led == LED_OnOff)   //灯是关的
  103.                         {
  104.                                 //ReadTypeDef.Led = LED_OnOff;
  105.                                   Rec_value[0]=0x00;
  106.                                   Value10=0x00;
  107.                                         Delay_ms(500);
  108.                                         UART1_Send_DATA(Rec_value[0]);
  109.                             Delay_ms(500);
  110.                             UART1_Send_DATA(0x00);
  111.                             Delay_ms(500);
  112.                       UART1_Send_DATA(0x00);
  113.                 Delay_ms(500);
  114.                         }
  115.                         if(WirteTypeDef.Led == LED_OnOn)
  116.                         {
  117.                         //ReadTypeDef.Led = LED_OnOn;
  118.                                 Rec_value[0]=0x01;
  119.                                 Value10=0x01;
  120.                                 Delay_ms(500);
  121.                                 UART1_Send_DATA(Rec_value[0]);
  122.                           Delay_ms(500);
  123.                           UART1_Send_DATA(0x00);
  124.                           Delay_ms(500);
  125.                     UART1_Send_DATA(0x00);
  126.               Delay_ms(500);
  127.             }
  128.         }
  129.                         if( (WirteTypeDef.Attr_Flags & (1<<1)) == (1<<1))
  130.         {
  131.             ReadTypeDef.Get_data=WirteTypeDef.Get_data;
  132.                         UART1_Send_DATA(Rec_value[0]);
  133.                         Delay_ms(500);
  134.                         UART1_Send_DATA(0x00);
  135.                         Delay_ms(500);
  136.                   UART1_Send_DATA(0x00);
  137.             Delay_ms(500);
  138.                   
  139.         }
  140.                 if( (WirteTypeDef.Attr_Flags & (1<<2)) == (1<<2))
  141.         {
  142.                
  143.                 //ReadTypeDef.Money = WirteTypeDef.Money;       
  144.                 Money_Value=WirteTypeDef.Money;
  145.                 Rec_value[1]=Money_Value>>8;               
  146.                 Rec_value[2]=(Money_Value&0x0ff);
  147.                
  148.                         UART1_Send_DATA(Rec_value[0]);
  149.                         Delay_ms(500);
  150.                         UART1_Send_DATA(Rec_value[1]);
  151.                         Delay_ms(500);
  152.                   UART1_Send_DATA(Rec_value[2]);
  153.             Delay_ms(500);
  154.       Money_Value=0;
  155.                         Rec_value[1]=0;               
  156.                   Rec_value[2]=0;
  157.                
  158.   }
  159.                        
  160. }
  161. /*****************************************************
  162. * Function Name  : GizWits_GatherSensorData();
  163. * Description    : Gather Sensor Data
  164. * Input          : None
  165. * Output         : None
  166. * Return         : None
  167. * Attention                 : None
  168. *****************************************************/
  169. //只要在这里改变了数据的值,直接在这里搜集传感器的值
  170. void GizWits_GatherSensorData(void)
  171.        
  172. {
  173.           ReadTypeDef.Led=Value10;
  174.        
  175.           ReadTypeDef.Money=Money_Value;
  176.           ReadTypeDef.Wise=Value11;

  177.           ReadTypeDef.Temperature=Ten_Value+ 13;
  178.           ReadTypeDef.Humidity=Hum_Value;
  179.           ReadTypeDef.power = Loa_Value;
  180.                 ReadTypeDef.Sum_elec=Sum_Value;
  181.                 ReadTypeDef.Remaining=Rem_Value;         
  182. }
  183. /*****************************************************
  184. * Function Name  : KEY_Handle
  185. * Description    : Key processing function
  186. * Input          : None
  187. * Output         : None
  188. * Return         : None
  189. * Attention                          : None
  190. *****************************************************/
  191. void KEY_Handle(void)
  192. {
  193.         uint8_t Key_return =0;       
  194.         Key_return = ReadKeyValue();       
  195.         if(Key_return & KEY_UP)
  196.         {
  197.                 if(Key_return & PRESS_KEY1)
  198.                 {
  199. //#ifdef PROTOCOL_DEBUG
  200. //                                  printf("KEY1 PRESS\r\n");
  201. //#endif               
  202.                 }
  203.                 if(Key_return & PRESS_KEY2)
  204.                 {
  205. //#ifdef PROTOCOL_DEBUG
  206. //                        printf("KEY2 PRESS ,Soft AP mode\r\n");
  207. //#endif       
  208.                         //Soft AP mode, RGB red
  209.                         LED_RGB_Control(255, 0, 0);
  210.                         GizWits_D2WConfigCmd(SoftAp_Mode);
  211.                         NetConfigureFlag = 1;
  212.                 }                               
  213.         }

  214.         if(Key_return & KEY_LONG)
  215.         {
  216.                 if(Key_return & PRESS_KEY1)
  217.                 {
  218. //#ifdef PROTOCOL_DEBUG
  219. //                                printf("KEY1 PRESS LONG ,Wifi Reset\r\n");
  220. //#endif                       
  221.                         GizWits_D2WResetCmd();
  222.                 }
  223.                 if(Key_return & PRESS_KEY2)
  224.                 {
  225.                         //AirLink mode, RGB Green
  226. //#ifdef PROTOCOL_DEBUG
  227. //                                printf("KEY2 PRESS LONG ,AirLink mode\r\n");
  228. //#endif       
  229.                         LED_RGB_Control(0, 128, 0);
  230.                         GizWits_D2WConfigCmd(AirLink_Mode);
  231.                         NetConfigureFlag = 1;
  232.                 }
  233.         }
  234. }
  235. /*****************************************************
  236. * Function Name  : GizWits_WiFiStatueHandle
  237. * Description    :  funcCallbacktion , Judge Wifi statue
  238. * Input          : None
  239. * Output         : None
  240. * Return         : Bit , Attr_Flags
  241. * Attention                 :
  242. *****************************************************/
  243. void GizWits_WiFiStatueHandle(uint16_t wifiStatue)
  244. {       
  245.         if(((wifiStatue & Wifi_ConnClouds) == Wifi_ConnClouds) && (NetConfigureFlag == 1))
  246.         {
  247. //                printf("W2M->Wifi_ConnClouds\r\n");
  248.                 NetConfigureFlag = 0;
  249.                 LED_RGB_Control(0,0,0);
  250.         }
  251. }
  252. /************* (C) COPYRIGHT 2011 STMicroelectronics ****END OF FILE***/
复制代码
qwertasdfg 发表于 2021-10-28 22:31:51
厉害厉害,我试着做一下
小圆子 发表于 2020-10-12 20:30:59
6666666666666666
小叶同学 发表于 2020-5-24 15:58:25
熊总熊 发表于 2016-8-17 23:15
下面对我们针对宿管阿姨推出的客户端的上位机上一波图片

  宿管上位机 登录界面

请问你的客户端APP是用什么开发的
adc0809 发表于 2019-6-12 23:31:51
现在的在校生也牛逼得很啊,厉害厉害
ZJNBZM 发表于 2018-7-16 13:59:19
•        智慧宿舍
龙大 发表于 2018-5-25 11:47:22
有PCB图么
xidouble 发表于 2018-1-2 21:40:28
感觉很有意思
年花七瑾 发表于 2017-10-6 15:11:31
很厉害啊
山川修阻 发表于 2017-1-3 14:27:33
请问这个APP可以让下载吗。
miaoxingren 发表于 2016-11-14 17:29:08
我想问一下,如果在晚上寝室同学都已经熟睡,有小偷撬门进入呢?
淡忘瞬间 发表于 2016-10-1 21:42:36
熊总熊 发表于 2016-8-17 23:35
演示视频链接请用力戳这里:http://v.youku.com/v_show/id_XMTY5ODI0OTY2OA==.html播放密码 :zhushi

佩服 本来也想做的
涛哥依然骄傲 发表于 2016-9-10 21:15:26
不错不错
true 发表于 2016-9-9 19:14:03
不错的一个想法
飞翔中的语言 发表于 2016-8-29 14:11:28
挺不错的一个ideal,赞
萌小姐 发表于 2016-8-26 13:57:06
有创意,有想法。适用于高校
迷之源 发表于 2016-8-26 12:44:34
顶下
C19940506 发表于 2016-8-26 12:43:17
这个项目做好来,还是很有市场的。创意也很不错。
熊总熊 发表于 2016-8-25 00:22:29
发一波智慧宿舍stm32的代码

智慧宿舍.rar

5.67 MB, 下载次数: 181, 下载积分: 威望 1

熊总熊 发表于 2016-8-17 23:35:09
本帖最后由 熊总熊 于 2016-8-24 21:34 编辑

演示视频链接请用力戳这里:http://v.youku.com/v_show/id_XMTY5ODI0OTY2OA==.html播放密码 :zhushi




加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

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