Minor changes due to IOManager

This commit is contained in:
anschrammh 2019-04-23 08:02:54 +02:00
parent efd4ec5fd5
commit b3bf8d7f0c
2 changed files with 32 additions and 6 deletions

View File

@ -7,10 +7,15 @@ _screenConfig.getHeight(), &Wire),
_screenManager(_display), _rtc(),
_rtcManager(_rtc), _sdCardManager(),
_connectivityManager(NULL),
_webServerManager(80, &_sdCardManager),
_webServerManager(80, &_sdCardManager),
_pcf(0x27, Wire),
_ioManager(_pcf),
_error(0)
{
Serial.begin(9600);
{
//We set the gpio up
initGPIO();
//Serial.begin(9600);
Serial.begin(9600, SERIAL_8N1, SERIAL_TX_ONLY);
delay(200);
//We initialize the pins for the I2C communication
@ -19,6 +24,7 @@ _error(0)
if(!_display.begin(SSD1306_SWITCHCAPVCC, _screenConfig.getAddress())){ _error |= DISP_BEGIN_ERR; }
if(!_sdCardManager.begin(_sdCardConfig.getSPISpeed(), _pinConfig.getSPI_sdCard_cs())){ _error |= SDCARD_INIT_ERR; Serial.print("Failed to init SDCard : SPI_SPEED : "); Serial.print(_sdCardConfig.getSPISpeed()); Serial.print(" CS PIN : "); Serial.println(_pinConfig.getSPI_sdCard_cs());}
_connectivityManager = new ConnectivityManager(&_sdCardManager);
if(!_pcf.begin()){_error |= IO_INIT_ERR;}
}
SAB::SAB(const PinMapping pinConfig, const ScreenConfig screenConfig, const SDCardConfig sdCardConfig, const unsigned int webServerPort) : _pinConfig(pinConfig),
@ -30,18 +36,28 @@ _rtc(),
_rtcManager(_rtc),
_sdCardManager(),
_connectivityManager(NULL),
_webServerManager(webServerPort, &_sdCardManager),
_webServerManager(webServerPort, &_sdCardManager),
_pcf(0x27, Wire),
_ioManager(_pcf),
_error(0)
{
Serial.begin(9600);
//We set the gpio up
initGPIO();
//Serial.begin(9600);
Serial.begin(9600, SERIAL_8N1, SERIAL_TX_ONLY);
delay(200);
//We initialize the pins for the I2C communication
Wire.begin(_pinConfig.getI2C_sda(), _pinConfig.getI2C_scl());
if(!_rtc.begin()) _error |= RTC_BEGIN_ERR;
if(!_display.begin(SSD1306_SWITCHCAPVCC, _screenConfig.getAddress())) _error |= DISP_BEGIN_ERR;
if(!_sdCardManager.begin(_sdCardConfig.getSPISpeed(), _pinConfig.getSPI_sdCard_cs())){ _error |= SDCARD_INIT_ERR; Serial.print("Failed to init SDCard : SPI_SPEED : "); Serial.print(_sdCardConfig.getSPISpeed()); Serial.print(" CS PIN : "); Serial.println(_pinConfig.getSPI_sdCard_cs());}
_connectivityManager = new ConnectivityManager(&_sdCardManager);
if(!_pcf.begin()){_error |= IO_INIT_ERR;}
}
void SAB::initGPIO()
{
pinMode(GPIO_0, INPUT);
}
ScreenManager& SAB::getScreenManager()
@ -69,6 +85,11 @@ WEBServerManager& SAB::getWebServerManager()
return _webServerManager;
}
IOManager& SAB::getIoManager()
{
return _ioManager;
}
ScreenConfig SAB::getScreenConfig() const
{
return _screenConfig;

View File

@ -8,6 +8,7 @@
#include "SDCardManager.h"
#include "ConnectivityManager.h"
#include "WEBServerManager.h"
#include "IOManager.h"
#include <Adafruit_SSD1306.h>
#include <RTClib.h>
#include <SD.h>
@ -27,6 +28,7 @@ class SAB
SDCardManager& getSdCardManager();
ConnectivityManager& getConnectivityManager();
WEBServerManager& getWebServerManager();
IOManager& getIoManager();
ScreenConfig getScreenConfig() const;
PinMapping getPinConfig() const;
SDCardConfig getSdCardConfig() const;
@ -34,6 +36,7 @@ class SAB
PowerInfo getPowerInfo(const unsigned char nbOfMeasures = 5) const;
unsigned char getError() const;
private:
void initGPIO();
const PinMapping _pinConfig;
const ScreenConfig _screenConfig;
const SDCardConfig _sdCardConfig;
@ -45,6 +48,8 @@ class SAB
SDCardManager _sdCardManager;
ConnectivityManager *_connectivityManager;
WEBServerManager _webServerManager;
PCF8574 _pcf;
IOManager _ioManager;
unsigned char _error;
};