modemdrv.c

来自「GSM通讯的C语言源程序代码」· C语言 代码 · 共 61 行

C
61
字号
//--------------------------
#define MODEMDRV_GLOBAL
#include "includes.h"
//--------------------------
//-----------------------------------------------------------*/
void ModemInit (void) 
{
	mDataSlot = 0; 
	mEmptySlot = 0;
}
//-----------------------------------------------------------*/
uchar ModemBuffNotEmpty(void)
{
	return !(mDataSlot == mEmptySlot);	
}
//-----------------------------------------------------------*/
uchar Waitfor (uchar  *String)
{
	uchar c = 0;
	uchar Offset = 0;
	while (ModemBuffNotEmpty()) {
		c = ModemGetch ();
		if (c == String [Offset]) { 
			Offset++; 
			if (String [Offset] == 0) { 
				return TRUE; 
			}
		}
		else 
			Offset = 0; 
	}
	return FALSE;
}
/*-------------------------------------------------------------*/
void ProcModemReceive(void)
{
	ModemBuffer[mEmptySlot++] = cData;
	if (mEmptySlot > MODEM_BUFFER_SIZE) {
		mEmptySlot = 0;
	}
}
/*-------------------------------------------------------------*/
uchar ModemGetch (void)
{
	uchar c = 0;
	if (mDataSlot != mEmptySlot) {
		c = ModemBuffer [mDataSlot];
		mDataSlot++;
		if (mDataSlot > MODEM_BUFFER_SIZE) mDataSlot = 0;
		return(c);
	}
	else {
		return(FALSE);
	}
}
/*----------------------------------------------------------*/
void ModemBindBuff(uchar *lpInputBuffer)
{
	ModemBuffer = lpInputBuffer;
}
/*----------------------------------------------------------*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?