|
本實驗功能簡介:本實驗用于測試ATK-SIM900A GSM/GPRS模塊,總共包括三大項測試:
1,撥號測試—通過按KEY0按鍵進(jìn)入此項測試。進(jìn)入測試后,屏幕將虛擬一個鍵盤,通過鍵盤輸入電話號碼,即可進(jìn)行撥號。如果有電話打進(jìn)來,則會顯示來電號碼,并可以通過鍵盤實現(xiàn)來電接聽。
2,短信測試—通過按KEY1按鍵進(jìn)入此項測試。此項測試包含2個子項:讀短信測試和發(fā)短信測試。按KEY0進(jìn)入讀短信測試,屏幕將顯示SIM卡當(dāng)前存儲的信息條數(shù)以及總共可以存儲的信息條數(shù),并在屏幕上虛擬一個鍵盤,通過鍵盤輸入,即可讀取指定條目的短信,其內(nèi)容將顯示在LCD上面。按KEY1進(jìn)入發(fā)短信測試,屏幕將顯示一條固定的短信內(nèi)容,并虛擬一個鍵盤,通過鍵盤輸入目標(biāo)手機(jī)號碼,即可執(zhí)行發(fā)送,將固定內(nèi)容的短信發(fā)送給目標(biāo)手機(jī),并帶狀態(tài)提示。
3,GPRS測試—通過按WK_UP按鍵進(jìn)入此項測試。此項測試又包含2個子項:TCP測試和UDP測試。默認(rèn)為TCP連接,通過按WK_UP按鍵,可以在TCP/UDP之間切換。此項測試需要輸入IP地址(要連接的目標(biāo)IP地址,必須為公網(wǎng)IP),端口號固定為:8086。在設(shè)定好連接方式和IP地址之后,即可進(jìn)行連接,連接成功后,則可以和目標(biāo)進(jìn)行GPRS數(shù)據(jù)通信。本測試,我們在電腦和ATK-SIM900A模塊之間實驗,電腦端需要一個軟件:網(wǎng)絡(luò)調(diào)試助手,來實現(xiàn)和模塊的TCP/UDP數(shù)據(jù)通信測試。
本實驗硬件連接方式(模塊與開發(fā)板):
ATK-SIM900A ALIENTEK STM32開發(fā)板
STXD<------------>PA3(RXD)
SRXD<------------>PA2(TXD)
GND<------------>GND
注意事項:
1,該實驗請自備:中國移動SIM卡一張(未停機(jī),并開通GPRS業(yè)務(wù))、耳機(jī)(帶麥克風(fēng))一副、直流穩(wěn)壓電源1個。
2,使用ALIENTEK MiniSTM32開發(fā)板的朋友,該實驗需要更新字庫(字庫存放方式類似戰(zhàn)艦板,同Mini板的方式有區(qū)別,所以需要更新),請在SD卡:\SYSTEM\FONT 目錄下存放:UNGBK.BIN,FONT12.BIN和FONT16.BIN等三個文件.這幾個文件已經(jīng)存放在Mini板的本例程工程目錄下,大家只需要拷貝到SD卡即可(即將:SD卡根目錄文件下的SYSTEM文件夾拷貝到SD卡根目錄).
0.png (55.18 KB, 下載次數(shù): 79)
下載附件
2017-5-3 19:25 上傳
stm32單片機(jī)源程序:
- #include "sys.h"
- #include "usart.h"
- #include "delay.h"
- #include "led.h"
- #include "key.h"
- #include "exti.h"
- #include "wdg.h"
- #include "timer.h"
- #include "lcd.h"
- #include "usmart.h"
- #include "rtc.h"
- #include "wkup.h"
- #include "dma.h"
- #include "24cxx.h"
- #include "flash.h"
- #include "touch.h"
- #include "malloc.h"
- #include "string.h"
- #include "mmc_sd.h"
- #include "ff.h"
- #include "exfuns.h"
- #include "fontupd.h"
- #include "text.h"
- #include "usart2.h"
- #include "sim900a.h"
- //ALIENTEK戰(zhàn)艦STM32開發(fā)板擴(kuò)展實驗5
- //ATK-SIM900A GSM/GPRS模塊測試實驗
- int main(void)
- {
- u8 key,fontok=0;
- Stm32_Clock_Init(9); //系統(tǒng)時鐘設(shè)置
- delay_init(72); //延時初始化
- uart_init(72,115200); //串口1初始化
- LCD_Init(); //初始化液晶
- LED_Init(); //LED初始化
- KEY_Init(); //按鍵初始化
- usmart_dev.init(72); //usmart初始化
- USART2_Init(36,115200); //初始化串口2
- TP_Init(); //初始化觸摸屏
- mem_init(SRAMIN); //初始化內(nèi)部內(nèi)存池
- exfuns_init(); //為fatfs相關(guān)變量申請內(nèi)存
- f_mount(0,fs[0]); //掛載SD卡
- key=KEY_Scan(0);
- if(key==KEY_RIGHT) //強(qiáng)制校準(zhǔn)
- {
- LCD_Clear(WHITE); //清屏
- TP_Adjust(); //屏幕校準(zhǔn)
- TP_Save_Adjdata();
- LCD_Clear(WHITE); //清屏
- }
- fontok=font_init(); //檢查字庫是否OK
- if(fontok||key==KEY_DOWN)//需要更新字庫
- {
- LCD_Clear(WHITE); //清屏
- POINT_COLOR=RED; //設(shè)置字體為紅色
- LCD_ShowString(60,50,200,16,16,"ALIENTEK STM32");
- while(SD_Initialize()) //檢測SD卡
- {
- LCD_ShowString(60,70,200,16,16,"SD Card Failed!");
- delay_ms(200);
- LCD_Fill(60,70,200+60,70+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(60,70,200,16,16,"SD Card OK");
- LCD_ShowString(60,90,200,16,16,"Font Updating...");
- key=update_font(20,110,16,0);//從SD卡更新
- while(key)//更新失敗
- {
- LCD_ShowString(60,110,200,16,16,"Font Update Failed!");
- delay_ms(200);
- LCD_Fill(20,110,200+20,110+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(60,110,200,16,16,"Font Update Success!");
- delay_ms(1500);
- LCD_Clear(WHITE);//清屏
- }
- sim900a_test();
- }
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
下載:
擴(kuò)展實驗5 ATK-SIM900A GSM模塊測試實驗.rar
(800.23 KB, 下載次數(shù): 68)
2017-5-3 17:11 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
sim900a手冊.pdf
(1.96 MB, 下載次數(shù): 16)
2017-5-4 01:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
|