duanjun0551 发表于 2018-8-13 18:05 #define Relay1 12 #define Relay2 13 #define Relay1_ON() GPIO_OUTPUT_SET(GPIO_ID_PIN(Relay1),1) #define Relay1_OFF() GPIO_OUTPUT_SET(GPIO_ID_PIN(Relay1),0) #define Relay2_ON() GPIO_OUTPUT_SET(GPIO_ID_PIN(Relay2),1) #define Relay2_OFF() GPIO_OUTPUT_SET(GPIO_ID_PIN(Relay2),0) void ICACHE_FLASH_ATTR switchInit(void) { PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U,FUNC_GPIO12); PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTCK_U,FUNC_GPIO13); gpio_output_set(0,0,GPIO_ID_PIN(Relay1)|GPIO_ID_PIN(Relay2),0); os_printf("switchGpioInit \r\n"); } 这样子初始化 |
Jave 发表于 2018-8-9 09:26 定义 #define led_on() PIN_PULLUP_EN(GPIO_OUTPUT_4); //GPIO_OUTPUT_SET(GPIO_ID_PIN(4),1); #define led_off() PIN_PULLUP_DIS(GPIO_OUTPUT_4); //GPIO_OUTPUT_SET(GPIO_ID_PIN(4),0); #define switchon() GPIO_OUTPUT_SET(GPIO_ID_PIN(4),1); #define switchoff() GPIO_OUTPUT_SET(GPIO_ID_PIN(4),0); for(i = 0; i < info->num; i++) { switch(info->event) { case EVENT_inhome_light : currentDataPoint.valueinhome_light = dataPointPtr->valueinhome_light; GIZWITS_LOG("Evt: EVENT_inhome_light %d \n", currentDataPoint.valueinhome_light); if(0x01 == currentDataPoint.valueinhome_light) { //user handle //gpio16_output_set(1); //GPIO_OUTPUT_SET(GPIO_OUTPUT12_FUNC,1); GPIO_OUTPUT_SET(GPIO_ID_PIN(GPIO_OUTPUT_4_NUM), 1); GPIO_OUTPUT_SET(4, 1); GIZWITS_LOG("GPIO-ON\n"); led_on(); switchon(); gpio_output_set(BIT4, 0, BIT4, 0); STA[0]= 1; } else { //user handle //gpio16_output_set(0); //GPIO_OUTPUT_SET(GPIO_OUTPUT12_FUNC,0); GPIO_OUTPUT_SET(GPIO_ID_PIN(GPIO_OUTPUT_4_NUM), 0); GPIO_OUTPUT_SET(4, 0); GIZWITS_LOG("GPIO-OFF\n"); led_off(); switchoff(); gpio_output_set(0, BIT4, BIT4, 0); STA[0]= 0; } break; 初始化代码 PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4); |
duanjun0551 发表于 2018-8-8 18:56 贴上程序看看 |
Seasonic 发表于 2018-8-8 15:16 确实是这个问题,谢谢了 |
需要初始化,请参考RGB的GPIO初始化程序, |
版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )