视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
实现SIM300模块的简单操作
2025-10-02 12:24:39 责编:小OO
文档
吉林大学珠海学院

课 程 设 计

实现SIM300模块的简单操作

系              别: 电子信息系 

专    业   名   称: 通信工程 

学    生   姓   名:杨锦能 谢庆普 林文堂 

学              号:******** ********

                    03131118 

指导教师姓名、职称: 杨芃 李嘉

完成日期:2016年  10月  06日

一、概述………………………………………………………………………….1

二、sim300开发板简介………………………………………………………….2

  1、 电路原理图………………………………………………………………..2

  2、 模块简介…………………………………………………………………..3

  3、接口介绍……………………………………………………………………4

三、设计步骤……………………………………………………………………..7

四、编程源程序…………………………………………………………………..8

五、参考资料……………………………………………………………………..9

一、概述

SIM300是一款GSM/GPRS模块,可在全球范围内的EGSM 900MHz、DCS 1800MHz、PCS 1900MHz三种频率下工作,能够提供GPRS多信道类型多达10个,并且支持CS-1、CS-2、CS-3和CS-4四种GPRS编码方案。

SIM300结构轻巧,几乎可以满足所有对产品尺寸有要求的工业应用,如智能手机、掌上电脑或者其他移动设备。

本次课程设计我们会利用51单片机控制SIM300模块来进行一个拨打电话并且挂断这个电话的操作。

二、SIM300开发板简介

  1、参考电路图

  下图为开发板各个部分的电路原理图

2、模块简介

开发板各个模块如上图所示,电源芯片和手机卡插槽在板的背面。

 3、接口介绍

(1)电源接口

电源接口可以接入5V-26V的直流电压,但是最大电流应该大于2A以保持SIM300模块可以正常工作。

(2)串行接口

SIM300提供了两个不平衡异步操作串口,将GSM模块设计成数据通讯设备(DCE),与传统的数据终端设备(DCE-DTE)相连,模块与用户(DTE)通过信号(如图)连接,自动波特率支持从1200bps到115200bps的波特率。

(3)音频接口

模块提供两个模拟输入通道,AIN1和AIN2,作为麦克风输入和线路输入,这两个模拟输入通道是一样的,典型用法是将其中一个通道连上麦克风做成电话听筒,另一个通道连接外部麦克风或者外线输入。模拟的模块输入由控制寄存器决定其配置,用模拟多路传输建立。

对于每个通道,都可以用指令“AT+CMIC”来设置麦克风的输入增益,指令“AT+ECHO”用来设置回波抑制的参数,边音平衡控制用指令“AT+SIDET”来设置。音频接口又分为听筒接口和麦克风输入接口。

(4)蜂鸣器接口

板连接器上的第36引脚可用来驱动一个蜂鸣器以作为来电铃声。蜂鸣器的输出音量可用指令“AT+CRSL”设置。下图是蜂鸣器的电路原理图。

(5)SIM卡接口电路

SIM卡接口支持GSM Phase1规范功能,也支持针对快速kbpsSIM卡的GSM Phase2+规范功能。同时支持1.8V和3.0VSIM卡。

三、设计步骤

(1)、用跳线将单片机的接收端和SIM300开发板的发射端连接起来。并且单片机的接地端一定要与开发板的接地端连接起来,如果接地端不连接在一起,那么单片机和开发板的电平会无法识别。

(2)、打开电源开关,按复位键,启动开发板,开发板指示灯闪烁并寻找信号,当指示灯的闪烁频率一定时,说明开发板已经完成信号寻找过程。

(3)、用keil软件编写一个程序,然后通过烧录软件把程序烧录到单片机里面。

(4)、烧录完成之后复位单片机,程序开始运行,然后我们就可以通过单片机进行一个拨打电话和挂断电话的操作。

4、编写源程序

源程序如下,该程序可以实现拨打电话和挂断电话的操作。

#include

void SerialInit()//初始化程序(必须使用,否则无法收发)

{

//    TMOD=0x20;//设置定时器工作方式为8位自动装入数据

//    TH1=0xfd;//装入初值,波特率9600

//    TL1=0xfd;

//    TR1=1;//打开定时器

//    SM0=0;//设置串行通讯工作模式,(10为一部发送,波特率可变,由定时器1的溢出率控制)

//    SM1=1;//(同上)在此模式下,定时器溢出一次就发送一个位的数据

//    REN=1;//串行接收允许位(要先设置sm0sm1再开串行允许)

       //9600波特率对应 FFD9H

       RCAP2L = 0xD9;

       RCAP2H = 0xFF;       //RCLK、TCLK置1

               

       //TR2置1

       T2CON = 0x34;

       //串口工作模式1,接收使能

       SCON    = 0x50;

       //允许串口中断

       ES  = 1;

       return;

}

//串行口连续发送char型数组,遇到终止号/0将停止

void SerialSendChars(char *str)

{

    while(*str!='\\0')

    {

        SBUF=*str;

        while(!TI);//等待发送完成信号(TI=1)出现

        TI=0;

        str++;

    }

}

void delay_50ms(int t)

{

    int j; 

for(;t>0;t--)

for(j=6245;j>0;j--)

    ; 

}

void main()

{

    SerialInit();//串口初始化

    SerialSendChars("ati\\r");//ati初始化sim300模块

    delay_50ms(20);

    SerialSendChars("ati\\r");//ati初始化sim300模块

    delay_50ms(20);

    SerialSendChars("ati\\r");//ati初始化sim300模块

    delay_50ms(20);

    SerialSendChars("ATD10010;\\r");//拨打号码10086

    delay_50ms(600);//等待30秒

    SerialSendChars("ATH\\r");//挂断电话    

    while(1);    

    

}

5、参考资料

SIM300开发板用户手册V1.2

SIM300_编程介绍

STC单片机原理及应用下载本文

显示全文
专题