#include <otEEprom.h>
#include <otFPGA.h>
#include <otPrintfLite.h>
#include <otSpi.h>
#include <otSerial.h>
#include <otTimer.h>
void setup()
{
UartEnableSignals(UART0);
UartSetBaud(UART0, 115200);
setStdout(UART0);
FpgaInit();
SpiChannel(SA_EEPROM, 10, 0, 0);
}
void loop()
{
U32 ad;
U8 v;
DelayMs(2000);
SpiSet(SA_EEPROM);
printf("0000 ");
for(ad = 0; ad < 256;)
{
v = EEread(&ad);
printf("%02X ", v);
if((ad % 16) == 0 && ad < 256)
printf("\n%04X ", ad);
}
stdOutLF();
printf("Write EEPROM\n");
for(ad = 0; ad < 256;)
EEwrite(&ad, ad);
printf("Verify EEPROM\n");
printf("0000 ");
for(ad = 0; ad < 256;)
{
v = EEread(&ad);
if(v == (ad - 1))
{
printf("%02X ", v);
if((ad % 16) == 0 && ad < 256)
printf("\n%04X ", ad);
}
else
{
printf("Compare error! Found %02X instead of %02X\n", v, ad);
IDLE;
}
}
stdOutLF();
printf("Erase EEPROM\n");
for(ad = 0; ad < 256;)
EEwrite(&ad, 0xFF);
printf("EEPROM test done.\n");
DelayMs(200);
HIBE;
}