Add uartPutLine() function

This commit is contained in:
Lexi / Zoe 2021-04-16 20:31:25 +02:00
parent cf5784f6bc
commit 10111979a8
Signed by: binaryDiv
GPG key ID: F8D4956E224DA232
5 changed files with 28 additions and 15 deletions

View file

@ -36,29 +36,29 @@ void executeCommand(CommandLine cmdLine) {
}
else {
// unknown command: return error message
uartPutString("ERR invalid command\r\n");
uartPutLine("ERR invalid command");
}
}
void commandInit() {
// TODO init... or something?
uartPutString("OK\n");
uartPutLine("OK");
}
void commandRead(char* arg) {
if (arg == NULL) {
uartPutString("ERR READ needs an address or address range\r\n");
uartPutLine("ERR READ needs an address or address range");
return;
}
// Parse address(es)
AddressRange range = parseAddressRange(arg);
if (!range.isValid) {
uartPutString("ERR invalid address format\r\n");
uartPutLine("ERR invalid address format");
return;
}
uartPutString("OK\n");
uartPutLine("OK");
uint8_t byteBuffer[DATA_BLOCK_SIZE];
DataBuffer buffer = {
@ -83,30 +83,30 @@ void commandRead(char* arg) {
uartPutString(outBuffer);
}
uartPutChar('\n');
uartPutLine(NULL);
} while (buffer.bytes > 0);
}
void commandWrite(char* arg) {
if (arg == NULL) {
uartPutString("ERR WRITE needs a start address\r\n");
uartPutLine("ERR WRITE needs a start address");
return;
}
// Parse address
AddressRange range = parseSingleAddress(arg);
if (!range.isValid) {
uartPutString("ERR invalid address format\r\n");
uartPutLine("ERR invalid address format");
return;
}
// TODO read data from input and write to EEPROM
uartPutString("ERR not implemented\n");
uartPutLine("ERR not implemented");
}
void commandErase() {
// TODO
uartPutString("ERR not implemented\n");
uartPutLine("ERR not implemented");
}
// TESTREAD command: for testing purposes, reads a few bytes and returns them in a human readable format.
@ -128,7 +128,9 @@ void commandTestRead() {
uartPutChar(byte);
uartPutString(" (0x");
uartPutString(outBuffer);
uartPutString(")\r\n");
uartPutString(")");
uartPutLine(NULL);
}
}
@ -154,5 +156,5 @@ void commandTestWrite(char* arg) {
// TODO necessary?
_delay_ms(100);
uartPutString("TESTWRITE success\r\n");
uartPutLine("TESTWRITE success");
}