新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)控制TC35 之發(fā)送TEXT短信——MADE BY lyq

51單片機(jī)控制TC35 之發(fā)送TEXT短信——MADE BY lyq

作者: 時(shí)間:2016-11-13 來(lái)源:網(wǎng)絡(luò) 收藏
主函數(shù)

#include
#include "1602.h"
#include "uart.c"
#include "tc35.c"

本文引用地址:http://butianyuan.cn/article/201611/316394.htm

//#define RsBuf_N 50

//char RsBuf[RsBuf_N]; //定義串口接收數(shù)據(jù)緩沖區(qū)
//uchar RsPoint=0;
uchar code PhoneNO[]= "+8615900000000";//改了
uchar code Text[]= "I love SDNU";
uchar code center[]="+8613800531500";

void main()
{
TC35_init();
Uart_init();
init_1602();

Send_AT();

Set_MODE(1); //設(shè)置短消息模式
Set_CENTER(center); // 設(shè)置短消息中心 AT+CSCA=“+8613800531500”回車(chē)
TransmitText(PhoneNO,Text);

while(1);
//lcd_disp_str(RsBuf ,2);

}


/*問(wèn)題:
每次處理完數(shù)據(jù)。RsPoint是怎樣清零的?????在 準(zhǔn)備發(fā)一個(gè)數(shù)據(jù),然后接受一個(gè)數(shù)據(jù) 之前
RsBuf[RsPoint++]=SBUF;
RsBuf[RsPoint]=0x00; //將下一個(gè)數(shù)據(jù)清零

如果這個(gè)發(fā)送沒(méi)問(wèn)題。加刪除,接收函數(shù),參考桌面上的tc35.c

添加液晶菜單的支持 ,類(lèi)似手機(jī)
*/

========================================================

========================================================

/******************************************************************

函數(shù)名TC35.c
MADE BY lyq

my BLOGhttp://hi.baidu.com/282280072

*******************************************************************/

#include "uart.c"
#include "1602.h"
#include "delay.h"

#define uchar unsigned char
#define uint unsigned int
#define NULL 0

#define ATwaits 10
#define DWWwaits 10
#define Readwaits 10
#define Sendwaits 10

#define RsBuf_N 50

char RsBuf[RsBuf_N]; //定義串口接收數(shù)據(jù)緩沖區(qū)
uchar RsPoint;

void Send_AT(void);
char *mystrstr(char *s, char *t);
void Num2char(uchar i);

/***********************TC35模塊初始化******************************
*功 能: TC35模塊初始化, P0.0輸出低電平至少100ms
*形 參:
*返 回 值:
*備 注:
*****************************************************************/
void TC35_init()
{

P0|=0x01;
P0&=~0x01;
delayms_100ms();delayms_100ms();delayms_100ms();delayms_100ms();
delayms_100ms();delayms_100ms();
P0|=0x01;
delayms_10s();delayms_10s();delayms_10s();
}

/***********************發(fā)送聯(lián)機(jī)指令******************************
*功 能: 串口發(fā)送數(shù)組命令到TC35,"AT",
*形 參:
*返 回 值:
*備 注: 測(cè)試GSM模塊是否連接正確
*****************************************************************/
void Send_AT(void)
{
uchar *p,i=ATwaits; //ATwaits=10
//lcd_disp_str(RsBuf,1);


while(i--) //測(cè)試10次,在某一次成功就退出
{
//RsBuf[0]=