RISC-V/V203F6P6/programmer/main.cpp
2025-02-03 19:18:47 +01:00

32 lines
1 KiB
C++

#include "system.h"
#include "gpio.h"
#include "cdc_class.h"
#include "linkprotocol.h"
#include "helpers.h"
/*********************************************************************************
* Do mluvícího teploměru bylo potřeba nějak dostat data do externí flash.
* Zde je základ programátoru, je to recyklovaný kód, takže zatím to umí jen
* binární soubory do 64KiB, ale patrně nebude problém dopsat to na větší délku.
* Software je dost surový, bez kontrol, prostě jen aby to trochu fungovalo.
**********************************************************************************/
static GpioClass led (GPIOB, 8);
static cdc_class cdc;
static MemoryBase mem;
static CdcCmd cmd;
static LinkProtocol lnk (cmd, mem);
int main () {
led << true;
cdc.init ();
cmd += cdc;
unsigned pass = 0u, command;
for (;;) {
char * res = cmd.GetLine(command);
if (command == 0u) continue;
lnk.ParseLine(res);
pass += 1u;
const bool b = pass & 1u;
led << b;
}
return 0;
}