SIM發(fā)送信息程序
0.png (65.16 KB, 下載次數(shù): 53)
下載附件
2017-5-13 03:31 上傳
單片機源程序如下:
- /*********************************************************************
- 作者:神秘藏寶室
- 本例程僅適用于在本店購買GSM/GPRS模塊模塊的用戶使用,鄙視其它店鋪的盜用行為
- 版權所有,盜版必究!!!
- *********************************************************************/
- #include "main.h"
- #include "uart.h"
- //常量
- #define Success 1U
- #define Failure 0U
- //定義變量
- unsigned long Time_Cont = 0; //定時器計數(shù)器
- char phoneNumber[] = "39"; //替換成需要被撥打電話的號碼
- char msg[] = ""; //短信內(nèi)容
- //****************************************************
- //主函數(shù)
- //****************************************************
- void main()
- {
- Uart_Init();
- if (sendCommand("AT\r\n", "OK\r\n", 3000, 10) == Success);
- else errorLog();
- delay_ms(10);
- if (sendCommand("AT+CPIN?\r\n", "+CPIN:READY", 1000, 10) == Success);
- else errorLog();
- delay_ms(10);
- if (sendCommand("AT+CREG?\r\n", "+CREG: 1,1", 1000, 10) == Success);
- else errorLog();
- delay_ms(10);
- if (sendCommand("AT+CMGF=0\r\n", "OK\r\n", 1000, 10) == Success);
- else errorLog();
- delay_ms(10);
- if (sendCommand("AT+CSCS=\"GSM\"\r\n", "OK\r\n", 1000, 10) == Success);
- else errorLog();
- delay_ms(10);
- sendMessage(phoneNumber); //發(fā)送短信
- while(1)
- {
- }
- }
- void sendMessage(char *number)
- {
- xdata char send_buf[20] = {0};
- memset(send_buf, 0, 20); //清空
- strcpy(send_buf, "AT+CMGS=");
- strcat(send_buf, number);
- strcat(send_buf, "\r\n");
- if (sendCommand(send_buf, ">", 3000, 10) == Success);
- else errorLog();
- SendString("0011000D91683137380502F50008AA180048006F0077002000610072006500200079006F0075003F");
- SendData(0x1A);
- }
- void phone(char *number)
- {
- char send_buf[20] = {0};
- memset(send_buf, 0, 20); //清空
- strcpy(send_buf, "ATD");
- strcat(send_buf, number);
- strcat(send_buf, ";\r\n");
- if (sendCommand(send_buf, "SOUNDER", 10000, 10) == Success);
- else errorLog();
- }
- void errorLog()
- {
- while (1)
- {
- if (sendCommand("AT\r\n", "OK", 100, 10) == Success)
- {
- soft_reset();
- }
- delay_ms(200);
- }
- }
- void soft_reset(void) //制造重啟命令
- {
- ((void (code *) (void)) 0x0000) ();
- }
- unsigned int sendCommand(char *Command, char *Response, unsigned long Timeout, unsigned char Retry)
- {
- unsigned char n;
- CLR_Buf();
- for (n = 0; n < Retry; n++)
- {
- SendString(Command); //發(fā)送GPRS指令
- Time_Cont = 0;
- while (Time_Cont < Timeout)
- {
- delay_ms(100);
- Time_Cont += 100;
- if (strstr(Rec_Buf, Response) != NULL)
- {
-
- CLR_Buf();
- return Success;
- }
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
發(fā)送短信成功.rar
(60.44 KB, 下載次數(shù): 44)
2017-5-12 19:25 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|