mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Logic Analyser mit SRAM -> weshalb?


Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich bin auf und dran mir einen eigenen LogicAnalyzer zu bauen wie jener 
von Saleae...

Die Software hab ich schon relativ weit... (für 6 Stunden Programmieren)

Sie ist an das Design von Saleae "angelehnt" :)
wens interessiert 
http://darkhedie.bplaced.net/Updates/openlogic/10022.exe

würde mich über ein feedback freuen (ist aber noch lange nicht fertig) 
:)


Aber nun die eigentliche frage... Ich bin auf dieses Projekt gestossen
http://antoniak.ep.com.pl/index.php?id=sla

Ist das SRAM ein so erheblicher Performance vorteil?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:

> Ist das SRAM ein so erheblicher Performance vorteil?

<quote>
connected to PC via RS232 interface,
</quote>
Überleg mal, wie eine RS232 Verbindung wohl deine maximale Samplerate 
beeinflussen wird, wenn du einen gesampelten Wert sofort los werden 
musst, weil du ihn nirgends zwischenspeichern kannst.

Autor: Michael H. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
> wens interessiert
> http://darkhedie.bplaced.net/Updates/openlogic/10022.exe

Ja, würde es.
Aber ne .exe als Anhang? Gehts noch?

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das hab ich mir bereits überlegt...

Ich dachte da an folgendes:

Der Mikrocontroller überprüft so schnell wie er halt kann ob sich am 
Port was geändert hat. Wenn eine Änderung aufgetreten ist (High -> Low / 
Low -> High) so sendet er die Kanalnummer sowie die Zeitmarke per RS232

Somit wären es nur ein paar Zeichen die loszuwerden sind...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
> Ja das hab ich mir bereits überlegt...
>
> Ich dachte da an folgendes:
>
> Der Mikrocontroller überprüft so schnell wie er halt kann ob sich am
> Port was geändert hat. Wenn eine Änderung aufgetreten ist (High -> Low /
> Low -> High) so sendet er die Kanalnummer sowie die Zeitmarke per RS232
>
> Somit wären es nur ein paar Zeichen die loszuwerden sind...

Das beisst sich:
 * so schnell wie er kann
 * nur bei einer Änderung sofort die Änderung aufbereiten und
   wegschicken

Wie kriegst du mit so einem Schema eine konstant zeitliche Abtastung 
hin? Und alles andere ist sinnlos. Wenn dein Analysator dir eine Flanke 
anzeigt und du nicht weißt ob die jetzt nicht auch schon ein paar ms 
früher aufgetreten ist aber nur deshalb später angezeigt wird, weil der 
µC in der fraglichen Zeit gerade mit Übertragen beschäftigt war ... 
welchen Wert hat dann die Anzeige eigentlich noch?
Mit einem immer gleichen Abtastintervall hast du wenigstens eine immer 
gleiche Unsicherheit bei jedem einzelnen Messwert.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:

> Ist das SRAM ein so erheblicher Performance vorteil?

Gegenüber was?

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ja, würde es.
> Aber ne .exe als Anhang? Gehts noch?

Sorry...

so nun hier als Zip :)

http://darkhedie.bplaced.net/Updates/openlogic/OpenLogic.zip

Spätere Updates kann man mittels der integrierten Update Funktion 
beziehen :)

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie kriegst du mit so einem Schema eine konstante zeitliche Abtastung
>hin?

Hmmm

Ok hast recht... mein Gedankenfehler :)

Aber dafür ist das Forum ja da :)


Weiss vielleicht jemand wo man ein oder zwei SRAMS als samples bekommen 
kann?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Der Mikrocontroller überprüft so schnell wie er halt kann
Hört sich irgendwie "unfertig" an... :-o

> Somit wären es nur ein paar Zeichen die loszuwerden sind...
Rechne mal aus, wie schnell die Äderungen dann maximal erfolgen 
dürfen...
> Wenn eine Änderung aufgetreten ist (High -> Low /
> Low -> High) so sendet er die Kanalnummer sowie die Zeitmarke per RS232
Also mindestens zwei Zeichen via RS232, d.h. ein Wechsel am uC darf 
nicht schneller als Baudrate/20 passieren. Eher noch langsamer, denn 
sonst verlierst du den Überblick im Übertragungsprotokoll...

Autor: Marvin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
> so nun hier als Zip :)
>
> http://darkhedie.bplaced.net/Updates/openlogic/OpenLogic.zip
>
> Spätere Updates kann man mittels der integrierten Update Funktion
> beziehen :)
Das ist ein Witz, oder? In dem .zip-File ist nachwievor nur die 
Binaerdatei und die kann sogar Code nachladen. Sehr vertrauenswuerdig... 
Oo.

Gruesse

Marvin

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
>> Ja, würde es.
>> Aber ne .exe als Anhang? Gehts noch?
>
> Sorry...
>
> so nun hier als Zip :)
>
> http://darkhedie.bplaced.net/Updates/openlogic/OpenLogic.zip
>
> Spätere Updates kann man mittels der integrierten Update Funktion
> beziehen :)

Genauer nachgefragt:
Gibt es dafür eine Projektseite, auf der man sich über die grundlegenden 
Parameter des Projekts informieren kann?

Ob du das EXE in einem Zip verpackst oder nicht, ist völlig egal. Ich 
installiere mir nicht irgendein EXE von dem ich nichts weiß.

Autor: Claudio H. (hedie)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Marvin schrieb:
> Das ist ein Witz, oder? In dem .zip-File ist nachwievor nur die
> Binaerdatei und die kann sogar Code nachladen. Sehr vertrauenswuerdig...
> Oo.


Hmmm

Ja wie möchtest du denn das Programm testen?


Ich hab mal ein Screenshot angehängt....

Und hier noch der Virenscan: 
http://www.virustotal.com/de/analisis/cb6013c33cb9...


EDIT:

Es wird nicht installiert... es ist nur die EXE... einfach starten SONST 
NIX

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
> Genauer nachgefragt:
> Gibt es dafür eine Projektseite, auf der man sich über die grundlegenden
> Parameter des Projekts informieren kann?
>
> Ob du das EXE in einem Zip verpackst oder nicht, ist völlig egal. Ich
> installiere mir nicht irgendein EXE von dem ich nichts weiß.

Ja die wird bald erstellt...

Das Projekt ist erst einige Tage alt :)

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
> Marvin schrieb:
>> Das ist ein Witz, oder? In dem .zip-File ist nachwievor nur die
>> Binaerdatei und die kann sogar Code nachladen. Sehr vertrauenswuerdig...
>> Oo.
>
>
> Hmmm
>
> Ja wie möchtest du denn das Programm testen?

Vorher würde ich gerne wissen wollen, ob ich das Programm überhaupt 
testen will :-)

Wo kommen eigentlich die Signale her?
Brauche ich da eine spezielle Schaltung? Wo wird die angesteckt? etc.

(Das nur so als Hinweis, was auf der Projektseite auf jeden Fall 
enthalten sein sollte)

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
> Wo kommen eigentlich die Signale her?
> Brauche ich da eine spezielle Schaltung? Wo wird die angesteckt? etc.

Jiip... Dazu benötigst du eine Schaltung...

Ich werde so wies aussieht PCB's herstellen lassen...
Angeschlossen wird die über USB (USB -> RS232 Adapter von Dealextreme 
für 3Dollar) intern ists jedoch RS232

Es wird ein Attiny2313 verwendet werden...

Hardware ist noch nicht aufgebaut... Hab erstmal die Software 
vorangetrieben.
Diese kann man auch mit eigenen Schaltungen verwenden. Ich werde das 
Protokoll welches ich verwenden werden veröffentlichen

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Claudio Hediger schrieb:
> Karl heinz Buchegger schrieb:
>> Wo kommen eigentlich die Signale her?
>> Brauche ich da eine spezielle Schaltung? Wo wird die angesteckt? etc.
>
> Jiip... Dazu benötigst du eine Schaltung...

Nicht böse sein.
Aber was soll man dann da testen?

Das du auf einen gedrückten Button in einem Windows Programm richtig 
reagieren kannst, glaub ich dir auch so.

Ob so ein Programm gut ist, kann man erst feststellen, wenn es über 
einen nennenswerten Funktionsumfang verfügt und mit meinen 'Daten' 
umgehen kann.

Autor: Manuel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit "Platinen herstellen lassen" würde ich mich glaub auch noch ein 
wenig Zeit nehmen....

Autor: Claudio H. (hedie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
> Nicht böse sein.
> Aber was soll man dann da testen?

Es hat einen test Datensatz enthalten...

Mit testen meinte ich eher... Anordnung der signale, design

Aber ich meld mich sonst nochma wenn ich die software auf nem beta level 
hab :)

Autor: Deneriel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein einfacher LA ist der hier 
Beitrag "8 Kanal 50Ms/s AVR Logic-Analyzer" . Der hat sich die ganzen 
Gedanken incl. Software schon gemacht und es funktioniert bereits. Wenn 
man keinen CPLD will funktioniert auch der Drahtverhau (habe ich auf 
einer Euro-Lochraster nachgebaut).
Wenn du dich unbedingt an Software verlustieren willst kannst du ja ein 
neues Interface oder Analyseroutinen für die bestehende Software 
schreiben.

Alle Lösungen die versuchen den AVR zum samplen einzusetzen kranken 
durchweg am gleichen Problem: Ein AVR ist für den Job zu langsam.

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deneriel schrieb:
> Alle Lösungen die versuchen den AVR zum samplen einzusetzen kranken
> durchweg am gleichen Problem: Ein AVR ist für den Job zu langsam.

Hi,

mal so ins Blaue hinein gerechnet: AVR u.ä. haben zwar nicht die volle 
Quarzfrequenz an ihren Ausgängen, aber als Abtastrate sollte man schon 
etwa die Prozessorfrequenz voraussetzen, um alle Flanken zu erwischen. 
Nehmen wir also 20 MHz und 48 Bit zur parallenen Erfassung, dann sind 
das 120 MByte/s. Allerdings ist nach meiner Erfahrung ein LA ohne 
komplexe Triggerung zu nichts zu gebrauchen, weil man ohne Auswahl der 
interessanten Stellen einfach in Daten ersäuft. M.a.W. der Prozessor 
sollte also mit dieser Geschwindigkeit noch Und/Oder-Verknüpfungen und 
Zähloperationen durchführen können. Mein jahrzehntealter Tektronix 1240 
verarbeitet 40 Kanäle mit 100 MHz und 14 Triggerstufen, das war ok für 
Z80 und Konsorten, aber nicht mehr für moderne Prozessoren.

Man kann jetzt an den Forderungen dies und jenes zusammenstreichen, aber 
wenn man bis auf AVR-Niveau herunterkommt, bleibt kein brauchbares Gerät 
mehr übrig.

Gruss Reinhard

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.