diff --git a/python/iar_parser/BadBlockMapType.json b/python/iar_parser/BadBlockMapType.json new file mode 100644 index 0000000..1b2b461 --- /dev/null +++ b/python/iar_parser/BadBlockMapType.json @@ -0,0 +1,21 @@ +{ + "name": "BadBlockMapType", + "fields": [ + { + "name": "numBadBlock", + "offset": 0, + "size": 2, + "type": "uint16" + }, + { + "name": "badList", + "offset": 4, + "size": 400, + "array": true, + "count": 100, + "elem_size": 4, + "elem_type": "uint32" + } + ], + "size": 2 +} \ No newline at end of file diff --git a/python/iar_parser/BuffU8Type.json b/python/iar_parser/BuffU8Type.json new file mode 100644 index 0000000..a5fff8d --- /dev/null +++ b/python/iar_parser/BuffU8Type.json @@ -0,0 +1,5 @@ +{ + "name": "BuffU8Type", + "fields": [], + "size": 0 +} \ No newline at end of file diff --git a/python/iar_parser/elf_parser.py b/python/iar_parser/elf_parser.py index 480ce3f..74dc1f7 100644 --- a/python/iar_parser/elf_parser.py +++ b/python/iar_parser/elf_parser.py @@ -308,24 +308,24 @@ if __name__ == "__main__": # usage example: # python elf_parser.py -f "C:\Danila\work\sputnik_test\src\sputnik\Debug\c.out" -t "Snapshot_HK_t" - argparser = argparse.ArgumentParser("elf_parser.py") - - argparser.add_argument('-f', '--elf_file', required=True, - help='specify path to elf-file') - argparser.add_argument('-t', '--struct_name', required=True, - help='specify structure name (\"UART_t\" for example') - argparser.add_argument('-o', '--out_path', required=True, - help='specify out path with map data file in json format (\"C:/data/\" for example)') - - args = argparser.parse_args() + # argparser = argparse.ArgumentParser("elf_parser.py") + # + # argparser.add_argument('-f', '--elf_file', required=True, + # help='specify path to elf-file') + # argparser.add_argument('-t', '--struct_name', required=True, + # help='specify structure name (\"UART_t\" for example') + # argparser.add_argument('-o', '--out_path', required=True, + # help='specify out path with map data file in json format (\"C:/data/\" for example)') + # + # args = argparser.parse_args() try: - # elf_file = "C:\Danila\work\sputnik_test\src\sputnik\Debug\c.out" - # struct_name = "NANDctrlOper_t" - # out_path = "./" - # parser = DWARFstructParser(elf_file, struct_name, out_path) + elf_file = "C:/Danila/work/1892VM12/boot2/MultiCore_Configuration_Debug/boot2.elf" + struct_name = "BuffU8Type" + out_path = "./" + parser = DWARFstructParser(elf_file, struct_name, out_path) - parser = DWARFstructParser(args.elf_file, args.struct_name, args.out_path) + # parser = DWARFstructParser(args.elf_file, args.struct_name, args.out_path) json_struct = parser.get_struct() parser.save_struct_to_json(json_struct) diff --git a/src/core/logger.cpp b/src/core/logger.cpp index e47ff49..98acd44 100644 --- a/src/core/logger.cpp +++ b/src/core/logger.cpp @@ -16,7 +16,7 @@ void Logger::write(const QString& file, const QString& text) f.close(); } -void Logger::saveTestLog(const QString& filename, const QJsonObject& cfg, +void Logger::saveTestLog(const QString& filename, const QByteArray& rx, const QJsonObject& cfg, bool passed, QString& error, QString mismatches) { QString log; @@ -47,6 +47,11 @@ void Logger::saveTestLog(const QString& filename, const QJsonObject& cfg, log += "\n"; } + log += "\n--- FULL LOG ---\n"; + + log += QString::fromUtf8(rx.toHex(' ')); + log += "\n"; + log += "<<>>\n"; write(filename, log); diff --git a/src/core/logger.h b/src/core/logger.h index d6fb300..3eb7bf9 100644 --- a/src/core/logger.h +++ b/src/core/logger.h @@ -18,7 +18,7 @@ public: const QString& error = ""); - static void saveTestLog(const QString& filename, const QJsonObject& cfg, + static void saveTestLog(const QString& filename, const QByteArray &rx, const QJsonObject& cfg, bool passed, QString &error, QString mismatches); static void appendSummary( diff --git a/src/main.cpp b/src/main.cpp index b0bf22e..76db3a6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -13,7 +13,7 @@ int main(int argc, char** argv) { QCoreApplication app(argc, argv); - printf("Embedded test stand. (Version 1.3, 25.05.2026)\n"); + printf("Embedded test stand. (Version 1.4, 29.05.2026)\n"); g_options = CLIParser::parse(argc, argv); diff --git a/src/tests/uart_fixture.cpp b/src/tests/uart_fixture.cpp index 8e3b9a9..457ad4f 100644 --- a/src/tests/uart_fixture.cpp +++ b/src/tests/uart_fixture.cpp @@ -549,7 +549,7 @@ bool UARTFixture::validateBinaryResponse(const QByteArray& rx, const QJsonObject if (!passed) { writeToLog(QString("%1\n%2").arg(err, errMsgMismatch) , false); break; } } - Logger::saveTestLog(logFile, cfg, passed, err, errMsgMismatch); + Logger::saveTestLog(logFile, rx, cfg, passed, err, errMsgMismatch); return true; }