Lab_interaccio/2016/SMARTCITIZEN_15/sck11_01_SDCARD/SCKDrivers.h

65 lines
1.8 KiB
C
Raw Normal View History

2025-02-25 21:29:42 +01:00
/*
SCKDrivers.h
Supports core and data management functions (Power, WiFi, SD storage, RTClock and EEPROM storage)
- Modules supported:
- WIFI
- RTC
- EEPROM
- POWER MANAGEMENT IC's
*/
#ifndef __DRIVER_H__
#define __DRIVER_H__
#include <Arduino.h>
class SCKDriver {
public:
void begin();
/*RTC commands*/
char* sckDate(const char* date, const char* time);
boolean RTCadjust(char *time);
boolean RTCtime(char *time);
char* RTCtime();
/*Inputs an outputs control*/
float average(int anaPin);
float getVcc();
int levelRead();
int panelRead();
/*EEPROM commands*/
void writeEEPROM(uint16_t eeaddress, uint8_t data); //Write a byte into the EEPROM
byte readEEPROM(uint16_t eeaddress); //Read a byte from the EEPROM
void writeData(uint32_t eeaddress, long data, uint8_t location); //Write a long into the EEPROM
void writeData(uint32_t eeaddress, uint16_t pos, char* text, uint8_t location); //Write a string into the EEPROM
char* readData(uint16_t eeaddress, uint16_t pos, uint8_t location); //Read a string from the EEPROM
uint32_t readData(uint16_t eeaddress, uint8_t location); //Read a long from the EEPROM
/*WIFI commands*/
void WIFIoff();
/*Charger commands*/
void writeCharge(int current);
float readCharge();
/*Potenciometer*/
void writeResistor(byte deviceaddress, byte address, int data );
void writeResistor(byte resistor, float value );
int readResistor(int deviceaddress, byte address );
float readResistor(byte resistor);
void writeI2C(byte deviceaddress, byte address, byte data );
byte readI2C(int deviceaddress, byte address );
private:
};
#endif