guggenberger.me

development - desgin - embedded

Experimentieren ist natürlich, die Natur hat ja angefangen.,
© Manfred Hinrich

Neueste Nachrichten

Nachfolgend das die neuesten Beiträge aus den unterschiedlichsten Bereichen. Ich hoffe Ihr habt Spaß.

ESP8266 EEprom löschen

Mit nachfolgendem Code ist ein sicheres Löschen eines EEprom möglich

/********************************************************************************************

                       EEPROM-Cleaner v1.2.0

                       Copyright (c) 2017 Helmut Stult (schinfo)

 ********************************************************************************************/

#include <EEPROM.h>
#include <ESP8266WiFi.h>

// sizeBytes being the number of bytes you want to use.
// It's defined with "#define sizeBytes"
// Size can be anywhere between 4 and 4096 bytes (Default for ESP8266_deauther = 4096)
#define sizeBytes 4096

// change it for lower or higher endByte (Default for ESP8266_deauther = 4096)
// normaly it's the same as sizeBytes
#define endByte 4096

// change it for lower or higher startByte (Default = 0)
#define startByte 0

unsigned long ok = 0;
unsigned long nok = 0;
unsigned long tok = 0;


void setup()
{
  Serial.begin(115200);
  EEPROM.begin(sizeBytes);

  delay(100);

  Serial.println("**********************************************************************************************************");
  Serial.println("");
  Serial.print("    Write a char(255) / hex(FF) from byte ");
  Serial.print(startByte);
  Serial.print(" to ");
  Serial.print(endByte - 1);
  Serial.print(" into the EEPROM with a defined size of ");
  Serial.print("");
  Serial.print(sizeBytes);
  Serial.println(" Bytes");
  Serial.println("");
  Serial.println("**********************************************************************************************************");
  Serial.println("");

  Serial.println("             testing EEPROM for written bytes");
  Serial.println("");

  for (int i = startByte; i < endByte; ++i)
  {
    if (EEPROM.read(i) == 255) {
      ++ok;
    } else {
      ++nok;
    }
  }

  Serial.printf("               empty bytes: %6d\r\n", ok);
  Serial.printf("           not empty bytes: %6d\r\n", nok);
  Serial.println("");
  Serial.println("**********************************************************************************************************");
  Serial.println("");

  Serial.println("**********************************************************************************************************");
  Serial.println("");
  Serial.println("             Start clearing EEPROM... - Please wait!!!");
  Serial.println("");
  Serial.println("**********************************************************************************************************");

  delay(1000);

  // write a char(255) / hex(FF) from startByte until endByte into the EEPROM
  for (int i = startByte; i < endByte; ++i) {
    EEPROM.write(i, -1);
  }

  EEPROM.commit();

  delay(1000);

  Serial.println("");
  Serial.println("             testing EEPROM for clearing");
  Serial.println("");

  String test;
  for (int i = startByte; i < endByte; ++i)
  {
    if (EEPROM.read(i) == 255) {
      ++tok;
    }
  }
  Serial.println("**********************************************************************************************************");
  Serial.println("");
  if (tok = endByte - startByte) {
    Serial.println("             EEPROM killed correctly");
  } else
    Serial.println("             EEPROM not killed - ERROR !!!");

  Serial.println("");
  Serial.println("**********************************************************************************************************");
  Serial.println("");
  Serial.println("             Ready - You can remove your ESP8266 / LoLin");
  Serial.println("");
  Serial.println("**********************************************************************************************************");
}

void loop()
{
}

Quelle 2017 Helmut Stult

AMD Ryzen 9 3950X: Alle passenden X570- und X470-Mainboards zum Marktstart in der Übersicht

Ryzen im Aufstieg

AMD ist mit den Ryzen-Prozessoren der große Wurf gelungen. Die neue Architektur sorgte bereits in der ersten Generation für großes Aufsehen. Erstmals kamen brauchbare acht Kerne in eine Mainstream-Plattform. Das beendete das Zeitalter der Quadcores, auch beim Konkurrenten Intel, der zuvor 10 Jahre lang nur auf vier Kerne in den Topmodellen gesetzt hatte. Das endgültige Resultat war der Intel Core i9-9900K mit ebenfalls acht Kernen. Vor allem beim Takt spielt Intel hier seine stärken aus und hat mit dem i9-9900KS sogar ein Modell mit 5 GHz All Core-Boost im Programm.

Zwei Jahre später hat AMD mit der Ryzen 3000-Generation den ganzen Markt noch einmal nachhaltig revolutioniert und den eigenen Stand gefestigt. Die neuen Prozessoren bringen nicht nur eine deutlich gesteigerte IPC, sondern auch erstmals bis zu 16 Kerne auf einer Mainstream-Plattform. Dazu bringt AMD mit PCIe 4.0 eine Technik in den Mainstream, die Intel noch komplett fehlt. Doch das beste ist, dass selbst die erste Generation an Ryzen-Mainboards weiterhin mit den neuen Prozessoren kompatibel ist. Der generelle Abstand zu Intel ist im Gaming mittlerweile vernachlässigbar, während die Krone in Anwendungen sogar an den neuen Ryzen 9 3950X mit 16 Kernen geht. Die Zukunft für AMD sieht also mehr als rosig aus.

Mehr und Quelle https://bre.is/2SxrtdGV