RISC-V/V203F6P6/programmer/software/main.cpp
2025-02-04 16:32:08 +01:00

30 lines
745 B
C++

#include <cstdio>
#include <cstdlib>
#include "usart.h"
#include "programmer.h"
int main(int argc, char *argv[]) {
if (argc < 3) {
printf("Usage:\r\t$ %s r|w|v file.bin [numblocks]\n", argv[0]);
return 0;
}
UsartClass usart ("/dev/serial/by-id/usb-Kizarm_Labs._Flash_Programmer_0001-if00", 9600);
Programmer cmd;
cmd += usart;
cmd.Flush();
if (argv[1][0] == 'r') {
long len = 16;
if (argc > 3) {
len = strtol (argv[3], nullptr, 10);
}
cmd.read_flash_binary (argv[2], len);
} else if (argv[1][0] == 'w') {
cmd.write_flash_binary(argv[2]);
} else if (argv[1][0] == 'v') {
cmd.verify_flash_binary(argv[2]);
} else {
printf("bad parameter %s\n", argv[1]);
}
return 0;
}