📄 drvgpio.h
字号:
#define GPIO97_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT0)
#define GPIO97_GET() MDrv_ReadRegBit(0x30AA, _BIT0)
#define GPIO98_PAD PAD_LHSYNC
#define GPIO98_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT1)
#define GPIO98_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT1)
#define GPIO98_GET() MDrv_ReadRegBit(0x30AA, _BIT1)
#define GPIO99_PAD PAD_LDE
#define GPIO99_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT2)
#define GPIO99_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT2)
#define GPIO99_GET() MDrv_ReadRegBit(0x30AA, _BIT2)
#define GPIO100_PAD PAD_LCK
#define GPIO100_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT3)
#define GPIO100_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT3)
#define GPIO100_GET() MDrv_ReadRegBit(0x30AA, _BIT3)
#define GPIO101_PAD PAD_R_ODD7
#define GPIO101_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT5)
#define GPIO101_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT5)
#define GPIO101_GET() MDrv_ReadRegBit(0x30AA, _BIT5)
#define GPIO102_PAD PAD_R_ODD6
#define GPIO102_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT4)
#define GPIO102_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT4)
#define GPIO102_GET() MDrv_ReadRegBit(0x30AA, _BIT4)
#define GPIO103_PAD PAD_R_ODD5
#define GPIO103_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT7)
#define GPIO103_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT7)
#define GPIO103_GET() MDrv_ReadRegBit(0x30AA, _BIT7)
#define GPIO104_PAD PAD_R_ODD4
#define GPIO104_DIR(d) MDrv_WriteRegBit(0x30A2, d, _BIT6)
#define GPIO104_SET(v) MDrv_WriteRegBit(0x309E, v, _BIT6)
#define GPIO104_GET() MDrv_ReadRegBit(0x30AA, _BIT6)
#define GPIO105_PAD PAD_R_ODD3
#define GPIO105_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT1)
#define GPIO105_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT1)
#define GPIO105_GET() MDrv_ReadRegBit(0x30AB, _BIT1)
#define GPIO106_PAD PAD_R_ODD2
#define GPIO106_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT0)
#define GPIO106_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT0)
#define GPIO106_GET() MDrv_ReadRegBit(0x30AB, _BIT1)
#define GPIO107_PAD PAD_R_ODD1
#define GPIO107_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT3)
#define GPIO107_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT3)
#define GPIO107_GET() MDrv_ReadRegBit(0x30AB, _BIT3)
#define GPIO108_PAD PAD_R_ODD0
#define GPIO108_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT2)
#define GPIO108_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT2)
#define GPIO108_GET() MDrv_ReadRegBit(0x30AB, _BIT2)
#define GPIO109_PAD PAD_G_ODD7
#define GPIO109_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT5)
#define GPIO109_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT5)
#define GPIO109_GET() MDrv_ReadRegBit(0x30AB, _BIT5)
#define GPIO110_PAD PAD_G_ODD6
#define GPIO110_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT4)
#define GPIO110_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT4)
#define GPIO110_GET() MDrv_ReadRegBit(0x30AB, _BIT4)
#define GPIO111_PAD PAD_G_ODD5
#define GPIO111_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT7)
#define GPIO111_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT7)
#define GPIO111_GET() MDrv_ReadRegBit(0x30AB, _BIT7)
#define GPIO112_PAD PAD_G_ODD4
#define GPIO112_DIR(d) MDrv_WriteRegBit(0x30A3, d, _BIT6)
#define GPIO112_SET(v) MDrv_WriteRegBit(0x309F, v, _BIT6)
#define GPIO112_GET() MDrv_ReadRegBit(0x30AB, _BIT6)
#define GPIO113_PAD PAD_G_ODD3
#define GPIO113_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT1)
#define GPIO113_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT1)
#define GPIO113_GET() MDrv_ReadRegBit(0x30AC, _BIT1)
#define GPIO114_PAD PAD_G_ODD2
#define GPIO114_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT0)
#define GPIO114_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT0)
#define GPIO114_GET() MDrv_ReadRegBit(0x30AC, _BIT0)
#define GPIO115_PAD PAD_G_ODD1
#define GPIO115_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT3)
#define GPIO115_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT3)
#define GPIO115_GET() MDrv_ReadRegBit(0x30AC, _BIT3)
#define GPIO116_PAD PAD_G_ODD0
#define GPIO116_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT2)
#define GPIO116_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT2)
#define GPIO116_GET() MDrv_ReadRegBit(0x30AC, _BIT2)
#define GPIO117_PAD PAD_B_ODD7
#define GPIO117_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT5)
#define GPIO117_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT5)
#define GPIO117_GET() MDrv_ReadRegBit(0x30AC, _BIT5)
#define GPIO118_PAD PAD_B_ODD6
#define GPIO118_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT4)
#define GPIO118_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT4)
#define GPIO118_GET() MDrv_ReadRegBit(0x30AC, _BIT4)
#define GPIO119_PAD PAD_B_ODD5
#define GPIO119_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT7)
#define GPIO119_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT7)
#define GPIO119_GET() MDrv_ReadRegBit(0x30AC, _BIT7)
#define GPIO120_PAD PAD_B_ODD4
#define GPIO120_DIR(d) MDrv_WriteRegBit(0x30A4, d, _BIT6)
#define GPIO120_SET(v) MDrv_WriteRegBit(0x30A0, v, _BIT6)
#define GPIO120_GET() MDrv_ReadRegBit(0x30AC, _BIT6)
#define GPIO121_PAD PAD_B_ODD3
#define GPIO121_DIR(d) MDrv_WriteRegBit(0x30A5, d, _BIT1)
#define GPIO121_SET(v) MDrv_WriteRegBit(0x30A1, v, _BIT1)
#define GPIO121_GET() MDrv_ReadRegBit(0x30AD, _BIT1)
#define GPIO122_PAD PAD_B_ODD2
#define GPIO122_DIR(d) MDrv_WriteRegBit(0x30A5, d, _BIT0)
#define GPIO122_SET(v) MDrv_WriteRegBit(0x30A1, v, _BIT0)
#define GPIO122_GET() MDrv_ReadRegBit(0x30AD, _BIT0)
#define GPIO123_PAD PAD_B_ODD1
#define GPIO123_DIR(d) MDrv_WriteRegBit(0x30A5, d, _BIT3)
#define GPIO123_SET(v) MDrv_WriteRegBit(0x30A1, v, _BIT3)
#define GPIO123_GET() MDrv_ReadRegBit(0x30AD, _BIT3)
#define GPIO124_PAD PAD_B_ODD0
#define GPIO124_DIR(d) MDrv_WriteRegBit(0x30A5, d, _BIT2)
#define GPIO124_SET(v) MDrv_WriteRegBit(0x30A1, v, _BIT2)
#define GPIO124_GET() MDrv_ReadRegBit(0x30AD, _BIT2)
#define GPIO125_PAD PAD_HOTPLUGA
#define GPIO125_DIR(d) MDrv_WriteRegBit(0x25E0, d, _BIT6)
#define GPIO125_SET(v) MDrv_WriteRegBit(0x25E0, v, _BIT4)
#define GPIO125_GET() MDrv_ReadRegBit(0x25E0, _BIT4)
#define GPIO126_PAD PAD_SAR0
#define GPIO126_DIR(d) MDrv_WriteRegBit(0x3A20, d, _BIT0)
#define GPIO126_SET(v) MDrv_WriteRegBit(0x3A21, v, _BIT0)
#define GPIO126_GET() MDrv_ReadRegBit(0x3A24, _BIT0)
#define GPIO127_PAD PAD_SAR1
#define GPIO127_DIR(d) MDrv_WriteRegBit(0x3A20, d, _BIT1)
#define GPIO127_SET(v) MDrv_WriteRegBit(0x3A21, v, _BIT1)
#define GPIO127_GET() MDrv_ReadRegBit(0x3A24, _BIT1)
#define GPIO128_PAD PAD_SAR2
#define GPIO128_DIR(d) MDrv_WriteRegBit(0x3A20, d, _BIT2)
#define GPIO128_SET(v) MDrv_WriteRegBit(0x3A21, v, _BIT2)
#define GPIO128_GET() MDrv_ReadRegBit(0x3A24, _BIT2)
#define GPIO129_PAD PAD_SAR3
#define GPIO129_DIR(d) MDrv_WriteRegBit(0x3A20, d, _BIT3)
#define GPIO129_SET(v) MDrv_WriteRegBit(0x3A21, v, _BIT3)
#define GPIO129_GET() MDrv_ReadRegBit(0x3A24, _BIT3)
//----------------------------------------------------------------------------
// External GPIO from I2C_IO_EXPANDER
//----------------------------------------------------------------------------
#if (I2C_IO_EXPANDER != I2C_IO_EXPANDER_NONE)
#define GPIO_PAD_I2C_IO_EXPANDER_P0_DIR(d) MDrv_ExGPIO_Dir(BIT0, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P0_SET(v) MDrv_ExGPIO_Set(BIT0, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P0_GET() MDrv_ExGPIO_Get(BIT0)
#define GPIO_PAD_I2C_IO_EXPANDER_P1_DIR(d) MDrv_ExGPIO_Dir(BIT1, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P1_SET(v) MDrv_ExGPIO_Set(BIT1, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P1_GET() MDrv_ExGPIO_Get(BIT1)
#define GPIO_PAD_I2C_IO_EXPANDER_P2_DIR(d) MDrv_ExGPIO_Dir(BIT2, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P2_SET(v) MDrv_ExGPIO_Set(BIT2, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P2_GET() MDrv_ExGPIO_Get(BIT2)
#define GPIO_PAD_I2C_IO_EXPANDER_P3_DIR(d) MDrv_ExGPIO_Dir(BIT3, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P3_SET(v) MDrv_ExGPIO_Set(BIT3, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P3_GET() MDrv_ExGPIO_Get(BIT3)
#define GPIO_PAD_I2C_IO_EXPANDER_P4_DIR(d) MDrv_ExGPIO_Dir(BIT4, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P4_SET(v) MDrv_ExGPIO_Set(BIT4, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P4_GET() MDrv_ExGPIO_Get(BIT4)
#define GPIO_PAD_I2C_IO_EXPANDER_P5_DIR(d) MDrv_ExGPIO_Dir(BIT5, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P5_SET(v) MDrv_ExGPIO_Set(BIT5, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P5_GET() MDrv_ExGPIO_Get(BIT5)
#define GPIO_PAD_I2C_IO_EXPANDER_P6_DIR(d) MDrv_ExGPIO_Dir(BIT6, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P6_SET(v) MDrv_ExGPIO_Set(BIT6, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P6_GET() MDrv_ExGPIO_Get(BIT6)
#define GPIO_PAD_I2C_IO_EXPANDER_P7_DIR(d) MDrv_ExGPIO_Dir(BIT7, d)
#define GPIO_PAD_I2C_IO_EXPANDER_P7_SET(v) MDrv_ExGPIO_Set(BIT7, v)
#define GPIO_PAD_I2C_IO_EXPANDER_P7_GET() MDrv_ExGPIO_Get(BIT7)
extern void MDrv_ExGPIO_Init(void);
extern void MDrv_ExGPIO_Dir(U8 u8BitMask, BOOLEAN bIsInput);
extern void MDrv_ExGPIO_Set(U8 u8BitMask, BOOLEAN bHigh);
extern BIT MDrv_ExGPIO_Get(U8 u8BitMask);
#else // !I2C_IO_EXPANDER
#define MDrv_ExGPIO_Init() _FUNC_NOT_USED()
#endif // I2C_IO_EXPANDER
//----------------------------------------------------------------------------
// GPIO dispatcher
//----------------------------------------------------------------------------
#define GPIO_DIR(pin, d) CONCAT(CONCAT(GPIO_PAD_, pin), _DIR)(d)
#define GPIO_SET(pin, v) CONCAT(CONCAT(GPIO_PAD_, pin), _SET)(v)
#define GPIO_GET(pin) CONCAT(CONCAT(GPIO_PAD_, pin), _GET)()
//----------------------------------------------------------------------------
// Multi-SPI Flash
//----------------------------------------------------------------------------
#define SPI_SEL_NONE() MDrv_Write2Byte(REG_CSZ_SPI_FLASH, 0xE001)
#define SPI_SEL_CZ0() MDrv_Write2Byte(REG_CSZ_SPI_FLASH, 0xE000)
#define SPI_SEL_CZ1() MDrv_Write2Byte(REG_CSZ_SPI_FLASH, 0xC001)
#define SPI_SEL_CZ2() MDrv_Write2Byte(REG_CSZ_SPI_FLASH, 0xA001)
#define SPI_SEL_CZ3() MDrv_Write2Byte(REG_CSZ_SPI_FLASH, 0x6001)
#ifdef DRV_GPIO
#define GPIO_EXTERN
#else
#define GPIO_EXTERN extern
#endif
GPIO_EXTERN void Mst_GPIO_Initial(void);
#undef GPIO_EXTERN
#endif /* _DRV_GPIO_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -