版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.基于AVR单片机和GSM的短信网关PAGE :.;PAGE 12基于AVR单片机和GSM的短信网关成员:成星 鲁得泂 王龙 马向超学院: 物理学院 指点教师: 李茂奎 2021年6月基于AVR单片机和GSM的短信网关 物理学院 成星 鲁得泂 王龙 马向超摘要:本产品以AVR系列单片机ATMEGA16为控制中心,以GSM短信息发送与接纳模块wavecome为辅助设备,来实现短信的发送与接纳功能,进而实现远程的通讯与控制。关键词:GSM ATMEGA16单片机 设计背景:随着3G网络的出现,以及3G手机的普及,无线通讯技术曾经开展到相当成熟的程度,而无线控制也在各种场所极大的发扬着作用。GSM模
2、块与单片机通讯是GSM模块运用的一个中心技术。我们所设计的系统,利用单片机的串行口知识,来实现与GSM模块的通讯,以对无线通讯和无线控制有一个更加明晰的认识。一、系统设计的目的、用途及功能:目的:利用单片机的串口功能,实现与GSM模块的通讯,进而实现短信的发送功能。用途与功能:可实现远程的无线通讯,也可添加扩展实现远程控制功能。二、硬件设计思想与原理图1.单片机的接口我们运用的是Atmel公司的AVR高速8位微控制器ATmega16 。ATmega16芯片为40个引脚,内部集成了1K字节的RAM、512字节的EEPROM、16K字节的Flash以及2个UART串行接口等。由于采用了高性能的MC
3、U,省掉了大量的外围器件,如外扩RAM、ROM存储器等,使硬件构造大大简化,提高了系统的可靠性。它与51单片机、PIC单片机相比具有一系列的优点:1:在一样的系统时钟下AVR运转速度最快;2: 芯片内部的Flsah、EEPROM、SRAM容量较大;3:一切型号的Flash、EEPROM都可以反复烧写、全部支持在线编程烧写(ISP);4:多种频率的内部RC振荡器、上电自动复位、看门狗、启动延时等功能,零外围电路也可以任务;5:每个IO口都可以以推换驱动的方式输出高、低电平,驱动才干强;6:内部资源丰富,普通都集成AD、DA模数器、PWM、SPI、USART、TWI、I2C通讯口、丰富的中断源等。
4、目前支持AVR单片机编译器的言语主要有汇编言语、C言语、BASIC言语等。其中C编译器主要有CodeVisionAVR、AVRGCC、IAR、ICCAVR等,C言语编译器由于它具有功能强大、 运用灵敏、代码小、运转速度快等先天性的优点,使得它在专业程序设计上具有不可替代的位置。ATmega16芯片的引脚图如下:其中的PD0即为RXD引脚RXD是USART的数据接纳引脚,PD1即为TXD引脚TXD是USART的数据发送引脚,引脚11即为GND接地。2.Max232电平转换芯片接口Max232芯片是Maxim公司消费的包括2路接受器和驱动器,适用于各种EIA232C和v.28/v.24的通讯接口。
5、Max232芯片内部有一个电源电压变换器,可以把输入的+5伏电源电压变换成RS232C输出电平所需的正负10v电压。此芯片任务电压为+5V。 3.GSM模块与单片机的硬件接口衔接我们所用的GSM模块具有数据引出与接纳口,而且支持与GSM 短信息相关的 AT 控制指令(GSM-SMS-AT 指令),GSM模块经过数据口以串行方式接纳指令并向外输出数据。硬件衔接相当简单,在数据口中找出RXD、TXD 和 GND 引脚与单片机的串口对应衔接即完成了硬件接口。注: GSM模块数据线是专为衔接PC 机9 针串口而设计的,其信号电平为规范的RS232 电平,而单片机的信号电平为TTL电平, 因此只需经过电
6、平转换,就可很方便的与模块相接。这里可以用开发板上的电平转换部分,也可以用Max232电平转换芯片。衔接电路如图 1 所示。4.系统总体电路衔接图三、软件设计系统1.GSM模块的软件接口及控制技术在我们设计的系统中,采用的是GSM通讯模块为WAVECOM,该模块具备GSM无线通讯的全部功能,并提供规范的USART串行接口,支持GSM 07.05所定义的AT命令集的指令。模块的通讯全部采用AT+XXXX完成。根本的AT指令如下所述: 短音讯格式 AT+CMGF 选择短音讯支持格式TEXT or PDU显示TEXT参数 AT+CSDH 显示当前TEXT方式下结果代码新音讯提示 AT+CNMI 选择
7、当有新的短音讯来时系统提示方式读短音讯 AT+CMGR 读取短音讯列短音讯 AT+CMGL 将存储的短音讯列表发送短音讯 AT+CMGS 发送短音讯设置TEXT参数 AT+CSMP 设置在TEXT方式下条件参数删除短音讯 AT+CMGD 删除保管的短音讯根据GSM 07.05的定义,SMS短信息的发送和接纳方式共有三种:Block方式、基于AT命令的Text方式和基于AT命令的PDU方式。其中发送和接纳中文或中/英文混合的短信息必需采用PDU方式,Text方式只支持传送英文及数字信息。由于Block方式的相关资料较少,PDU方式的编解码过程复杂,我们选择Text方式作为我们系统的通讯方式。2.
8、 TEXT方式简介Text方式只支持传送英文及数字信息,但它的编码要比PDU方式简单很多。 在Text Mode下,发送及接纳到的数据均以ASCII码的方式来表示。TEXT方式在信息传送时经过串口传送的是十六进制ASCII码。其USART通讯默许运用9600比特率,8位数据信息,无奇偶校验,有一位开场位和一位终了位。 例如,我们要发送指令来读取第一条短信,运用命令:AT+CMGR=1;我们只需求经过串口发送十六进制数码:0 x41,0 x54,0 x2b,0 x43,0 x4d,0 x47,0 x52,0 x3d,0 x31,0 x0d 即可。其中0 x41是A对应的ASCII码,0 x54是
9、T对应的ASCII码,以此类推,只需将相应英文字母的ASCII码以十六进制的方式发送即可。3.GSM通讯方式阐明在实验中得出的一些结论鉴于TEXT方式在运转中的易操作性,我们最终选择了这种方式作为我们GSM模块与单片机之间的通讯方式。我们首先编写了一个串口通讯程序,使数据能从单片机的接口发送出来利用串口调试助手察看。下一步定义各种要用的AT指令及短信内容,将这些指令经过串口传给GSM模块,经由模块识别来发送短信内容。我们经过反复测试,总结出来如下一些规律: 一切AT 指令的指令符号、常数、TEXT 数据包等都是以ASCII 编码方式传送的, 比如 “A 的ASCII 编码为41H,“T的ASC
10、II 编码为54H,数字“0的 ASCII编码为30H 等。 单片机控制GSM模块任务,必需把GSM模块的短信息任务方式设置为TEXT只发英文和数字格式,即经过指令 AT+CMGF=1 完成。指令可以写在程序里,也可经过电脑进展一次设置。以后运用时不需再次设置。 单片机向GSM模块发送每一条指令后,必需以回车符作为该条指令的终了,回车的ASCII 编码为0DH。例如,单片机向GSM模块发送“AT+CMGF=0 这条指令,其ASCII编码序列为“41H、54H、2BH、42H、4DH、47H、46H、3DH、3 0 H、0 D H,最后一个字节0DH 就是回车符,表示该条指令终了,假设没有这个回
11、车符,GSM模块将不识别这条指令。指令在程序中的定义方式为 char a=ATrn;GSM模块向单片机传送短信息内容时,其TEXT数据包的内容是以十六进制表示的数据, 但并不是直接向单片机传送十六进制数据,而依然是把每一位十六进制数以A S C I I 编码来发送。这样二个字节的十六进制数就变成4 字节的ASCII码。但是TEXT数据包中的数据字节长度部分依然是实践字节长度,而不是变成ASCII码的字节长度。 = 5 * GB3 GSM模块执行指令的过程中,需求将短信内容凑够一定的字符数才往外发送,而且中间有一定时间的延时。4.软件设计思想与流程图本系统旨在完成对SMS短信的发送功能。软件流程
12、图如下:单片机初始化GSM模块的初始化发送AT联机指令Y设置短音讯中心号码发送短信内容Y软件代码:/ICC-AVR application builder : 2021-5-20 11:21:23/ Target : M16/ Crystal: 7.3728Mhz#include #include char a=ATrn; /定义AT联机指令char b=AT+CMGSn; /设置接受手机号码char c=someone has broken into your house.someone has broken into your house.someone has
13、broken into your house.someone has broken into your house.someone has broken into your house.rn; /定义短信内容void delay250(unsigned int k) /*延时函数*/unsigned int j,i;for (i=0;ik;i+)for(j=0;j25;j+);void port_init(void) /端口初始化 PORTA = 0 xFF; DDRA = 0 xFF; PORTB = 0 x00; DDRB = 0 x00; PORTC = 0 x00; /m103 out
14、put only DDRC = 0 x00; PORTD = 0 x03; DDRD = 0 x02; /PD0口接纳数据,PD1口发送数据/UART0 initialize/ desired baud rate: 9600/ actual: baud rate:9600 (0.0%)void uart0_init(void) UCSRB = 0 x00; /disable while setting baud rate UCSRA = 0 x00; UCSRC = BIT(URSEL) | 0 x06; UBRRL = 0 x2F; /set baud rate lo UBRRH = 0 x
15、00; /set baud rate hi UCSRB = 0 x98;void init_devices(void) /stop errant interrupts until set up CLI(); /disable all interrupts port_init(); uart0_init(); MCUCR = 0 x00; GICR = 0 x00; TIMSK = 0 x00; /timer interrupt sources SEI(); /re-enable interrupts /all peripherals are now initializedvoid USART_
16、TRANSMIT(char data) /发送数据函数while(!(UCSRA&(1UDRE);UDR=data;void main()int n,u,m;init_devices(); for(n=0;n4;n+)USART_TRANSMIT(an); /发送AT指令delay250(20000);for(u=0;u21;u+)USART_TRANSMIT(bu); /设置接受手机号码delay250(20000);for(m=0;m AT+CMGS车(目的地址) 模块回应: AT+CMGS2: 输入短信息的内容(只能是英文):Test
17、回车以下图为用PC机控制GSM的过程经过串口调试助手 3. 将PC机输出的控制命令转化成单片机输出的指令1.先定义AT指令字符串。char a=ATrn;char b=AT+CMGSn;char c=someone has broken into your house.。someone has broken into your house.。someone has broken into your house.。someone has broken into your house.。someone has broken into your house.rn;2.串口通
18、讯程序void USART_TRANSMIT(char data) /发送数据函数while(!(UCSRA&(1UDRE);UDR=data;3.主函数void main()int n,u,m;init_devices();for(n=0;n4;n+)USART_TRANSMIT(an);delay250(2000);for(u=0;u21;u+)USART_TRANSMIT(bu);delay250(2000);for(m=0;m180;m+)USART_TRANSMIT(cm);3测试方法我们按照如下的思绪完成作品,由于单片机就是一个“微型化的计算机,它将计算机的主要功能集成在一块芯片上,成为一个控制器。因此,我
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 居家照护人员急救知识培训手册
- 家庭照护人员基础急救培训方案
- 山地营地火源管控专项实施方案
- 基层医疗卫生医防融合服务方案
- 屋面防水施工方案
- 物流园施工组织设计编制规范
- 学生情绪管理辅导实施方案
- 县域全覆盖式急救志愿者培训方案
- 县域全覆盖式急救科普宣传方案
- 学生营养餐满意度调查手册
- 2026-2027学年北师大版数学九年级上册期中测试卷(含答案)
- 2026年建筑施工企业机械类专职安全生产管理人员C1证考试题库
- 2023年初级会计师《初级会计实务》真题及答案
- 湖北省孝感市孝南区2024-2025学年七年级上学期期中地理试题(含答案)
- 机器人设备巡检管理制度
- 国家职业技术技能标准 4-02-01-01 轨道列车司机(动车组司机)人社厅发2019121号
- 医学教案SPZ-200型双向道床配碴整形车操作保养维修手册
- 金融计量学:时间序列分析视角(第四版) 课件 Lecture 5-平稳金融时间序列 ARMA模型
- JBT 14565-2023 搅拌釜用干气密封 技术规范 (正式版)
- 缙云山植物学野外实习报告2
- YY/T 0466.1-2023医疗器械用于制造商提供信息的符号第1部分:通用要求
评论
0/150
提交评论