⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tools.c

📁 单片机中常用的工具程序:有内存处理
💻 C
字号:

/********************************************
*文件名称:Tools.c
*
*摘要:
*入口:
*返回:平均值      	
*
*版本:V1.0	2008-9-2 13:10:36
*作者:风月无边
*
*********************************************/
/*******************************************************************/
void MemoryCopy(unsigned short* pDest,unsigned short* pSrc,unsigned short wCountWord)
{
	while(wCountWord--) *pDest++ = *pSrc++;
}

void MemoryMove(unsigned short* pDest,unsigned short* pSrc,unsigned short wCountWord)
{
	pDest += wCountWord;
	pSrc  += wCountWord;
	while(wCountWord--) *pDest-- = *pSrc--;
}

void MemoryClear(unsigned short* pMemory,unsigned short wCountWord)
{
	while(wCountWord--) *pMemory++ = 0;
}

void CopyByteToWord(unsigned short* pDest,unsigned short* pSrc,unsigned short wCountWord)
{
	while(wCountWord--)
	{
		*pDest++ = (*pSrc&0x00ff)+(*(pSrc+1)<<8);
		*pSrc++;
		*pSrc++;
	}
}

void CopyWordToByte(unsigned short* pDest,unsigned short* pSrc,unsigned short wCountWord)
{
	while(wCountWord--)
	{
		*pDest++ = *pSrc&0x00ff;
		*pDest++ = *pSrc>>8;
		*pSrc++;
	}
}

void StringCopy(char* pszDest,char* pszSrc)
{
	while(*pszSrc) *pszDest++ = *pszSrc++;
	*pszDest = 0;
}

unsigned short GetDayOfMonth(unsigned short wYear,unsigned short wMonth)
{
	if(wMonth==1) return 31;
	if(wMonth==2) return (wYear%4==0)?29:28;
	if(wMonth==3) return 31;
	if(wMonth==4) return 30;
	if(wMonth==5) return 31;
	if(wMonth==6) return 30;
	if(wMonth==7) return 31;
	if(wMonth==8) return 31;
	if(wMonth==9) return 30;
	if(wMonth==10) return 31;
	if(wMonth==11) return 30;
	if(wMonth==12) return 31;
	return 31;
}

unsigned short GetMin(unsigned short wData1,unsigned short wData2,unsigned short wData3)
{
	unsigned short wDataMin;
	wDataMin = wData1;
	if(wDataMin>wData2) wDataMin = wData2;
	if(wDataMin>wData3) wDataMin = wData3;
	return wDataMin;
}

unsigned short GetMax(unsigned short wData1,unsigned short wData2,unsigned short wData3)
{
	unsigned short wDataMax;
	wDataMax = wData1;
	if(wDataMax<wData2) wDataMax = wData2;
	if(wDataMax<wData3) wDataMax = wData3;
	return wDataMax;
}

unsigned short GetAddSum(unsigned short* pData,unsigned short wLength)
{
	unsigned short wAddSum;
	wAddSum = 0;
	while(wLength--) wAddSum += *pData++;
	return wAddSum;
}

⌨️ 快捷键说明

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