📄 mst037c_d01_gpio.c
字号:
#include "mreg51.h"
#include "sysinfo.h"
#include "hwreg.h"
#include "drvuart.h"
#include "drvmiu.h"
#include "drvsys.h"
#include "Analog_Reg.h"
#include "drvGlobal.h"
#include "drvISR.h"
#include "drviic.h"
#include <stdio.h>
#include "DrvGpio.h"
//---------------------------------------------------------------------
//---------------------------------------------------------------------
static void EnableLVDS_HS_VS_VE_DE_IsGpio( void ) // HS,VS,Clk,Ve is gpio
{
XBYTE[ODD_IS_GPIO_0] |= 0x0f;
XBYTE[ODD_GPO_SEL_0] |= 0x0f;
XBYTE[ODD_GPO_OEZ_0] =( XBYTE[ODD_GPO_OEZ_0] & 0xf0) | HS_VS_VD_DE_IO_SETTING;
}
//---------------------------------------------------------------------
static void EnableLVDS_B0_B1_IsGpio ( void )
{
XBYTE[REG_SEL_TTL_1] |= 0x08; //bit 3 =0;
XBYTE[ODD_IS_GPIO_3] |= 0x0c; //PAD_b_ODD0/PAD_b_ODD1 is GPIO
XBYTE[ODD_GPO_SEL_3] |= 0x0c; //
//define B0/b1 gpio is output port
XBYTE[ODD_GPO_OEZ_3] = (XBYTE[ODD_GPO_OEZ_3] & 0xf3)| SET_B0_B1_IO_MODE;
}
//---------------------------------------------
static void Initial_ModLvdsGpio( void )
{
EnableLVDS_B0_B1_IsGpio();
EnableLVDS_HS_VS_VE_DE_IsGpio();
}
//------------------------------------------------------
//------------------------------------------------------
static void Initial_UART1_Port(void )
{
//Assign as GPIO
XBYTE[REG_MUX_CONFIG_3] &= ~(SECOND_UART_MODE); //UART1 not enable
XBYTE[REG_MUX_FUNC_SEL1] &= (~CEC_MODE); //XBYTE[0x1ea1] &=0xe7; //disable CEC
XBYTE[REG_P1_ENABLE] &=~(BIT2|BIT1|BIT0);
XBYTE[REG_MUX_FUNC_SEL0] &=0xf3; //atcon_setting=00b
XBYTE[REG_GPIO_OE_0]=BIT0;
}
//---------------------------------------------------------------------
static void Initial_Pin134( void )
{
XBYTE[REG_MUX_FUNC_SEL1] &= (~CEC_MODE);
XBYTE[REG_MUX_FUNC_SEL3]&=(~FLHWE_IS_GPIO);
}
//---------------------------------------------
static void Initial_IR_Port( void )
{
XBYTE[REG_MUX_CONFIG_2] |= IR_PORT_SEL;
XBYTE[REG_MUX_FUNC_SEL2]=(XBYTE[REG_MUX_FUNC_SEL2] & 0x3f )|IRIN_INT_IS_GPIO;
XBYTE[REG_MUX_FUNC_SEL3] &= (~IRIN2_INT2_IS_GPIO);
XBYTE[REG_GPIO_OE_0] &= (~ (BIT4|BIT3) );
}
//---------------------------------------------------------------------
static void Initial_PCI_Port(void) //assign as cardreader
{
XBYTE[REG_MUX_FUNC_SEL0] &= (~ATCON_SETTING);
XBYTE[REG_MUX_CONFIG_4] =(XBYTE[REG_MUX_CONFIG_4] & (~FCIE_CONFIG) )| FCIE_SELECT;
XBYTE[REG_MUX_FUNC_SEL3]&=(~FLHWE_IS_GPIO);
}
//---------------------------------------------
static void Initial_I2S_Port( void )
{
XBYTE[REG_MUX_FUNC_SEL3]&=( ~I2S_IS_GPIO );
XBYTE[REG_MUX_CONFIG_3] = ( XBYTE[REG_MUX_CONFIG_3] & 0x3f ) | I2S_MUTE_MODE_1; //I2sMUTE pin
}
//---------------------------------------------
static void Intial_TS_Port(void) //TS_PORT_IS_TS
{
XBYTE[REG_MUX_CONFIG_0] |= TS0_IS_TS0;
XBYTE[REG_MUX_CONFIG_0] &= ~( TS0_IS_DI );
XBYTE[REG_MUX_FUNC_SEL3]&= ~( TS0_IS_GPIO );
XBYTE[REG_MUX_FUNC_SEL6]&= ~( DHC_DFT_MODE);
XBYTE[REG_MUX_CONFIG_5] &= ~( DSPE_JTAG_MODE );
}
// ---------------------------
//---------------------------------------------------------------------
void Mst_GPIO_Initial( void )
{
Intial_TS_Port();
Initial_I2S_Port();
Initial_PCI_Port();
Initial_IR_Port();
Initial_Pin134();
Initial_ModLvdsGpio();
Initial_UART1_Port();
}
//---------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -