de:doc:tools
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
de:doc:tools [2013/11/24 22:03] – created wsauer | de:doc:tools [2014/03/29 05:12] (current) – removed admin | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Die OOBD Hilfsmittel ====== | ||
- | Während man die OOBD Scripte prepariert, gibt es verschiedenste Daten die transformiert werden müssen, um innerhalb von OOBD benutzbar zu sein. Um dies einfacher zu gestalten, gibt es einige Hilfmittel die diesen Zweck erfüllen. Hier wird erklärt welche das sind, für was sie gut sind und wie man sie benutzt. | ||
- | |||
- | ===== Cortex_CRC32 ===== | ||
- | Die Firmware auf dem CAN-Invader kann im Arbeitsumfeld mittels Bluetooth-Schnittstelle neu programmiert werden. Das ist aber etwas gefährlich, | ||
- | |||
- | Wir haben dies gemacht, in dem wir den Bootloader in die Lage versetzt haben, herauszufinden ob das Gerät valide Firmware enthält oder nicht. Wenn sie valide ist startet der Bootloader die Firmware bis zum Abschluss des Programmiervorgangs. Ist sie nicht valide springt der Bootloader in die Programmierroutine und wartet darauf das die korrekte Firmware ankommt. | ||
- | |||
- | Um dies abzuspeichern, | ||
- | |||
- | |||
- | ===== OLP - Der OOBD Lua Präprozessor ===== | ||
- | |||
- | In opposite to most other Lua implementations OOBD does not use the ASCII source code directly, for performance reason it loads precompiled Lua files instead. | ||
- | |||
- | These precompiled files are generated by the luac compiler, which is part of the lua package. But this luac compiler has one big disadvantage, | ||
- | |||
- | To automate this, olp was written. It just reads the initial source file, identifies the dofile() commands in it, reads also recursively the files to include and finally writes the whole source tree as one single text to stdout, where it can be picked up by the luac compiler and compiled to a single binary, containing all dependencies. | ||
- | |||
- | |||
- | |||
- | ===== OpenDiagX - The ODX Transformer ===== | ||
- | Thanks to the efforts of the [[http:// | ||
- | |||
- | |||
- | But to use these information in OOBD or other tools, it's nessesary to transform these ODX syntax into a format which is understood by the tools. | ||
- | |||
- | This is what OpenDiagX do. Honestly OpenDiagX is nothing more as a simple [[http:// | ||
- | |||
- | |||
- | The software is available in two variants: OpenDiagXGUI and OpenDiagXCL. The GUI version is mainly for testing purposes, while the CL (Command Line) is made to use in batch or make files. Both programs do basically the same, so we have a very short look into the command line syntax | ||
- | |||
- | opendiagxcl input-xslt-file output-xslt-file inputfile outputfile | ||
- | |||
- | and look deeper into the GUI variant, as this explains it all: | ||
- | |||
- | {{: | ||
- | |||
- | |||
- | When the program is started, it first scans its two subfolders " | ||
- | |||
- | Then the user chooses the " | ||
- | |||
- | Then the following sequence starts: | ||
- | |||
- | - The input file is loaded. It must be a valid XML file | ||
- | - The input is transformed via XSLT using the transformation rules given by the selected " | ||
- | - After that OpenDiagX goes though the internal file representation and makes it's own format out of it. Also this internal format is an XML tree | ||
- | - Finally this internal XML is transformed via the " | ||
- | - From there the result can be saved as file. | ||
- | |||
- | |||
- | When using the output format " | ||
- | |||
- | Also the input format " | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ===== Filelist.vbs ===== | ||
- | |||
- | This little utility is used to generate a list of files in a directory in a makefile compatible format. | ||
- | |||
- | It's called as vbs script via | ||
- | |||
- | cscript filelist.vbs directory_to_scan Prefix1 fileext1 [Prefix2 fileext2] > outputfile.txt | ||
- | | ||
- | But let's take an example - having a directory content like this | ||
- | |||
- | < | ||
- | script1.lua | ||
- | spec1.mdx | ||
- | spec2.mdx | ||
- | script2.lua | ||
- | spec3.mdx | ||
- | somethingelse.foo | ||
- | </ | ||
- | |||
- | then the call | ||
- | |||
- | cscript filelist.vbs . " | ||
- | | ||
- | would generate the following file output text: | ||
- | < | ||
- | SOURCES= script1.lua script2.lua | ||
- | SPECS= spec1.mdx spec2.mdx spec3.mdx | ||
- | </ | ||
- | |||
- | where this output file can than easily included in e.g. makefiles | ||
- | |||
- | |||
- | ===== OODBCreate - The OOBD Database creator ===== | ||
- | |||
- | OOBD uses an own file format for its key -> value lookup table databases. These files can be generated with [[oodbcreate]]. | ||
- | |||
- | |||
- | ===== OOBDTemple - The OOBD source code template handler ===== | ||
- | |||
- | To allow the easy re- use of common source code structures inside the OOBD firmware, we've made our own tailored source code template tool [[oobdtemple]] |
de/doc/tools.1385327020.txt.gz · Last modified: 2013/11/24 22:03 by wsauer