Small changes

This commit is contained in:
fvanroie 2020-05-21 23:14:39 +02:00
parent 7ae06e8b6d
commit 22adeb55eb
2 changed files with 24 additions and 25 deletions

View File

@ -16,26 +16,23 @@ uint16_t gpioConfig[HASP_NUM_GPIO_CONFIG];
using namespace ace_button; using namespace ace_button;
static AceButton * button[HASP_NUM_INPUTS]; static AceButton * button[HASP_NUM_INPUTS];
struct hasp_gpio_config_t { struct hasp_gpio_config_t
const uint8_t pin; {
const uint8_t group; const uint8_t pin;
const uint8_t io_mode; const uint8_t group;
bool default_state; const uint8_t io_mode;
bool default_state;
}; };
// An array of button pins, led pins, and the led states. Cannot be const // An array of button pins, led pins, and the led states. Cannot be const
// because ledState is mutable. // because ledState is mutable.
hasp_gpio_config_t gpioConfig2[HASP_NUM_GPIO_CONFIG] = { hasp_gpio_config_t gpioConfig2[HASP_NUM_GPIO_CONFIG] = {
{2, 8, INPUT, LOW}, {2, 8, INPUT, LOW}, {3, 9, OUTPUT, LOW}, {4, 10, INPUT, HIGH}, {5, 11, OUTPUT, LOW}, {6, 12, INPUT, LOW},
{3, 9, OUTPUT, LOW},
{4, 10, INPUT, HIGH},
{5, 11, OUTPUT, LOW},
{6, 12, INPUT, LOW},
}; };
#if defined(ARDUINO_ARCH_ESP32) #if defined(ARDUINO_ARCH_ESP32)
class TouchConfig : public ButtonConfig { class TouchConfig : public ButtonConfig {
public: public:
TouchConfig(); TouchConfig();
protected: protected:
@ -113,10 +110,9 @@ void IRAM_ATTR gpioLoop(void)
} }
} }
void gpioAddButton( uint8_t pin, uint8_t input_mode, uint8_t default_state, uint8_t channel) void gpioAddButton(uint8_t pin, uint8_t input_mode, uint8_t default_state, uint8_t channel)
{ {
uint8_t i; uint8_t i;
for(i = 0; i < HASP_NUM_INPUTS; i++) { for(i = 0; i < HASP_NUM_INPUTS; i++) {
@ -147,7 +143,7 @@ void gpioAddButton( uint8_t pin, uint8_t input_mode, uint8_t default_state, uint
channel, HASP_NUM_INPUTS); channel, HASP_NUM_INPUTS);
} }
void gpioAddTouchButton( uint8_t pin, uint8_t input_mode, uint8_t default_state, uint8_t channel) void gpioAddTouchButton(uint8_t pin, uint8_t input_mode, uint8_t default_state, uint8_t channel)
{ {
uint8_t i; uint8_t i;
for(i = 0; i < HASP_NUM_INPUTS; i++) { for(i = 0; i < HASP_NUM_INPUTS; i++) {
@ -182,22 +178,24 @@ void gpioSetup()
{ {
aceButtonSetup(); aceButtonSetup();
return;
// gpioConfig[0] = PD15 * 256 + 5 + (INPUT << 3); // gpioConfig[0] = PD15 * 256 + 5 + (INPUT << 3);
#if defined(ARDUINO_ARCH_ESP8266) #if defined(ARDUINO_ARCH_ESP8266)
gpioAddButton( D2, INPUT_PULLUP, HIGH, 1); gpioAddButton(D2, INPUT_PULLUP, HIGH, 1);
pinMode(D1, OUTPUT); //pinMode(D1, OUTPUT);
#endif #endif
#if defined(ARDUINO_ARCH_ESP32) #if defined(ARDUINO_ARCH_ESP32)
gpioAddButton( D2, INPUT, HIGH, 1); // gpioAddButton(D2, INPUT, HIGH, 1);
pinMode(D1, OUTPUT); // pinMode(D1, OUTPUT);
#endif #endif
for(uint8_t i = 0; i < HASP_NUM_GPIO_CONFIG; i++) { for(uint8_t i = 0; i < HASP_NUM_GPIO_CONFIG; i++) {
uint8_t pin = (gpioConfig[i] >> 8) & 0xFF; uint8_t pin = (gpioConfig[i] >> 8) & 0xFF;
uint8_t channel = gpioConfig[i] & 0b111; // 3bit uint8_t channel = gpioConfig[i] & 0b111; // 3bit
uint8_t input_mode = (gpioConfig[i] >> 3) & 0b11; // 2bit gpio mode uint8_t input_mode = (gpioConfig[i] >> 3) & 0b11; // 2bit gpio mode
//uint8_t input_mode = gpioConfig[i].io_mode // uint8_t input_mode = gpioConfig[i].io_mode
uint8_t gpiotype = (gpioConfig[i] >> 5) & 0b111; // 3bit uint8_t gpiotype = (gpioConfig[i] >> 5) & 0b111; // 3bit
uint8_t default_state = gpioConfig[i] & 0b1; // 1bit: 0=LOW, 1=HIGH uint8_t default_state = gpioConfig[i] & 0b1; // 1bit: 0=LOW, 1=HIGH
@ -220,7 +218,8 @@ void gpioSetup()
switch(gpiotype) { switch(gpiotype) {
case HASP_GPIO_SWITCH: case HASP_GPIO_SWITCH:
case HASP_GPIO_BUTTON: case HASP_GPIO_BUTTON:
// gpioAddButton(gpioConfig[i].io_mode.pin, input_mode, gpioConfig[i].default_state, gpioConfig[i].group); // gpioAddButton(gpioConfig[i].io_mode.pin, input_mode, gpioConfig[i].default_state,
// gpioConfig[i].group);
break; break;
case HASP_GPIO_RELAY: case HASP_GPIO_RELAY:

View File

@ -45,7 +45,7 @@ char httpUser[32] = "";
char httpPassword[32] = ""; char httpPassword[32] = "";
#define HTTP_PAGE_SIZE (6 * 256) #define HTTP_PAGE_SIZE (6 * 256)
#if defined(STM32F4xx) #if defined(STM32F4xx) && HASP_USE_ETHERNET>0
#include <EthernetWebServer_STM32.h> #include <EthernetWebServer_STM32.h>
EthernetWebServer webServer(80); EthernetWebServer webServer(80);
#endif #endif