Files
smod_atsc_app/atsc_app/inc/igpio.h
T

70 lines
1.8 KiB
C
Executable File

#ifndef _IGPIO_H_
#define _IGPIO_H_
#define SHELL_CTRL_GPIO 0
#define GPIO_NUM_1_5 ((1-1)*32+5)
#define GPIO_NUM_1_1 ((1-1)*32+1)
//key gpio
//GPIO4_IO22 = (4-1)*32+22=118
#define KEY1_GP_NUM 15 //G1-15 = (1-1)*32+15
#define KEY2_GP_NUM 11 //G1-11 = (1-1)*32+11
#define KEY3_GP_NUM 12 //G1-12 = (1-1)*32+12
#define KEY4_GP_NUM 13 //G1-13 = (1-1)*32+13
#define KEY5_GP_NUM 10 //G1-10 = (1-1)*32+10
#define KEY6_GP_NUM 14 //G1-14 = (1-1)*32+14
//lcd gpio
#define LCD_EN_GP_NUM 79 //gpio3_15 ((3-1)*32+15)
#define LCD_CTL_GP_NUM 81 //((3-1)*32+17)
#define LCD_RS_GP_NUM 82
#define LCD_E_GP_NUM 83
#define LCD_RW_GP_NUM 84
#define LCD_D1_GP_NUM 85
#define LCD_D0_GP_NUM 86
#define LCD_D3_GP_NUM 87
#define LCD_D2_GP_NUM 88
#define LCD_D5_GP_NUM 89
#define LCD_D4_GP_NUM 90
#define LCD_D7_GP_NUM 91
#define LCD_D6_GP_NUM 92
#define FPGA_RST_GP_NUM 117 //G4-21 = (4-1)*32+21
//tuner reset gpio
#define TUNER_RST_GP_NUM 3 //gpio1_3 =(1-1)*32+3
//i2c gpio
//GPIO4_IO22 = (4-1)*32+22=118
#define I2C2_SDA_GP_NUM 31 //G1-31
#define I2C2_SCL_GP_NUM 30 //G1-30
#define I2C1_SDA_GP_NUM 29 //G1-29
#define I2C1_SCL_GP_NUM 28 //G1-28
typedef enum{E_IO_L=0,E_IO_H=1}E_IO_VAL;
typedef enum{E_IO_OUT=0,E_IO_IN=1}E_IO;
int set_gpio_export(uint16_t gp_num);
int set_gpio_unexport(uint16_t gp_num);
int set_gpio_io_direct(uint16_t gp_num,E_IO io_dir);
int set_gpio_value(uint16_t gp_num, E_IO_VAL val);
int get_gpio_value(uint16_t gp_num, uint8 *pval);
extern int set_gpio_value_by_shell(uint16_t gp_num, E_IO_VAL val);
extern int get_goio_value_by_shell(uint16_t gp_num, uint8 *pval);
void gpio_mutex_init(void);
void key_gpio_init(void);
void lcd_gpio_init(void);
void i2c_gpio_init(void);
void fpga_reset_gpio_init(void);
#endif//_IGPIO_H_