GPIO初始化
void ICACHE_FLASH_ATTR bluetooth_uart_init() {
hw_timer_init(0, 1);//硬件定时器初始化
hw_timer_set_func(hw_test_timer_cb);
hw_timer_arm(bond);
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4);
PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTMS_U, FUNC_GPIO14);
gpio_output_set(0, BIT14, BIT14, 0); //0
gpio_output_set(BIT4, 0, BIT4, 0); //1
drv_Input_Init();
}
输入中断配置
static void GPIO_ISR_Handler( void )
{
/** 读取GPIO中断状态 */
u32 pin_status = GPIO_REG_READ( GPIO_STATUS_ADDRESS );
/** 关闭GPIO中断 */
ETS_GPIO_INTR_DISABLE();
/** 清除GPIO中断标志 */
GPIO_REG_WRITE( GPIO_STATUS_W1TC_ADDRESS, pin_status );
/** 检测是否已开关输入引脚中断 */
if ( pin_status & BIT( SWITCH_Pin_NUM ) )
{
recive_flag = 1;
}
//uart0_sendStr("I");
/** 开启GPIO中断 */
//ETS_GPIO_INTR_ENABLE();
}
static void drv_Input_Init( void )
{
PIN_FUNC_SELECT( SWITCH