📄 config.c
字号:
/*
**********************************************************************************************
* Project: T8Lib
* File: ezT8.c
* Contents:
* The ezT8 config c file
* for I2c or spi software mode
* $Date: 10/13/05 Michal T8R01LIB v0.1 initial
* $Date: 11/29/05 Michal T8R01LIB v0.2 test finish both 51 and MCF5249
* $Date: 11/30/05 Michal T8R01LIB v0.3 make lib OK on MCF5249
* $Date: 12/01/05 Michal T8R01LIB v0.4 Add HW_IIC ,HW_SPI macro
* $Date: 12/02/05 Michal T8R01LIB v0.5 Add function below
* static void DoXX(BYTE* out ,BYTE* in,BYTE len,BOOL mode)
* static BOOL DoComunication(BYTE* array, BYTE len,BOOL mode)
*
*
* Moidfy some *Cmd Fuction and Reply() function
* $Date: 12/05/05 Michal T8R02LIB v0.1 Add errcode1 to identify T8 off i2c bus state
* $Date: 12/29/05 Michal T8R02LIB v0.2
Modify InitezT8(BOOL mode ) to BOOL InitezT8Lib(BOOL ComMod,BYTE I2cSlvAdr,BOOL I2cIsHigh,BYTE SpiCLkMod,WORD SpiRate,BYTE *key);
void I2c_Init( ); void I2c_Sel( BYTE SlvAdr, BOOL isHigh) to void I2c_Init(BYTE SlvAdr, BOOL isHigh);
void Spi_Init();BOOL Spi_ClkSel(BYTE mode, WORD rate); To void Spi_Init(BYTE mode, WORD rate);
Delete void SpiClkSelOpr(BYTE mode, WORD rate) ;
void I2c_Sel( BYTE SlvAdr, BOOL isHigh);
void SetXXKey(BYTE* key);
* $Date: 12/29/05 Michal T8R02LIB v0.5 test communiction at 400khz speed is OK
* Copyright (c) 2005 Fameg, Inc. All rights reserved
***********************************************************************************************
*/
#include "ezT8.h"
/*#if (SW_IIC||SW_SPI)
void Delay_0_5us(unsigned char cnt)
{
unsigned char ct=50;
while(cnt--)
{
while(ct--)
asm("nop");
ct=50;
}
}
void WritePinSCL(){MBAR2_GPIO_OUT = MBAR2_GPIO_OUT | 0x00000008; }
void ClearPinSCL(){MBAR2_GPIO_OUT = MBAR2_GPIO_OUT & 0xFFFFFFF7;}
void setSDAin(){MBAR2_GPIO1_ENABLE = MBAR2_GPIO1_ENABLE & 0xFF7FFFFF;}
void setSDAout(){MBAR2_GPIO1_ENABLE = MBAR2_GPIO1_ENABLE | 0x00800000;}
void WritePinSDA(){MBAR2_GPIO1_OUT = MBAR2_GPIO1_OUT | 0x00800000;}
void ClearPinSDA(){MBAR2_GPIO1_OUT = MBAR2_GPIO1_OUT & 0xFF7FFFFF;}
BOOL ReadPinSDA(){return((MBAR2_GPIO1_READ & 0x00800000) >> 23);}
void InitReadAck(){MBAR2_GPIO1_ENABLE = MBAR2_GPIO1_ENABLE & 0xFF7FFFFF;}
void WritePinSS_N(){MBAR2_GPIO_OUT = MBAR2_GPIO_OUT | 0x40000000;};
void ClearPinSS_N() {MBAR2_GPIO_OUT = MBAR2_GPIO_OUT & 0xBFFFFFFF;}
// void WritePinSDOUT(b)
// {
// if (b) vSetGpioWriteBit(27) ;
// else vClearGpioWriteBit(27);
// }
BOOL ReadPinSDOUT() { return((MBAR2_GPIO_READ & 0x08000000) >> 27) ; }
#endif*/
BYTE gCnt=0;
extern void vEnableIsrs()
{
EA=1;
}
extern void vDisableIsrs()
{
EA=0;
}
void Delay4_2ms(BYTE nCnt)
{
gCnt=nCnt;
TMOD=0x01;
TH0 = 0xCE;
TL0 = 0xE8;
ET0=1;
EA=1;
TR0=1;
while(gCnt>0) ;
TR0=0;
}
//----------------------------------------------------------------------------
// Timeout every 10 ms
//----------------------------------------------------------------------------
void Timer0() interrupt 1 using 3
{
// Restore the counter to 10 ms
TH0 = 0xCE;
TL0 = 0xE8;
// Inc the system tick
if (gCnt)
gCnt --;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -