• 基于stm32单片机的物联网WiFi智能快递柜设计


    资料编号:177    

    功能讲解:

    1. 1.      ESP8266连接网络用了AT指令,单片机内烧录的WIFI名称:jsh,密码为:hua!123!

    可以通过更改路由器WIFI名称和密码来让ESP8266联网。具体怎么改路由器名称和密码请根据对应路由器来设置。给板子供电以后等待初始化完成,屏幕才会有显示。

    1. 2.      APP端需要配置下端口,具体配置参数如图所示。

    1. 3.      模块怎么插?参考下图。

    1. 4.      按键1请求发送验证码,验证码有六位,输入密码时按键1输入,按键2确认。

    2. 5.      继电器打开后会延时五秒,表示开门。

    技术要点:

    1. 1.      APP与单片机之间通过Mqtt通信协议进行数据通信,中转服务器用了onenet平台,通过平台转发数据。

    2. 2.      OLED显示屏与单片机通过IIC通信

    3. 3.      单片机与继电器之间通过Delay1引脚控制,引脚为高电平时为开。

    4. 4.      单片机与红外模块之间通过单片机IO口读取HW引脚,HW引脚为高电平表示有快递。

    5. 5.      APP用Android  Studio编写,有源文件包

    下面是原理图展示:

    下面是程序展示: 

    void USART1_IRQHandler(void)
    {
          uint8_t ucTemp;
            if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)
            {    
                    ucTemp = USART_ReceiveData(USART1);
                    RxBuf1[0] = RxBuf1[1];
                    RxBuf1[1] = RxBuf1[2];
                    RxBuf1[2] = ucTemp;
                    if( RxBuf1[0]==0xa5 )
                    {

                    }
            }     
    }


    void USART2_IRQHandler(void)
    {
          uint8_t ucTemp2;
        if(USART_GetITStatus(USART2,USART_IT_RXNE)!=RESET)
        {    
            ucTemp2= USART_ReceiveData(USART2);
            RxBuf2[0] = RxBuf2[1];
            RxBuf2[1] = RxBuf2[2];
            RxBuf2[2] = RxBuf2[3]; 
            RxBuf2[3] = RxBuf2[4]; 
            RxBuf2[4] = RxBuf2[5]; 
            RxBuf2[5] = RxBuf2[6]; 
            RxBuf2[6] = RxBuf2[7]; 
            RxBuf2[7] = ucTemp2;
            if( (RxBuf2[0]=='F')&&( RxBuf2[1]=='D') )
            {
                        FlagOpen = 1;
            }
            else if( (RxBuf2[0]=='F')&&( RxBuf2[1]=='M') )
            {
                        Ckeck[0] = RxBuf2[2]-0x30;
                        Ckeck[1] = RxBuf2[3]-0x30;
                        Ckeck[2] = RxBuf2[4]-0x30;
                        Ckeck[3] = RxBuf2[5]-0x30;    
                        Ckeck[4] = RxBuf2[6]-0x30;
                        Ckeck[5] = RxBuf2[7]-0x30;
                        FlagGet = 1;
                        FlagDisp = 1;
            }

        
        }     
    }

    下面是该资料的分享链接:

    https://pan.baidu.com/s/1B1XXlTk_XRHGZtK5FgRkzQ?pwd=4qb3 

  • 相关阅读:
    CMSIS-RTOS2简介
    《数据结构》堆栈(铁路、洗牌、汉诺塔、走迷宫)全解析
    二十三种设计模式全面解析-装饰器模式-超越继承的灵活装扮
    JAVA面向对象三大特征
    基于Web3.0的区块链图片上传
    记一次 Flink 作业启动缓慢
    计算机毕设(附源码)JAVA-SSM开放式实验室预约系统
    bm20 2
    【QML】报错 DelegateModel :: index out range xx xx
    NoSQL之 Redis配置与优化
  • 原文地址:https://blog.csdn.net/m0_74295839/article/details/127697513