AVR - Basteleien - Logic-Analyzer MiniLog


Im Laufe der Entwicklung des MiniLog gab es ein paar Veränderungen, die jetzt für etwas Verwirrung und Probleme sorgen.
Ich habe nicht alle Zwischenstände eindeutig dokumetiert, weil es oft Änderungen im Wechselspiel mit Hardwareänderungen gab,
die eben nur einen Tag lebten. ;-)
Hier also der Stand der Dinge, die Unterschiede und wie sie erkennt bzw. anpassen kann.

PC-Software: es gibt nur noch eine Version, die Hardware wird automatisch erkannt.
Die Software meldet sich bei Info mit der Version 1.0, das ist auch die angezeigte Dateiversion.

Probleme macht offenbar der VB-Installer. Ich lege ab sofort die aktuell Minilog.exe noch einzeln zum Download,
man sollte die erstmal einfach starten, wenn andere VB-Programme die nötigen Komponenten schon installiert haben,
muß man nichts weiter installieren.

Neue Versionen betreffen auch nur die MiniLog.exe, die muß dann einfach nur ersetzt werden.
Ich baue da unter Sytem noch einen Punkt "Debug", der erweiterte Fehlermeldungen ausgibt und sich dann auch bei falscher Kennung meldet.

Benutzte Dateiendungen:
.ini enthält die Systemeinstellungen, im Moment nur die Nummer der COM.
.mlp MiniLig-Profil, enthält Kanalnamen, Triggerbedingung, angezeigte Kanäle, Samplerate und Pretrigger
Erspart Einstellungen, wenn man wiedermal am gleichen Objekt messen will, man muß dann nur die Kanäle entsprechend anschließen.

Version mit ATMega48/88:
Erste Version: D0/D1 der Daten an PB4/PB5
Diese Zuordnung hat sich geändert, D0/D1 jetzt an PC0/PC1, die Steuerung der Schieberegister dafür jetzt an PB4/PB5.
Wer nach der ersten Version verdrahtet hat, kann jetzt entweder umlöten oder er benutzt die alte Firmware weiter.
Eindeutig zu erkennen in der Datei Definitionen.inc, am Anfang ist die Liste der Zuordnungen.

Alle anderen Änderungen betreffen nur die Steuerung der Umschaltung Sample/Lesen und des Eingangsbuffers,
die habe sich aber im logischen Verhalten nicht verändert!
Diese Versionen heißen ab sofort MiniLog28 für 28-Pin AVR.

Version mit ATMega16/644:
Hier gibt es eine entscheidende Änderung: das Signal, das die Umschaltung Sample/Lesen steuert, hat seine logische Zuordnung invertiert!
Hier leider nur zu erkennen in der Datei Subroutinen.inc. Die Funktion int_clock_sample suchen.
Dort steht fast Ende entweder
cbi CTRL_PORT,C_SAMPLE ; Mode Lesen
das ist die aktuelle Version, oder
sbi CTRL_PORT,C_SAMPLE ; Mode Lesen
das sind die alten Versionen...
Auch hier entweder umlöten und neue Firmware oder alte behalten.
Diese Versionen heißen ab sofort MiniLog40 für 40-Pin AVR.

Jetzt das eigentlich Problem im Zusammenspiel mit der PC-Software:
In allen älteren Firmwareversionen muß die Kennung angepsßt werden!
In der Datei Tabellen.inc steht gleich am Anfang der Strin mit der Kennung.

text_version:
.db "MiniLog 80MHz Hardware v",HW_VER,".",HW_REV," - Software v",FW_VER,".",FW_REV," - Ram: ",0

Diese Zeile muß genau so aussehen, damit die Hardware von der aktuellen PC-Software erkannt wird!
In den alten Versionen wird die aber leider nicht so erzeugt und dann kommt Hardware nicht erkannt...
Abhilfe, wenn man bei der alten Firmware bleiben will;
.db "MiniLog 80MHz Hardware v0.5 - Software v0.5 - Ram: 4kB",0
eintragen für die Mega644 Version oder
.db "MiniLog 50MHz Hardware v0.5 - Software v0.5 - Ram: 16kB",0
für die Mega88 Version.
Neu assemblieren, flashen, muß sich melden.

Wer die Möglichkeit hat, sollte aber lieber auf die aktuelle Schaltung umbaune und die aktuelle Firm- und Software benutzen.

Grundsätzlich müssen sich alle Versionen mit der aktuellen Software melden wenn der String mit der Kennung stimmt!
Es gibt dann erst beim Samplen Probleme, Kanal0/1 werden falsch angezeigt, Trigger wird nicht erkannt usw.

Wer jetzt schon gelötet hat und den Überblick verloren hat (was mich nicht wundern würde...;)):
Bitte genau den Schaltplan, nach dem verdrahtet wurde, per E-Mail an mich schicken, ich sende dann die angepasste Firmware als Hex-File.

### Änderung: bei der Version für Mega48/88 wird Pin 1 (/G) des 74HC688 mit PB2 des AVR verbunden. ###
Behebt ein Problem mit Triggerwerten, die nur auf H-Pegel triggern.
PC-Software intern umgebaut, kann noch Fehler aufweisen!

Bei Fragen entweder eine E-Mail schicken.

Letzte Änderung am 28.06.2009