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

📄 hal.c

📁 TMS2812实现U盘FAT文件系统C代码
💻 C
字号:
#include	"DSP28_Device.h"

extern unsigned char DBUF[BUFFER_LENGTH];

unsigned char SL811Read(unsigned char a)
{  
	unsigned char nVal;
	SL811_ADDR_PORT=a;
	nVal=SL811_DATA_PORT;
	nVal= nVal & 0xFF;	
	return nVal;
}

void SL811Write(unsigned char a, unsigned char d)
{  
	SL811_ADDR_PORT= a&0xff;
	SL811_DATA_PORT= d&0xff;	
}

void SL811BufRead(unsigned char addr, unsigned char *s, unsigned char c)
{	
	unsigned char i,temp;
	SL811_ADDR_PORT=addr;
	for(i=0;i<c;i++)
		{
		temp = SL811_DATA_PORT;
		temp = temp & 0xFF;
		*s++ = temp;		
		}	
}

void SL811BufWrite(unsigned char addr, unsigned char *s, unsigned char c)
{	
	unsigned char temp;
	
	SL811_ADDR_PORT=addr;
	while (c--) 
		{
		temp=*s++;
		SL811_DATA_PORT = temp & 0xFF;		
		}	
}

unsigned short WordSwap(unsigned short input)
{
	return(((input&0x00FF)<<8)|((input&0xFF00)>>8));
}

void DelayMs(unsigned int nFactor)
{
	unsigned char i;
	unsigned int j;

	for(i=0; i<nFactor; i++)
		{
		for(j=0;j<1000;j++)	j=j;		          
		}
}

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 short dData)
{
    dData = (dData&0xff00)>>8|(dData&0x00ff)<<8;
	return dData;
}

unsigned int LSwapINT16(unsigned short dData1,unsigned short dData2)
{
    unsigned int dData;
    dData = ((dData2<<8)&0xff00)|(dData1&0x00ff);
	return dData;
}

unsigned long LSwapINT32(unsigned long dData1,unsigned long dData2,unsigned long dData3,unsigned long dData4)
{
    unsigned long dData;
    dData = ((dData4<<24)&0xff000000)|((dData3<<16)&0xff0000)|((dData2<<8)&0xff00)|(dData1&0xff);
	return dData;
}


⌨️ 快捷键说明

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