历史上的今天
返回首页

历史上的今天

今天是:2024年12月31日(星期二)

正在发生

2021年12月31日 | 基于51单片机的GSM智能快递柜设计

2021-12-31 来源:eefocus

一.硬件方案

本设计基于STC89C52单片机的快递货柜模拟设计GSM短信发送验证码。该装置主要由单片机、电源模块、继电器电路、LED灯光报警模块、控制模块、GSM模块、键盘模块、LCD显示模块、机械开关等组成,借助成熟的GSM移动网络,当货物柜检测到快递的存在,会自动发送验证码给用户手机上,真正实现了远距离、高效率传递信息。


主要由51单片机+LCD1602液晶+GSM模块+按键+继电器设计而成;如图:

在这里插入图片描述

二.设计功能

(1)采用LCD1602液晶显示当前快递柜的状态。

(2)有数字按键(0-6)可以输入短信验证码,进行开柜。

(3)快递员将货物存入柜子中,可以通过GSM模块向指定人发送随机的验证码。

(4)验证码成功打开柜子之后失效。


三.设计原理图

原理图主要采用AD软件进行设计,如图:

在这里插入图片描述

四.软件设计

主程序源码


void main (void)

{    

unsigned char i;

Init_Timer0();        //定时器0初始化

UART_Init(); 

P1=0xff;           

LCD_Init();           //初始化液晶

DelayMs(20);          //延时有助于稳定

LCD_Clear(); 

sprintf(displaytemp,"AutomaticMachine");//打印输入界面

LCD_Write_String(0,0,displaytemp);//显示第一行

sprintf(displaytemp,"____ pass word  ");//打印输入值 提示电机确定

LCD_Write_String(0,1,displaytemp);//显示第二行


LED=0;

for(i=0;i<20;i++) //短暂延时gsm稳定

{DelayMs(50);}


// SendStr("ready ok!",9);

RELAY=1;

LED=1;


while(1)  //主循环

{

KeyScanDeal();

if(KEYFAS==0) //按键按下

{

DelayMs(20);   //消除抖动

if(KEYFAS==0)

{

while(KEYFAS==0); //按键送掉发送验证码

SendMsg=TRUE; //发送消息置位

}

}

if(SendMsg==TRUE)

{

LED=0;

SendMsg=FALSE; //发送消息置位取消

SendStr("AT+CMGF=1rn",11); //设置字符

for(i=0;i<20;i++) //延时

{DelayMs(50);}

SendStr("AT+CSCS="GSM"rn",15);    //设置gsm格式

for(i=0;i<20;i++) //延时

{DelayMs(50);}

SendStr("AT+CMGS="+8618799697649"rn",26);//此处可修改信息接收手机的号码 第一个手机号

for(i=0;i<2;i++) //延时

{DelayMs(50);}

SendStr("The PW :",8); //此处可修改信息,9代表字节数


if(PwCount==0)

{remempw[0]=pw01[0];remempw[1]=pw01[1];remempw[2]=pw01[2];remempw[3]=pw01[3];} //记录发送出去的号码

else if(PwCount==1)

{remempw[0]=pw02[0];remempw[1]=pw02[1];remempw[2]=pw02[2];remempw[3]=pw02[3];} //记录发送出去的号码

else if(PwCount==2)

{remempw[0]=pw03[0];remempw[1]=pw03[1];remempw[2]=pw03[2];remempw[3]=pw03[3];} //记录发送出去的号码

else if(PwCount==3)

{remempw[0]=pw04[0];remempw[1]=pw04[1];remempw[2]=pw04[2];remempw[3]=pw04[3];} //记录发送出去的号码

else if(PwCount==4)

{remempw[0]=pw05[0];remempw[1]=pw05[1];remempw[2]=pw05[2];remempw[3]=pw05[3];} //记录发送出去的号码

else if(PwCount==5)

{remempw[0]=pw06[0];remempw[1]=pw06[1];remempw[2]=pw06[2];remempw[3]=pw06[3];} //记录发送出去的号码

else if(PwCount==6)

{remempw[0]=pw07[0];remempw[1]=pw07[1];remempw[2]=pw07[2];remempw[3]=pw07[3];} //记录发送出去的号码

SendStr(remempw,4);

for(i=0;i<2;i++) //延时

{DelayMs(50);}

SendByte(0x1a);

for(i=0;i<20;i++) //延时

{DelayMs(50);}


// SendStr("AT+CMGS="+8618119677903"rn",26);//此处可修改信息接收手机的号码   第二个手机号

// for(i=0;i<2;i++) //延时

// {DelayMs(50);}

// SendStr("The PW :",8); //此处可修改信息,9代表字节数

// SendStr(remempw,4);

// for(i=0;i<2;i++) //延时

// {DelayMs(50);}

// SendByte(0x1a);

// for(i=0;i<20;i++) //延时

// {DelayMs(50);}


LED=1;

}


}

}


推荐阅读

史海拾趣

DBM Optix公司的发展小趣事

在竞争激烈的电子行业中,DBM Optix深知只有不断创新才能保持领先地位。因此,公司始终将研发作为核心竞争力之一,持续投入大量资金用于新技术、新产品的开发。通过与高校、研究机构等合作,DBM Optix不断引入新技术、新材料,并将其应用于产品中,从而不断提升产品的性能和品质。这些创新举措使得DBM Optix在光学通信领域始终保持领先地位。

D1 International Inc公司的发展小趣事

随着技术的不断成熟,D1 International Inc公司开始积极拓展市场。公司不仅在国内市场取得了显著的成果,还成功打入国际市场。与此同时,D1 International Inc公司也注重与其他企业的战略合作。通过与知名电子制造商的合作,D1 International Inc公司的产品线得到了极大的丰富,同时也提升了公司的品牌影响力。

Fine Products Microelectronics Corp公司的发展小趣事

D1 International Inc公司深知,持续的技术创新是企业发展的核心动力。因此,公司不断加大研发投入,积极引进和培养高素质的研发人才。通过不断的创新实践,D1 International Inc公司在多个领域取得了重要的技术突破,为公司的发展注入了新的活力。

集创北方(CHIPONE)公司的发展小趣事

近年来,集创北方在电子行业的地位日益稳固。从2019年到2021年,公司的营收实现了飞跃式增长,从14.47亿元增长至56.74亿元,复合增长率高达98%。这一成绩的背后,是公司不断创新、积极应对市场变化的结果。

福声科技(FUET)公司的发展小趣事

在稳固国内市场的同时,福声科技积极寻求国际合作机会,努力拓展海外市场。公司凭借其优质的产品和服务,成功吸引了日本、韩国、加拿大、美国等多个国家和地区的客户。通过与国际知名企业的合作与交流,福声科技不仅提升了自身的技术水平和品牌影响力,还进一步拓宽了国际市场渠道,为公司的全球化战略奠定了坚实基础。

HCH Co公司的发展小趣事

背景:HCH Co公司自成立以来,始终将技术创新作为企业发展的核心驱动力。在电子行业快速发展的背景下,公司投入大量资源于研发领域,成功研发出一系列具有自主知识产权的核心技术。其中,一项关于高效能电源管理芯片的突破,不仅大幅提升了电子产品的续航能力,还显著降低了能耗,赢得了市场的广泛认可。

发展:随着技术的不断成熟和市场需求的增长,HCH Co公司的电源管理芯片迅速占领市场份额,成为众多知名电子产品制造商的首选供应商。公司的技术创新不仅推动了自身业务的快速增长,也为整个电子行业的节能减排和可持续发展做出了积极贡献。

问答坊 | AI 解惑

在SPI驱动里面接收SPI数据,怎么及时处理SPI数据缓冲区才不会让一帧数据跟下一帧数据起冲突。

在SPI驱动里面接收SPI数据,怎么及时处理SPI数据缓冲区才不会让一帧数据跟下一帧数据起冲突。…

查看全部问答>

关于通过无线局域网连接控制器的问题

有一台控制器设备,有LAN接口,IP地址是200.200.200.* 直接通过网线连接到电脑上,电脑的IP地址设为200.200.200.*,DNS是255.255.255.0网关设为192.168.1.1则可以连接到控制器,若把IP地址和网关设为其他的却不行,控制器软件只有一个IP地址,把IP ...…

查看全部问答>

高手请进:关于增强型单片机lpc932与pc的通信

麻烦高手看一下,我用的是增强型uart,pc发送一个“s”给单片机,单片机受到后会给pc发送一个response at 9600 baud 。不知程序是否有问题??? 程序如下: #include \"reg932.h\" #define uchar unsigned char uchar temp; char text[]= ...…

查看全部问答>

虚拟磁盘问题,可能是内存访问有问题

我修改了 FileDisk.c 这个虚拟磁盘源码,把它改成像还原精灵差不多。 功能:把对虚拟磁盘的写操作定向到另一个文件。 这样下次虚拟出来的磁盘就还是原来的。 程序设计:1、申请一块内存记录有过写操作的扇区号 2、对于写操作,写入另一临时文件 ...…

查看全部问答>

LM3S8962开发板自带的小游戏在哪可以下到程序啊?

LM3S8962开发板自带的小游戏在哪可以下到程序啊?…

查看全部问答>

帮实验室老是转让一些他项目剩余的芯片开发工具等

  芯片有:名称           数量 AT89C52        50       每片3元ATmega16L       11 ...…

查看全部问答>

未定义指令

                                 买的是北京微芯力科的开发板,付带了St公司的软件函数库,把这些函数库添加到应用程序文件,编译没问题,但仿真的 ...…

查看全部问答>

郭天祥超好的51书籍珍藏版快来收藏吧

郭天祥超好的51书籍珍藏版快来收藏吧 [ 本帖最后由 鑫海宝贝 于 2011-3-22 19:18 编辑 ]…

查看全部问答>

求一字模提取软件

今天在网上找了10几个, 没一个满意的, 其实我的要求非常简单, 自己能输入文字, 并能编辑此文字, 按行排或按列排, 可编辑分辨率, 可随意转换二进制码, 十六进制码, 共阴或共阳码!   以上要求8x8点阵字模提取软件, pctolcd2002, Zimo221软件等 ...…

查看全部问答>

容易被混淆的概念—转换器的分辨率与精度

  最近又在电子元件技术网上看一个产品介绍中看到了这样的说法“本产品采用16位高精度ADC”,看到这样的文章我真想把这句话改为“本产品采用16位,高精度ADC”。因为实际上16位是分辨率,分辨率和转换精度是一个有联系但本质不同的概念。这也 ...…

查看全部问答>