?? hal.c
字號:
/*******************************Copyright (c)***************************************
桑海為實業發展有限公司
自 動 化 鋼 琴 研 究 所
http://www.pianoshw.com
E-mail:shw@pianoshw.com
----------------------------------文件信息-------------------------------------------
文 件 名 : HAL.C
創 建 人 : 吳應斌
創 建 日 期: 2004-6-7 9:43
功 能 描 述: SL811硬件提取層
************************************************************************************/
#include <COMMON.H>
#include <HAL.H>
unsigned char xdata SL811H_ADDR _at_ SL811_ADDR_PORT; //定義SL811的地址
unsigned char xdata SL811H_DATA _at_ SL811_DATA_PORT; //定義SL811的數據
extern unsigned char xdata DBUF[BUFFER_LENGTH];
unsigned char SL811Read(unsigned char a)
{
unsigned char nVal;
SL811H_ADDR=a;
nVal=SL811H_DATA;
return nVal;
}
void SL811Write(unsigned char a, unsigned char d)
{
SL811H_ADDR=a;
SL811H_DATA=d;
}
void SL811BufRead(unsigned char addr, unsigned char *s, unsigned char c)
{
unsigned char i;
SL811H_ADDR=addr;
for(i=0;i<c;i++)
{
*s++ =SL811H_DATA;
}
}
void SL811BufWrite(unsigned char addr, unsigned char *s, unsigned char c)
{
SL811H_ADDR=addr;
while(c--)
{
SL811H_DATA = *s++;
}
}
void ComSendByte(unsigned char c)
{
SBUF=c;
while(!TI);
TI=0;
}
void ComErrRsp(unsigned char c)
{
ComSendByte(0xaa);
ComSendByte(0xbb);
ComSendByte(c);
}
unsigned short WordSwap(unsigned short input)
{
return(((input&0x00FF)<<8)|((input&0xFF00)>>8));
}
void DelayMs(unsigned char nFactor)
{
unsigned char i;
unsigned int j;
for(i=0; i<nFactor; i++)
{
MCU_LED2=0;
for(j=0;j<1000;j++)
j=j;
MCU_LED2=1;
}
}
unsigned long SwapINT32(unsigned long dData)
{
dData = (dData&0xFF)<<24|(dData&0xFF00)<<8|(dData&0xFF000000)>>24|(dData&0xFF0000)>>8;
return dData;
}
unsigned int SwapINT16(unsigned int dData)
{
dData = (dData&0xFF00)>>8|(dData&0x00FF)<<8;
return dData;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -