Move EEPROM read/write functions to settings
This commit is contained in:
parent
9fbfde3867
commit
c8e96343d0
4 changed files with 25 additions and 27 deletions
|
@ -1,4 +1,3 @@
|
|||
#include <EEPROM.h>
|
||||
#include <Adafruit_GFX.h>
|
||||
#include <Adafruit_SSD1306.h>
|
||||
#include <Adafruit_MPR121.h>
|
||||
|
@ -365,29 +364,6 @@ void drawMenuCursor(byte itemNo, byte color){
|
|||
|
||||
//***********************************************************
|
||||
|
||||
// TODO: Move these to a settings.cpp maybe?
|
||||
void writeSetting(byte address, unsigned short value){
|
||||
union {
|
||||
byte v[2];
|
||||
unsigned short val;
|
||||
} data;
|
||||
data.val = value;
|
||||
EEPROM.update(address, data.v[0]);
|
||||
EEPROM.update(address+1, data.v[1]);
|
||||
}
|
||||
|
||||
unsigned short readSetting(byte address){
|
||||
union {
|
||||
byte v[2];
|
||||
unsigned short val;
|
||||
} data;
|
||||
data.v[0] = EEPROM.read(address);
|
||||
data.v[1] = EEPROM.read(address+1);
|
||||
return data.val;
|
||||
}
|
||||
|
||||
//***********************************************************
|
||||
|
||||
static int readTrills() {
|
||||
readSwitches();
|
||||
return K5+2*K6+4*K7;
|
||||
|
|
|
@ -41,8 +41,6 @@ void initDisplay();
|
|||
void showVersion();
|
||||
void menu();
|
||||
void drawSensorPixels();
|
||||
unsigned short readSetting(byte address);
|
||||
void writeSetting(byte address, unsigned short value);
|
||||
|
||||
int updateAdjustMenu(uint32_t timeNow, KeyState &input, bool firstRun, bool drawSensor);
|
||||
bool adjustPageUpdate(KeyState &input, uint32_t timeNow);
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include <Arduino.h>
|
||||
#include <EEPROM.h>
|
||||
|
||||
#include "settings.h"
|
||||
#include "globals.h"
|
||||
|
@ -171,4 +172,26 @@ bool readEEPROM() {
|
|||
//Poke at a certain bit in a bit field
|
||||
void setBit(uint16_t &bitfield, const uint8_t pos, const uint16_t value) {
|
||||
bitfield = (bitfield & ~(1<<pos)) | ((value?1:0)<<pos);
|
||||
}
|
||||
|
||||
|
||||
//Read and write EEPROM data
|
||||
void writeSetting(uint16_t address, uint16_t value){
|
||||
union {
|
||||
uint8_t v[2];
|
||||
uint16_t val;
|
||||
} data;
|
||||
data.val = value;
|
||||
EEPROM.update(address, data.v[0]);
|
||||
EEPROM.update(address+1, data.v[1]);
|
||||
}
|
||||
|
||||
uint16_t readSetting(uint16_t address){
|
||||
union {
|
||||
uint8_t v[2];
|
||||
uint16_t val;
|
||||
} data;
|
||||
data.v[0] = EEPROM.read(address);
|
||||
data.v[1] = EEPROM.read(address+1);
|
||||
return data.val;
|
||||
}
|
|
@ -123,6 +123,7 @@
|
|||
|
||||
bool readEEPROM();
|
||||
void setBit(uint16_t &bitfield, const uint8_t pos, const uint16_t value);
|
||||
|
||||
uint16_t readSetting(uint16_t address);
|
||||
void writeSetting(uint16_t address, uint16_t value);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue