Beispiel #1
0
/**
 * Read a single 16 bits integer
 */
uint16_t Eeprom::readInt(int address)
{
    if (!isReadOk(address + sizeof(uint16_t)))
        return 0;

    return eeprom_read_word((uint16_t *) address);
}
Beispiel #2
0
/**
 * Read a single 32 bits integer
 */
uint32_t Eeprom::readLong(int address)
{
    if (!isReadOk(address + sizeof(uint32_t)))
        return 0;

    return eeprom_read_dword((unsigned long *) address);
}
Beispiel #3
0
/**
 * Read a single byte
 */
uint8_t Eeprom::readByte(int address)
{
    if (!isReadOk(address + sizeof(uint8_t)))
        return 0;

    return eeprom_read_byte((unsigned char *) address);
}
bool EEPROMClassEx::readBit(int address, byte bit) {
	  if (bit> 7) return false;
	  if (!isReadOk(address+sizeof(uint8_t))) return false;
	  byte byteVal =  eeprom_read_byte((unsigned char *) address);
	  byte bytePos = (1 << bit);
      return (byteVal & bytePos);
}
double EEPROMClassEx::readDouble(int address)
{
	if (!isReadOk(address+sizeof(double))) return 0;
	double _value;
	readBlock<double>(address, _value);
	return _value;
}
float EEPROMClassEx::readFloat(int address)
{
	if (!isReadOk(address+sizeof(float))) return 0;
	float _value;
	readBlock<float>(address, _value);
	return _value;
}
Beispiel #7
0
/**
 * Read a single bit
 */
bool Eeprom::readBit(int address, uint8_t bit)
{
      if (bit > 7)
          return false;

      if (!isReadOk(address+sizeof(uint8_t)))
          return false;

      uint8_t byteVal =  eeprom_read_byte((unsigned char *) address);
      uint8_t bytePos = (1 << bit);

      return (byteVal & bytePos);
}
uint16_t EEPROMClassEx::readInt(int address)
{
	if (!isReadOk(address+sizeof(uint16_t))) return 0;
	return eeprom_read_word((unsigned int *) address);
}