亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ctrlbq.c

?? vc實現手機通訊通過串口與 BENQ 模塊 M22 的通訊函數
?? C
字號:
/*******************************************************************************************************
**
**(c)Copyright 2004 沈陽波爾科技有限公司 All rights reserved.
**
**--------------文件信息--------------------------------------------------------------------------------
**
**文   件   名: CtrlBQ.c
**創   建   人: 陳征(Eric.Chen)
**最后修改日期: 2004.07
**描        述: 通過串口與 BENQ 模塊 M22 的通訊函數
**              
**
**--------------歷史版本信息----------------------------------------------------------------------------
**
** 創建人: 陳征(Eric.Chen)
** 版  本: v1.0
** 日 期: 2004.07
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
**
** 修改人:
** 版  本:
** 日 期:
** 描 述:
**
**--------------當前版本修訂------------------------------------------------------------------------------
**
** 修改人:
** 版  本:
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

#include  <msp430x14x.h>
#include  "modem.h"

extern void delayms(uint num);

void BENQInit(void);
void PowerOffBQ(void);
void SendBQ(uchar *buf, uint len);
void ReadMsg(uchar num);
void DelMsg(uchar num);
void SendAT(void);
void BQSetMsgCen(uchar *buf, uchar len);
void DialUp(uchar *buf, uchar len);
void HangUp(void);
void AnswerTel(void);
void SendMsg(uchar enorcn, uchar *buf, uchar len);

extern uchar g_SendMsgNumLen;
extern uchar g_SendMsgNum[MSGCENLEN];
/*----------------------------------------------------------------------------------
*函數介紹:BENQ_GSM(M22)模塊初始化
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void BENQInit(void)
{
	uchar i;
	delayms(200);
	PWON_L;
	delayms(1000);
	PWON_H;
	for (i = 0; i < 18; i++)
	{
		delayms(1000);
	}
	SendAT();
	delayms(100);
	SendBQ("AT$NOSLEEP=1\r\n", 14);	//取消休眠狀態
	delayms(100);
	SendBQ("AT+CLIP=1\r\n", 11);	//設置來電顯示
	delayms(100);
	SendBQ("AT+CMGF=0\r\n", 11);	//設置短信格式為PDU格式
	delayms(100);
	SendBQ("AT$AUPATH=3,1\r\n", 15);//設置語音通道
	delayms(100);
}

/*----------------------------------------------------------------------------------
*函數介紹:關閉
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void PowerOffBQ(void)
{
	SendBQ("AT+POWEROFF\r\n", 13);
}

/*----------------------------------------------------------------------------------
*函數介紹:通過串口向BENQ模塊發送數據
*輸入參數:uchar* buf 發送數據指針 uint len 發送數據長度
*輸出參數:無
*返 回 值:無
*/
void SendBQ(uchar *buf, uint len)
{
	uint i;
	
	for (i = 0; i < len; i++)
	{
		TXBUF0 = buf[i];
		while ((UTCTL0 & 0x01) == 0);
	}
}

/*----------------------------------------------------------------------------------
*函數介紹:向BENQ模塊發送AT\r\n
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void SendAT(void)
{
	SendBQ("AT\r\n", 4);
}

/*----------------------------------------------------------------------------------
*函數介紹:設置短信中心號碼
*輸入參數:uchar *buf 號碼地址 uchar len 號碼長度
*輸出參數:無
*返 回 值:無
*/
void BQSetMsgCen(uchar *buf, uchar len)
{
//	SendAT();
//	delayms(10);
	SendBQ("AT+CSCA=\"+", 10);
	SendBQ(buf, len);
	SendBQ("\",145\r\n", 7);
}

/*----------------------------------------------------------------------------------
*函數介紹:讀第num條短信
*輸入參數:uchar num 第num條
*輸出參數:無
*返 回 值:無
*/
void ReadMsg(uchar num)
{
//	SendAT();
//	delayms(10);
	num += 0x30;
	SendBQ("AT+CMGR=", 8);
	SendBQ(&num, 1);
	SendBQ("\r\n", 2);
}

/*----------------------------------------------------------------------------------
*函數介紹:刪除第num條短信
*輸入參數:uchar num 第num條
*輸出參數:無
*返 回 值:無
*/
void DelMsg(uchar num)
{
//	SendAT();
//	delayms(10);
	num += 0x30;
	SendBQ("AT+CMGD=", 8);
	SendBQ(&num, 1);
	SendBQ("\r\n", 2);
}

/*----------------------------------------------------------------------------------
*函數介紹:接聽來電
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void AnswerTel(void)
{
	SendBQ("ATA\r\n", 5);
}

/*----------------------------------------------------------------------------------
*函數介紹:掛機
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void HangUp(void)
{
	SendBQ("ATH\r\n", 5);
}

/*----------------------------------------------------------------------------------
*函數介紹:撥號
*輸入參數:uchar *buf 號碼地址 uchar len 號碼長度
*輸出參數:無
*返 回 值:無
*/
void DialUp(uchar *buf, uchar len)
{
	SendBQ("ATD", 3);
	SendBQ(buf, len);
	SendBQ(";\r\n", 3);
}

/*----------------------------------------------------------------------------------
*函數介紹:恢復出廠設置
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void ReFactory(void)
{
	SendBQ("AT&F\r\n", 6);
}

/*----------------------------------------------------------------------------------
*函數介紹:發送短信
*輸入參數:無
*輸出參數:無
*返 回 值:無
*/
void SendMsg(uchar enorcn, uchar *buf, uchar len)
{
	uchar i,j,k;
	uchar temp1,temp2;
	//發送頭
	SendBQ("AT+CMGS=", 8);
	
	//發送長度
	if (ENCODE == enorcn)
	{
		j = (4 + (g_SendMsgNumLen + 1) / 2 + 3 + len - len /8 );
	}
	else
	{
		j = (4 + (g_SendMsgNumLen + 1) / 2 + 3 + len );
	}
	if (j < 10) 
	{
		j += 0x30;
		SendBQ(&j, 1);
	}
	else
	{
		if (j < 100)
		{
			k = j / 10 + 0x30;
			SendBQ(&k, 1);
			k = (j % 10) + 0x30;
			SendBQ(&k, 1);
		}
		else
		{
			k = (j / 100) + 0x30;
			SendBQ(&k, 1);
			k = ((j % 100) / 10) + 0x30;
			SendBQ(&k, 1);
			k = (j % 10) + 0x30;
			SendBQ(&k, 1);
		}
	}
	
	//等待輸出'>'
	SendBQ("\r", 1);
	delayms(100);
	SendBQ("000103",6);
	
	//發送對方號碼長度
	j = g_SendMsgNumLen / 16 + 0x30;
	SendBQ(&j, 1);
	j = ((g_SendMsgNumLen & 0x0f) < 0x0a)? ((g_SendMsgNumLen & 0x0f) + 0x30) : ((g_SendMsgNumLen & 0x0f) + 0x37);
	SendBQ(&j, 1);
	
	SendBQ("91", 2);
	//發送對方號碼
	for (i = 0; i < ((g_SendMsgNumLen + 1) / 2); i++)
	{
		j = ((g_SendMsgNum[i] / 16) < 0x0a)? (g_SendMsgNum[i] / 16 + 0x30) : (g_SendMsgNum[i] / 16 + 0x37);
		SendBQ(&j, 1);
		j = ((g_SendMsgNum[i] & 0x0f) < 0x0a)? ((g_SendMsgNum[i] & 0x0f) + 0x30) : ((g_SendMsgNum[i] & 0x0f) + 0x37);
		SendBQ(&j, 1);
	}
	
	//發送編碼格式
	if (ENCODE == enorcn)
	{
		SendBQ("0000", 4);
	}
	else
	{
		SendBQ("0008", 4);
	}
	
	//發送短信長度
	j = ((len / 16) < 0x0a)? (len / 16 + 0x30) : (len / 16 + 0x37);
	SendBQ(&j, 1);
	j = ((len & 0x0f)< 0x0a)? ((len & 0x0f) + 0x30) : ((len & 0x0f) + 0x37);
	SendBQ(&j, 1);
	
	//發送短信內容
	if (ENCODE == enorcn)
	{
		len = len - len / 8;
		j = 0;
		k = 0;
		for (i = 0; i < len; i++) 
		{
			temp1 = (buf[j] >> k) | (buf[j + 1] << (7 - k));
			temp2 = ((temp1 / 16) < 0x0a)? (temp1 / 16 + 0x30) : (temp1 / 16 + 0x37);
			SendBQ(&temp2, 1);
			temp2 = ((temp1 & 0x0f)< 0x0a)? ((temp1 & 0x0f) + 0x30) : ((temp1 & 0x0f) + 0x37);
			SendBQ(&temp2, 1);
			j++;
			k = (k + 1) % 7;
			if (0 == k)
			{
				j++;
			}
		}
	}
	else
	{
		j = 0;
		k = 0;
		for (i = 0; i < len; i++) 
		{
			//temp1 = (buf[j] >> k) | (buf[j + 1] << (7 - k));
			temp2 = ((buf[i] / 16) < 0x0a)? (buf[i] / 16 + 0x30) : (buf[i] / 16 + 0x37);
			SendBQ(&temp2, 1);
			temp2 = ((buf[i] & 0x0f)< 0x0a)? ((buf[i] & 0x0f) + 0x30) : ((buf[i] & 0x0f) + 0x37);
			SendBQ(&temp2, 1);
//			j++;
//			k = (k + 1) % 7;
//			if(0 == k)
//			{
//				j++;
//			}
		}
	}
	temp1 = 0x1a;
	SendBQ(&temp1, 1);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩极品在线观看| 欧美亚洲综合网| 不卡视频一二三| 欧美日本国产视频| 欧美国产97人人爽人人喊| 亚洲综合视频在线观看| 国产一区二区三区免费观看| 色综合视频在线观看| 精品播放一区二区| 亚洲一区二区三区激情| 国产成人在线看| 日韩免费福利电影在线观看| 欧美国产禁国产网站cc| 蜜臀av一区二区| 欧美在线一区二区三区| 国产精品色哟哟| 久久99精品国产麻豆婷婷| 一本大道久久a久久综合| 久久精品一二三| 日韩电影免费一区| 在线亚洲人成电影网站色www| 久久五月婷婷丁香社区| 日韩国产高清影视| 在线观看亚洲专区| 亚洲人成网站在线| eeuss影院一区二区三区| 久久久综合视频| 免费亚洲电影在线| 91精品国产一区二区人妖| 亚洲午夜激情网页| 在线精品视频小说1| 日韩美女久久久| 丁香一区二区三区| 亚洲国产精品成人综合| 国产成人在线看| 久久精子c满五个校花| 狠狠色狠狠色综合日日91app| 欧美一区二区私人影院日本| 日韩成人av影视| 欧美一区二区三区视频免费播放| 亚洲va欧美va天堂v国产综合| 日本乱人伦aⅴ精品| 亚洲激情在线激情| 色欧美片视频在线观看| 亚洲综合色成人| 欧美视频中文一区二区三区在线观看| 亚洲日本va午夜在线影院| 一本色道久久综合狠狠躁的推荐| 国产精品不卡一区| 91丝袜美腿高跟国产极品老师 | 香蕉成人伊视频在线观看| 色综合一区二区| 一区二区在线观看免费视频播放| 色呦呦国产精品| 一区二区三区不卡在线观看| 欧美丝袜丝交足nylons图片| 亚洲综合在线免费观看| 欧美综合一区二区三区| 亚洲成人综合视频| 欧美一级一级性生活免费录像| 蜜桃在线一区二区三区| 国产亚洲欧美一区在线观看| 欧美精品久久久久久久多人混战 | 中文字幕不卡的av| 91色porny在线视频| 午夜激情一区二区三区| 欧美成人官网二区| 99国产精品99久久久久久| 伊人夜夜躁av伊人久久| 欧美一区二区三区在线观看视频| 久久国产福利国产秒拍| 国产精品久久久久久久久晋中| 99久久久国产精品免费蜜臀| 亚洲超碰精品一区二区| 精品国产a毛片| 99国产精品一区| 免费日本视频一区| 中文字幕一区二区5566日韩| 欧美麻豆精品久久久久久| 久久99精品国产.久久久久| 成人欧美一区二区三区1314| 欧美日本国产一区| av资源网一区| 免费精品视频在线| 一区二区三区四区国产精品| 精品久久久久久久久久久院品网 | 欧美日韩精品一区二区天天拍小说 | 欧美日韩1234| 粉嫩aⅴ一区二区三区四区| 天天射综合影视| 国产精品视频一区二区三区不卡| 欧美三级蜜桃2在线观看| 成人免费观看视频| 麻豆久久久久久久| 亚洲黄一区二区三区| 久久久精品黄色| 91精品国产综合久久久久久久| 99视频精品免费视频| 国产乱码精品一区二区三区忘忧草 | 在线观看中文字幕不卡| 国产成人精品亚洲日本在线桃色| 日产欧产美韩系列久久99| 91一区在线观看| 欧美日韩久久久久久| 国产一区二区三区四区五区美女| 亚洲欧洲日韩av| 久久婷婷久久一区二区三区| 欧美调教femdomvk| 91首页免费视频| 国产一区不卡在线| 久久国产精品99久久久久久老狼| 亚洲一本大道在线| 亚洲免费毛片网站| 中文字幕一区二区三区在线观看| 久久久久久久电影| 久久综合狠狠综合久久激情| 日韩一二在线观看| 欧美一区二区三区思思人| 欧美日韩在线一区二区| 91高清视频免费看| 91传媒视频在线播放| 成人av综合一区| 国产精品亚洲第一| 大胆欧美人体老妇| 成人精品免费网站| 国产91精品精华液一区二区三区 | 欧美国产一区在线| 久久免费精品国产久精品久久久久| 欧美一区二区三区人| 91精品国产综合久久久久久久久久 | 丝袜亚洲精品中文字幕一区| 中文字幕一区视频| 亚洲婷婷综合色高清在线| 亚洲欧美日韩系列| 亚洲一卡二卡三卡四卡无卡久久 | 国产丶欧美丶日本不卡视频| 国产一区二区精品久久91| 国产成人99久久亚洲综合精品| 国产成都精品91一区二区三| www.久久久久久久久| av毛片久久久久**hd| 欧美视频一区二| 日韩免费性生活视频播放| 精品国产乱码久久久久久牛牛 | 欧美日韩一区 二区 三区 久久精品| 在线观看日韩av先锋影音电影院| 欧美三级日本三级少妇99| 最近中文字幕一区二区三区| 亚洲男同性视频| 免费高清视频精品| 成人一二三区视频| 欧美亚洲精品一区| 欧美精品一区二区三区很污很色的| 久久九九影视网| 亚洲美女在线一区| 久久精品国产第一区二区三区| 国产成人av网站| 日本韩国欧美国产| 日韩三级.com| 国产精品久久久久久久久久免费看 | 91黄色在线观看| 欧美大胆人体bbbb| 亚洲精品国产第一综合99久久| 日韩av在线免费观看不卡| 成人精品视频.| 91麻豆精品国产91久久久久久久久| 欧美—级在线免费片| 亚洲va欧美va天堂v国产综合| 国产精品一区二区在线观看不卡| 日本精品免费观看高清观看| 日韩精品在线一区| 亚洲综合一二三区| 国产成人综合网站| 欧美一区在线视频| 亚洲美女淫视频| 国产成a人无v码亚洲福利| 在线不卡中文字幕播放| 成人免费在线视频观看| 久久er精品视频| 欧美专区在线观看一区| 国产欧美综合在线| 另类小说一区二区三区| 欧美主播一区二区三区美女| 国产欧美日韩中文久久| 另类小说视频一区二区| 91蜜桃在线免费视频| 国产欧美一区二区三区在线老狼| 日本欧美加勒比视频| 欧美亚洲尤物久久| 亚洲欧美日韩久久精品| 成人午夜av影视| 久久亚洲二区三区| 麻豆精品在线播放| 制服丝袜成人动漫| 首页国产欧美日韩丝袜| 欧美少妇xxx| 亚洲美女视频在线观看| 99久久99久久精品国产片果冻| 日本一区二区三区四区| 国内国产精品久久|