实验器材:
Mini V3 STM32开发板
实验目的:
学习ATK-SIM800C GSM模块的使用,学会短信收发、电话、GPRS、蓝牙通信等功能.
硬件连接:
本实验硬件连接方式(模块与开发板):
ATK-SIM800C ALIENTEK STM32开发板
STXD<------------>PA3(RXD)
SRXD<------------>PA2(TXD)
GND<------------>GND
实验现象:
本实验功能简介:本实验用于测试ATK-SIM800C GSM/GPRS模块,总共包括四大项测试:
1,拨号测试—通过按KEY0按键进入此项测试。进入测试后,屏幕将虚拟一个键盘,通过键盘输入电话号码
,即可进行拨号。如果有电话打进来,则会显示来电号码,并可以通过键盘实现来电接听。
2,短信测试—通过按KEY1按键进入此项测试。此项测试包含2个子项:读短信测试和发短信测试。按KEY0
进入读短信测试,屏幕将显示SIM卡当前存储的信息条数以及总共可以存储的信息条数,并在屏幕上虚拟一
个键盘,通过键盘输入,即可读取指定条目的短信,并且语音报读,其内容将显示在LCD上面。按KEY1进入
发短信测试,屏幕将显示一条固定的短信内容,并虚拟一个键盘,通过键盘输入目标手机号码,即可执行发
送,将固定内容的短信发送给目标手机,并带状态提示。
3,GPRS测试—通过先按KEY_UP按键,然后按KEY1进入此项测试。此项测试又包含2个子项:TCP测试和UDP测试。
默认为TCP连接,通过按WK_UP按键,可以在TCP/UDP之间切换。此项测试需要输入IP地址(要连接的目标IP地址,
必须为公网IP),端口号固定为:8086。在设定好连接方式和IP地址之后,即可进行连接,连接成功后,则可以
和目标进行GPRS数据通信。本测试,我们在电脑和ATK-SIM800C模块之间实验,电脑端需要一个软件:网络调试助
手,来实现和模块的TCP/UDP数据通信测试。
4,蓝牙测试—通过先按KEY_UP按键,然后按KEY0进入此项测试。此项测试又包含2个子项:发起配对请求和接收配
对请求模式的通信,按KEY1进入发起配对请求,然后通过扫描搜索到手机设备,建立连接后,手机端打开蓝牙调试
助手与模块再一次进行spp连接,然后手机看到模块发送的数据,屏幕也显示手机端发送过来的数据。按KEY0进入接
收配对请求模式,手机端连接搜索到模块设备,然后进行连接,spp的连接和数据通信和前面的效果一样。
注意事项:
1,该实验请自备:中国移动SIM卡一张(未停机,并开通GPRS业务)、耳机(带麦克风)一副、直流稳压
电源1个(电流要足够,5V/2A,或12V/1A)。
2, 本例程在LCD_Init函数里面(在ILI93xx.c),用到了printf,如果不初始化串口1,将导致液晶无法显示!!
3,用Mini板的客户,该实验不支持ALIENTEK MiniSTM32 V3.0之前的板子。
4, 字库更新时,需自备标准SD卡一张(即大卡,也可以用TF卡+卡套).
5, 字库更新,需自备SD卡一个,并拷贝光盘:6,SD卡根目录文件 对应使用板子下的,里面的所有内容到SD卡根目录,然后将SD卡插到开发板.
6,ATK-SIM800C模块,在按电源开关后,会亮电源灯,
若PKEY与VBAT跳线帽连接,则模块自动开机
若PKEY与VBAT跳线帽没有连接,则需长按PWR_KEY开机!!开机后,红色的NET会闪烁
7,本例程的详细说明,见光盘:9,增值资料\1,ALIENTEK 产品资料\4,ATK-SIM800C 模块\ATK-SIM800C 模块使用说(精英板&Mini V3)_AN1604B.pdf
源码目录结构:
----code\
|----CORE\
| |----core_cm3.c
| |----core_cm3.h
| |----startup_stm32f10x_hd.s
| |----startup_stm32f10x_md.s
|----GPS\
| |----gps.c
| |----gps.h
| |----MFC163A.tmp
| |----MFC4A32.tmp
| |----MFC620B.tmp
| |----MFCB023.tmp
| |----MFCBCFE.tmp
| |----MFCCFD6.tmp
| |----MFCD807.tmp
|----HARDWARE\
| |----EXTI\
| | |----exti.c
| | |----exti.h
| |----hc-sr04\
| | |----hc-sr04.c
| | |----hc-sr04.h
| |----MPU6050\
| | |----eMPL\
| | | |----dmpKey.h
| | | |----dmpmap.h
| | | |----inv_mpu.c
| | | |----inv_mpu.h
| | | |----inv_mpu_dmp_motion_driver.c
| | | |----inv_mpu_dmp_motion_driver.h
| | |----mpu6050.c
| | |----mpu6050.h
| | |----mpuiic.c
| | |----mpuiic.h
| |----TIMER\
| | |----timer.c
| | |----timer.h
| |----TOUCH\
| | |----ctiic.c
| | |----ctiic.h
| | |----MFC206A.tmp
| | |----ott2001a.c
| | |----ott2001a.h
| | |----touch.c
| | |----touch.h
| |----USART2\
| | |----MFC548E.tmp
| | |----MFC9D4E.tmp
| | |----MFCB642.tmp
| | |----MFCCD61.tmp
| | |----usart2.c
| | |----usart2.h
| |----USART3\
| | |----MFC1762.tmp
| | |----MFC86C4.tmp
| | |----MFC9A3C.tmp
| | |----MFC9A4E.tmp
| | |----usart3.c
| | |----usart3.h
| |----wt-588d\
| | |----wt-588d.c
| | |----wt-588d.h
|----keilkilll.bat
|----OBJ\
| |----24cxx.crf
| |----24cxx.d
| |----24cxx.o
| |----core_cm3.crf
| |----core_cm3.d
| |----core_cm3.o
| |----ctiic.crf
| |----ctiic.d
| |----ctiic.o
| |----delay.crf
| |----delay.d
| |----delay.o
| |----diskio.crf
| |----diskio.d
| |----diskio.o
| |----exfuns.crf
| |----exfuns.d
| |----exfuns.o
| |----exti.crf
| |----exti.d
| |----exti.o
| |----fattester.crf
| |----fattester.d
| |----fattester.o
| |----ff.crf
| |----ff.d
| |----ff.o
| |----flash.crf
| |----flash.d
| |----flash.o
| |----fontupd.crf
| |----fontupd.d
| |----fontupd.o
| |----gps.crf
| |----gps.d
| |----gps.o
| |----GSM.axf
| |----GSM.build_log.htm
| |----GSM.hex
| |----GSM.htm
| |----GSM.lnp
| |----GSM.sct
| |----GSM_GSM.dep
| |----hc-sr04.crf
| |----hc-sr04.d
| |----hc-sr04.o
| |----inv_mpu.crf
| |----inv_mpu.d
| |----inv_mpu.o
| |----inv_mpu_dmp_motion_driver.crf
| |----inv_mpu_dmp_motion_driver.d
| |----inv_mpu_dmp_motion_driver.o
| |----key.crf
| |----key.d
| |----key.o
| |----lcd.crf
| |----lcd.d
| |----lcd.o
| |----led.crf
| |----led.d
| |----led.o
| |----main.crf
| |----main.d
| |----main.o
| |----malloc.crf
| |----malloc.d
| |----malloc.o
| |----misc.crf
| |----misc.d
| |----misc.o
| |----mmc_sd.crf
| |----mmc_sd.d
| |----mmc_sd.o
| |----mpu6050.crf
| |----mpu6050.d
| |----mpu6050.o
| |----mpuiic.crf
| |----mpuiic.d
| |----mpuiic.o
| |----mycc936.crf
| |----mycc936.d
| |----mycc936.o
| |----myiic.crf
| |----myiic.d
| |----myiic.o
| |----ott2001a.crf
| |----ott2001a.d
| |----sim800c.crf
| |----sim800c.d
| |----sim800c.o
| |----spi.crf
| |----spi.d
| |----spi.o
| |----startup_stm32f10x_hd.d
| |----startup_stm32f10x_hd.o
| |----stm32f10x_dma.crf
| |----stm32f10x_dma.d
| |----stm32f10x_dma.o
| |----stm32f10x_exti.crf
| |----stm32f10x_exti.d
| |----stm32f10x_exti.o
| |----stm32f10x_gpio.crf
| |----stm32f10x_gpio.d
| |----stm32f10x_gpio.o
| |----stm32f10x_it.crf
| |----stm32f10x_it.d
| |----stm32f10x_it.o
| |----stm32f10x_rcc.crf
| |----stm32f10x_rcc.d
| |----stm32f10x_rcc.o
| |----stm32f10x_spi.crf
| |----stm32f10x_spi.d
| |----stm32f10x_spi.o
| |----stm32f10x_tim.crf
| |----stm32f10x_tim.d
| |----stm32f10x_tim.o
| |----stm32f10x_usart.crf
| |----stm32f10x_usart.d
| |----stm32f10x_usart.o
| |----sys.crf
| |----sys.d
| |----sys.o
| |----system_stm32f10x.crf
| |----system_stm32f10x.d
| |----system_stm32f10x.o
| |----text.crf
| |----text.d
| |----text.o
| |----timer.crf
| |----timer.d
| |----timer.o
| |----touch.crf
| |----touch.d
| |----touch.o
| |----usart.crf
| |----usart.d
| |----usart.o
| |----usart2.crf
| |----usart2.d
| |----usart2.o
| |----usart3.crf
| |----usart3.d
| |----usart3.o
| |----usmart.crf
| |----usmart.d
| |----usmart.o
| |----usmart_config.crf
| |----usmart_config.d
| |----usmart_config.o
| |----usmart_str.crf
| |----usmart_str.d
| |----usmart_str.o
| |----wt-588d.crf
| |----wt-588d.d
| |----wt-588d.o
|----README.md
|----README.TXT
|----SIM800C\
| |----MFC1851.tmp
| |----MFC1A73.tmp
| |----MFC1F43.tmp
| |----MFC2E.tmp
| |----MFC316A.tmp
| |----MFC31BD.tmp
| |----MFC31EE.tmp
| |----MFC32A0.tmp
| |----MFC3E11.tmp
| |----MFC3EB2.tmp
| |----MFC4488.tmp
| |----MFC46EE.tmp
| |----MFC4914.tmp
| |----MFC5232.tmp
| |----MFC549.tmp
| |----MFC54C5.tmp
| |----MFC558A.tmp
| |----MFC563A.tmp
| |----MFC572B.tmp
| |----MFC57C8.tmp
| |----MFC5C7C.tmp
| |----MFC6337.tmp
| |----MFC644B.tmp
| |----MFC646B.tmp
| |----MFC7136.tmp
| |----MFC7604.tmp
| |----MFC7663.tmp
| |----MFC7F98.tmp
| |----MFC87EF.tmp
| |----MFC880F.tmp
| |----MFCA5BE.tmp
| |----MFCA64D.tmp
| |----MFCB2ED.tmp
| |----MFCB4D2.tmp
| |----MFCBDBE.tmp
| |----MFCC8F4.tmp
| |----MFCCAF9.tmp
| |----MFCCDC0.tmp
| |----MFCDCE3.tmp
| |----MFCE323.tmp
| |----MFCE54E.tmp
| |----MFCE7B3.tmp
| |----MFCE92.tmp
| |----MFCE97.tmp
| |----MFCF44B.tmp
| |----sim800c.c
| |----sim800c.h
|----STM32F10x_FWLib\
| |----inc\
| | |----misc.h
| | |----stm32f10x_adc.h
| | |----stm32f10x_bkp.h
| | |----stm32f10x_can.h
| | |----stm32f10x_cec.h
| | |----stm32f10x_crc.h
| | |----stm32f10x_dac.h
| | |----stm32f10x_dbgmcu.h
| | |----stm32f10x_dma.h
| | |----stm32f10x_exti.h
| | |----stm32f10x_flash.h
| | |----stm32f10x_fsmc.h
| | |----stm32f10x_gpio.h
| | |----stm32f10x_i2c.h
| | |----stm32f10x_iwdg.h
| | |----stm32f10x_pwr.h
| | |----stm32f10x_rcc.h
| | |----stm32f10x_rtc.h
| | |----stm32f10x_sdio.h
| | |----stm32f10x_spi.h
| | |----stm32f10x_tim.h
| | |----stm32f10x_usart.h
| | |----stm32f10x_wwdg.h
| |----src\
| | |----misc.c
| | |----stm32f10x_adc.c
| | |----stm32f10x_bkp.c
| | |----stm32f10x_can.c
| | |----stm32f10x_cec.c
| | |----stm32f10x_crc.c
| | |----stm32f10x_dac.c
| | |----stm32f10x_dbgmcu.c
| | |----stm32f10x_dma.c
| | |----stm32f10x_exti.c
| | |----stm32f10x_flash.c
| | |----stm32f10x_fsmc.c
| | |----stm32f10x_gpio.c
| | |----stm32f10x_i2c.c
| | |----stm32f10x_iwdg.c
| | |----stm32f10x_pwr.c
| | |----stm32f10x_rcc.c
| | |----stm32f10x_rtc.c
| | |----stm32f10x_sdio.c
| | |----stm32f10x_spi.c
| | |----stm32f10x_tim.c
| | |----stm32f10x_usart.c
| | |----stm32f10x_wwdg.c
|----SYSTEM\
| |----delay\
| | |----delay.c
| | |----delay.h
| |----sys\
| | |----sys.c
| | |----sys.h
| |----usart\
| | |----usart.c
| | |----usart.h
|----USER\
| |----DebugConfig\
| | |----GSM_STM32F103RC_1.0.0.dbgconf
| |----GSM.map
| |----GSM.uvguix.Administrator
| |----GSM.uvguix.sunzixiu
| |----GSM.uvguix.纪政霖
| |----GSM.uvguix_sunzixiu.bak
| |----GSM.uvoptx
| |----GSM.uvprojx
| |----GSM_GSM.dep
| |----GSM_uvoptx.bak
| |----GSM_uvprojx.bak
| |----JLinkLog.txt
| |----JLinkSettings.ini
| |----main.c
| |----MFC1012.tmp
| |----MFC112B.tmp
| |----MFC1452.tmp
| |----MFC1A75.tmp
| |----MFC1EF.tmp
| |----MFC2115.tmp
| |----MFC219.tmp
| |----MFC28BB.tmp
| |----MFC2B5F.tmp
| |----MFC2E49.tmp
| |----MFC309.tmp
| |----MFC313A.tmp
| |----MFC3175.tmp
| |----MFC31DE.tmp
| |----MFC329B.tmp
| |----MFC3C7E.tmp
| |----MFC3E70.tmp
| |----MFC40A.tmp
| |----MFC459D.tmp
| |----MFC45D0.tmp
| |----MFC467F.tmp
| |----MFC4ABA.tmp
| |----MFC5333.tmp
| |----MFC5679.tmp
| |----MFC5E32.tmp
| |----MFC60DA.tmp
| |----MFC66D2.tmp
| |----MFC66FC.tmp
| |----MFC8330.tmp
| |----MFC8762.tmp
| |----MFC8CCF.tmp
| |----MFC8E23.tmp
| |----MFC9303.tmp
| |----MFC95F3.tmp
| |----MFC989F.tmp
| |----MFC98FD.tmp
| |----MFC9940.tmp
| |----MFC9BD.tmp
| |----MFC9C4A.tmp
| |----MFC9D4B.tmp
| |----MFCA25B.tmp
| |----MFCA5AD.tmp
| |----MFCA743.tmp
| |----MFCA9EF.tmp
| |----MFCAD8F.tmp
| |----MFCADAB.tmp
| |----MFCB263.tmp
| |----MFCB34B.tmp
| |----MFCBAEE.tmp
| |----MFCC248.tmp
| |----MFCC267.tmp
| |----MFCC307.tmp
| |----MFCC3F0.tmp
| |----MFCC4A6.tmp
| |----MFCC4C2.tmp
| |----MFCC4ED.tmp
| |----MFCC85A.tmp
| |----MFCC9C6.tmp
| |----MFCD250.tmp
| |----MFCD297.tmp
| |----MFCE13B.tmp
| |----MFCEC87.tmp
| |----MFCEF6.tmp
| |----MFCF08B.tmp
| |----MFCF185.tmp
| |----MFCF2A7.tmp
| |----MFCF40B.tmp
| |----MFCF41.tmp
| |----MFCFC1E.tmp
| |----MFCFC3C.tmp
| |----MFCFCF1.tmp
| |----MFCFCFE.tmp
| |----MFCFE24.tmp
| |----MFCFFC3.tmp
| |----startup_stm32f10x_hd.lst
| |----stm32f10x.h
| |----stm32f10x_conf.h
| |----stm32f10x_it.c
| |----stm32f10x_it.h
| |----system_stm32f10x.c
| |----system_stm32f10x.h
完整源码下载地址:https://download.csdn.net/download/FL1768317420/89210114