Forum: Mikrocontroller und Digitale Elektronik HP-IB und AVR


von Alex W. (a20q90)


Lesenswert?

Hi,

ich hab diverse HP-Komponenten (HP-Rechner; Plotter; Diskettenlaufwerke 
und Kabel) in Verwendung, welche recht gut laufen, aber halt in die 
Jahre gekommen sind. Ich würde gerne mittels AVR einige Komponenten 
ersetzen (z.B. den Plotter um die Druckdaten direkt auf SD-Karte 
ausgeben).

Ich hab mich etwas in den HP-Bus eingelesen und würde gerne mir ne 
Interfacekarte zur Ansteuerung bauen. Der Bus ist ja laut IEC-625 bzw 
IEEE-488 TTL und somit "pinkompatibel" um nen AVR direkt an den Bus zu 
klemmen.

Wichtig wäre mir mal die Floppylaufwerke und die Disketten. Letzteres 
würd ich gerne auslesen und am PC abspeichern für Sicherungszwecke 
(Disketten sind nicht PC-Kompatibel, daher das Auslesen über Umwege) um 
diese später zurückzukopieren (auf neue Disketten).

Ich hab auch ein paar Projekte hier angeschaut, welche sich mit dem GPIB 
(HP-IB kompatibel) beschäftigen. Nur find ich leider nirgends die Info 
(Steuercodes) wie ich z.B. ne Diskette über das HP-Drive (9122) auslese.

Hat jemand ein ähnliches Projekt bzw kann mir jemand helfen?

Grüße und frohe Weihnachten
Alex

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Ich musste letztens für die Schnittstellenkarte eines Messgerätes die 
Firmware neu schreiben, bin da mittlerweile, nach einigen Problemen, 
also gut drin.

Zum IEEE488 gibt es ein gutes Buch, nennt sich einfach "IEC-BUS", Autor 
habe ich gerade nicht im Kopf, habe mein Exemplar gerade verliehen...
Ein wenig findet man auch im "Schnittstellen-Handbuch" von 
J.Elsing/a.Wienncek. DAs gibt es öfter auch mal bei Ebay für 1 eur...
Ansonsten ist auch fast alles bei NI auf den Internetseiten zu finden.

Bei der Umsetzung direkt mnit dem Atmega wirst du aber Probleme 
bekommen. So einfach wie es aussieht ist es nicht!
Zum einen gibt es definierte Aussagen zur erlaubten Belastung des Busses 
und zu minimal möglichen Stromabgabe. Ich bin mir nicht scher ob der 
Atmega das dann so kann.
Aber das ist nur das allerkleinst Problem. ICh würde da einfach, je nach 
deinem Schaltungskonzept, einen Bustreiber wie dem 74H245 vorsehen.

Das Problem liegt in der Tatsache begrpndet das der Bus sich zwar immer 
am langsamsten Gerät orientiert, man theoretisch also fast mit DIP 
schaltern und Tabelle takkern könnte, es aber in der Beschreibung eine 
Zeitkritische Vorschrift gibt!

Es ist spezifiziert das der BUS, welcher ja bi-direktional ist, nach 
erhalt des ATN Steuersignals innerhalb von 200ns reagieren MUSS 
(Antwortzeit). Dies umfasst auch die evtl. Umschaltung des 
Bidirektionalen Datenbusses von Senden auf Empfangen.
Findet diese Antwort zu langsam statt kommt es evtl. zu Fehlfunktionen!
Im Schlimmsten Fall zur Zwerstörung deiner Hardware falls auch die SE 
Umschaltung zu langsam ist, da dann die Treiber zweier Geräte 
gegeneinander Treiben!
Da dieser ATN Befehl jederzeit plötzlich auftreten kann muss man immer 
vom schlechtesten Fall ausgehen, das bedeutet das nach den 200ns bei 
20Mhz Taktfrequenz maximal genau ein befehl abgearbeitet ist.
Im besten Fall ist die CPU also gerade am Kopf der Interruptroutine 
gesprungen. Das kann so also nicht funktionieren.

Daher ist es also alles andere als Trivial!

Es gibt nun drei mögliche Lösungswege:

1. Da eine Atnwortzeit von 200ns bei einführung des IEEE-BUSSES durch 
reine Software absolut Illiusorisch war,  teilweise war 1,xx MHz 
Quarztakt noch die Regel, vom Befehlszyklus ganz zu schweigen..., hat 
man spezielle Controller entwickelt die den ganzen ablauf erledigen. Man 
übergibt nur noch die Daten an den Controller, der übernimmt den ganzen 
Ablauf. (Also zum beispiel das was heute auch Controller wie der 
ENC28J60 für Ehternet machen)
Bei diesen Controllern ist der TEil welcher die Reaktion auf das ATN 
Kommando realisiert als "State Maschine" (LOGIK) auf dem Chip 
integriert, der sonstige Ablauf wird von einem Prozesorkern übernommen.
Diese Controller sind auch heute noch verfügbar und gut dokumentiert. 
Aber recht teuer. Mit etwas Glück aber in auszuschlachtenden IEEE488 
fähigen Geräten zu finden. (Gab nur eine Handvoll Standart-ICs)

2. Du nimmst statt einem Atmega einen IC der Schnell genug ist um das zu 
realisieren. Evtl. könnte das bei sehr effizienter Programmierung ein 
flinker ARM als Beispiel. Wenn das nicht reicht bleibt auch noch der 
Griff zum FPGA!

3. Die dritte Lösung ist diejenige welche auch auf der Steuerkarte 
welche ich bearbeitet habe realisiert war. Es wird einfach der Aufbau 
eines Controllers halbdiskret nachempfunden. Du nimmst einen beliebigen 
µC, zum beispiel irgendeinen AVR, mit genug Ports der die normale 
Programmabarbeitung übernimmt. Das Programm muss aber dann das gesamte 
Protokoll sauber beherrschen. ISt schon etwas Knobellei, aber machbar.
Extern baust du mit Logikgattern dann eine StateMaschine, welche bei 
erhalt eines ATN Signals einmal einen Interrupt im µC auslöst, 
andererseits aber automatisch die Busrichtung umkehrt. Auch das ist 
etwas Tricky da es ja nicht reicht einfach innerhalb von ein paar ns 
z.b. einen 74HC245 umzupolen, dann würden ja CPU und Treiber 
gegeneinander treiben, aber mit Gehirnschmalz machbar. (Mir liegt 
natürlich eine Lösung hier vor, aber mehr darf ICH dazu aber an dieser 
Stelle nicht schreiben das sind dann Interna...Denke aber das die 
Hinweise ausreichen sollten ;-) )

Gruß
Carsten

von Alex W. (a20q90)


Lesenswert?

Hi Carsten,

danke erstmal für Deine Erläuterungen! Klingt interesannt!

Was ich aber nicht verstehe ist, das die Geräte selber nichtmal 8MHz 
haben und mit Leitungslängen von 100m haben dürfen. Ich denke die 200nS 
sind bei denen hier (BJ <1990) wohl weniger kritisch, da bei der Antwort 
von nem Floppy schon mehr als 200nS dauert (oder irre ich mich da?). Ich 
hab in den Gertäten (hab mal nen Floppy zerlegt) nur 74xx595 in Dil. 
Damit wird wohl keine schnelle Umschaltung möglich sein, oder?

Ich könnt doch beim AVR über nen Interrupt den Ausgang zwingen zum 
Eingang zu werden, um ein gegeneinandertreibe zu verhindern. Notfalls 
würde es ein CPLD tun, welcher als "Bustreiber" die Vorlogik übernimmt.

von Carsten S. (dg3ycs)


Lesenswert?

Hi Alex,

KLEINER DENKFEHLER bei dir...
Die 200ns sind seit den 70ern, also bereits seit Einführung des IEEE488 
Busses relevant! Damit ist auch nicht gemeint das eine Antwort bereits 
200ns nach setzen der ATN Leitung beim Master ankommen muss...

Es ist gefordert das 200nS nach Änderung des Pegels der ATN Leitung an 
der jeweiligen Schnittstelle des Devices ein Zustand AN DIESER 
SCHNITTSTELLE hergestellt werden muss der dem  Empfangsstatus 
entspricht. Die Laufzeiten durch Leitungslängen sind somit hier nicht 
relevant...
Es ist war, das insbesondere bei den alten Geräten, kaum (eher kein) ein 
Gerät bereits 200ns später die Befehler verarbeiten könnte. Aber alle 
Geräten haben in dieser Zeit ihre Treiber auf dem Datenbuss und den 
Steuerleitungen (mit ausnahme der OC Treiber auf den Handshake Leitungen 
NRFD und NDAC) abgeschaltet. Egal in welchem Zustand sie sich vorher 
befanden! Und genau das bekommst du in Software mit einem kleinen 
(langsamen) µC wie dem AVR niemals hin.

Dafür nimmt man deshalb dann die Logik... Entweder wirklich mit 74er 
Bausteinen diskret aufgebaut oder halt im CPLD, GAL oder FPGA.
Wenn du mit CPLDs umgehen kannst würde ich doch einfach in diesem einen 
Bidirektionalen Bustreiber, der aber auch einen Tri-State Zustand kennt 
implementiren. Ausserdem noch eine State-Maschine die bei Empfang des 
ATN Signals den Treiber in den TriState Zustand schaltet, den Prozessor 
einem Interrupt mitteilt und dafür sorgt das solange der Prozessor noch 
nicht bereit ist keine Daten ankommen...  (War da nicht was mit NRFD...? 
;-) )
Statt mit einem CPLD kann man das natürlich auch mit Standart 
Logikbausteinen machen, ist nur etwas mehr verdrahtungsaufwand. Das ist 
auch genau das was in den normalen integrierten IEEE488 Controllern 
passiert. Wie gesagt, die haben einen getrennten CPU und Logik-Kern!
JETZT Musst du aber alleine auf den Rest kommen...

Ach ja- mit Logikbausteinen wie den 74xxx595 sind deutlich schnellere 
REaktionen als 200ns möglich!

GRuß
Carsten

P.S.: War die zulässige Leitungslänge wirklich 100m? Ich habe da eher 
etwas mit 15m im Kopf... Bin aber da nicht sicher, die HW Specs waren 
nicht mein Bereich, da die ja bereits bestanden, nur die Firmware hat in 
Verbindung mit HS488 fähigen Geräten ein Problem verursacht... Daher 
habe ich das jetzt nicht so im Kopf - und jetzt auch keine Lust das 
nachzuschlagen...

von Osche R. (Gast)


Lesenswert?

Alex W. schrieb:

> Ich würde gerne mittels AVR einige Komponenten
> ersetzen

Hier ist ein Beispiel für einen GPIB nach USB-Umsetzer: 
http://lpvo.fe.uni-lj.si/gpib/ (guckst Du unter self-build)

Ich habe die Schaltung vor einiger Zeit modenisiert und etwas 
überarbeitet (mit ATmega16 und FT245R), von den Dingern haben wir privat 
und in der Firma ein Dutzend im Einsatz.

Statt des FTDI kannst Du natürlich auch eine SD-Karte oder ein Display 
dranbasteln.


> Ich hab auch ein paar Projekte hier angeschaut, welche sich mit dem GPIB
> (HP-IB kompatibel) beschäftigen. Nur find ich leider nirgends die Info
> (Steuercodes) wie ich z.B. ne Diskette über das HP-Drive (9122) auslese.

Das sind zwei Baustellen. Erstmal musst Du das GPIB-Busprotokoll 
umsetzen. Das ist ein Parallelschnittstelle mit Handshake. Wie 
Druckerport, nur umständlicher. Die physical layer hat TTL-Pegel, kann 
aber deutlich mehr Strom treiben.

Dann brauchst Du den Befehlssatz Deines Gerätes. Das können 
Hexadezimalzahlen sein (die Logikgatter treiben), oder ASCII-Zeichen 
("!0099200000\r", "CF100M;SPAN1M;PLOT\n\r"), die von einen Prozessor 
interpretiert werden. Genormt ist da genau gar nix, auch wenn es mal den 
Versuch einer Standardisierung (IEEE488.2) gab. Damit kannst Du die 
passenden Kommandos abschicken und die Antwort auswerten.


Gruß
Patrick

von Jörg S. (joerg-s)


Lesenswert?

Ich glaube auch nicht das die 200ns kritisch sind. Der Prologic USB-GPIB 
Adapter hat z.B. auch einfach einen ATMega ohne weitere Schnittstellen 
Bausteine drin.
Zur Not baut man sich halt noch einen "echten" Open Collector Ausgang 
mit Transistoren dran, dann kann nichts schlimmes passieren.

Ein AVR Projekt gibt es z.B. hier:
http://www.spurtikus.de/basteln/gpib.html

von Purzel H. (hacky)


Lesenswert?

Das Problem schaut viel entschaerfter aus, wenn man einen Busmaster 
machen muss. Wenn man also dem PC durch einen AVR ersetzen will. Ich bin 
auch in diesem Prozess, aber noch nicht abgeschlossen.

von Carsten S. (dg3ycs)


Lesenswert?

O.. oha Jetzt ! schrieb:
> Das Problem schaut viel entschaerfter aus, wenn man einen Busmaster
> machen muss. Wenn man also dem PC durch einen AVR ersetzen will. Ich bin
> auch in diesem Prozess, aber noch nicht abgeschlossen.

Wenn man sicher ist, das man definitv nur den einen selbstgebauten 
Master im System hat, dann ist das tatsächlich kein Problem. Mann muss 
nur dafür sorgen das man selbst langsam genug ist...

Sobald aber auch nur die Möglichkeit besteht das mehrere Geräte die 
Master-Funktion übernehmen können, sollte man sich tunlichst an die 
Specs halten.
Sonst hat man schneller einen Hardware-Defekt als man denkt. Im besten 
Fall auf seiner eigenen Hardware, den Fehler findet man schnell...
Aber wenn der Treiber im anderen Gerät schneller den Geist aufgibt, dann 
viel Spass. Und das es 1000mal gut geht wenn die zwei Treiber für ein 
paar µS gegeneinader Treiben bedeutet nicht, das es auch das 1001mal 
klappt!

Eine saubere Lösung kostet nicht mal einen Euro an Bauteilen, die man 
selbst beim Elektronikkrämer um die Ecke bekommt, mehr...
Warum also dieser Aufstand und Probleme riskieren?

Gruß
Carsten

von Helmut L. (helmi1)


Lesenswert?

Schau dir mal die Bausteine  75161 / 75162 an.

http://focus.ti.com/lit/ds/symlink/sn75162b.pdf

Die sind dafuer gemacht.

von Ralph B. (rberres)


Lesenswert?

In der Regel ist aber der PC der Master. Und wenn ein anderes Gerät den 
Master spielen will oder soll, muss er entweder explizit von vorne 
herein als Master eingestellt sein ( z.B. als nur Talker ) oder ermuss 
vom Master  ( sprich PC ) dazu aufgefordert werden. Es gibt aber in der 
Praxis kaum Fälle, wo der PC vorübergehend seinen Master an einen 
anderen Busteilnehmer abgibt.

Die 200ns sind in der Tat dann kritisch, wenn mehrere Master auf einem 
Bus beteiligt sind. Bei reinen Talker und Listnerfunktionen gibt das 
langsamste adressierte Gerät den Bustakt an, bis er wieder vom Master 
deadressiert wird.

Es gibt eine Reihe von IEC-Bus Controller ( die aber wohl alle schon 
lange abgekündigt wurden ). Nec upd7210 und Texas Instruments TMS9914 
sind wohl die bekanntesten. Von National Instruments ist wohl ein 
Ersatzchip, welcher gut dokumentiert ist erhältlich. Es nennt sich 
NAT7210 und ersetzt die beiden zuvor genannten Chips. Leider gibt es die 
nur im Pack von 9 Stück zu einen Preis von deutlich über 200 Euro. 
Früher konnte man von National Instruments ein Entwicklungskit mit 2 
Stück erwerben. Aber das Angebot scheint es nicht mehr zu geben.

Die Alternative wäre in der Bucht irgend eine alte Isabus IECbus Karte 
für wenig Geld zu erwerben. Da ist meistens noch der NEc upd7210 darauf 
und auch die Treiber SN75160 und SN75162 die man auch benötigt.

Der Treiber muss einen Strom von 48mA treiben können und hat für die 
Handshakeleitungen zwingend Opencollector und für die Datenleitungen auf 
hochohmig schaltbare Ports. Damit kann man dann 15 Geräte am Bus 
betreiben.
Die maximale zulässige  Länge des gesamten Busses beträgt 20 Meter.
Die Gerätebefehle ( auch Mehrdrahtbefehle genannt sind standarisiert 
IEEE488-1 und später mit den Befehlen *IDN usw IEEE488-2, für die 
Befehle der Teilnehmer hat sich die Sprache SCPI hearauskristallisiert.

Was das HS488 Prodokoll von National Instruments betrifft, ist es ein 
verzweifelter Versuch den IEC Bus noch schneller zu machen in dem es in 
den Dreidraht Handshake eingreift und nicht mehr zwingend wartet bis der 
langsamste seinen Bus geräumt hat. Es hat jedenfalls nur Probleme 
bereitet.



Ralph Berres

von Purzel H. (hacky)


Lesenswert?

>75162

Danke fuer den Tip.
Digikey hat's im Angebot : 2.80$, aber nicht an Lager
Mouser international hat's fuer 5.86$ und an Lager.

von Purzel H. (hacky)


Lesenswert?

Es ist nicht zwingend, dass der PC der Master ist. Ich bin zB an einem 
System, wo wir einen Frequenzzahler haben, den ich mit einem AVR 
auslesen moechte. Da ist kein PC, der das machen wuerde. Zudem moechen 
wir mit dieser Zaehlgroesse einen Prozess steuern... ein AVR ist in 
diesem Fall einfach besser geeignet. Der Zaehler hat leider nur IEEE488.

von Helmut L. (helmi1)


Lesenswert?

75160 (Datentreiber) und 75161 (Steuerleitungstreiber) gibt es bei 
Reichelt.
Den 75162 leider nicht.

Die Teile haben zum Bus hin Opencollector Ausgaenge. Sollte eigentlich 
nix passieren.

von Ralph B. (rberres)


Lesenswert?

O.. oha Jetzt ! schrieb:
> Es ist nicht zwingend, dass der PC der Master ist. Ich bin zB an einem
>
> System, wo wir einen Frequenzzahler haben, den ich mit einem AVR
>
> auslesen moechte. Da ist kein PC, der das machen wuerde.

Dann muss der Zähler aber als only Talker eingestellt werden. Damit wird 
er zum Master. Sonst geht es nicht.

Ralph Berres

von Carsten S. (dg3ycs)


Lesenswert?

Wobei die Diskussion hier im Thread ja nur theoretisch ist...
Denn der TE möchte ja definitiv ein SLAVE Device bauen. Somit sind die 
200ns einzuhalten.

Nur wenn man wie im Beispiel angegeben etwas wie den PC-USB auf IEEE-488 
umsetzer bauen will - und Sicher ist das kein anderes Gerät eine Master 
funktion übernehmen soll, zum beispiel der PC nur als Datenlogger für 
einen als Master funktionierenden Funkmessplatz (ein Anwendungsbeispiel 
hier bei mir)arbeiten soll, dann könnte man auf die 200ns Spec. 
verzichten...
Es sind übrigends definitv NICHT alle Leitungen mit OC Treibern 
bestückt! Das ist nur bei Steuerleitungen der Fall, da daort ja OC als 
einzig funktionierendes Konzept möglich ist, denn immerhin können hier 
bis zu 15 Geräte auf ein Signal zugreifen und nur wenn alle Geräte 
dasselbe Signalisiseren das das Signal gültig sein. (Halt ein 
AND-Verhalten)
Das geht halt nur mit OC... Bei den Datenleitungen haben viele Devices 
kein OC Verhalten beim Senden!

Ach ja, zu dem Tip mit den alten ISA Karten....
ICh habe gerade mal geschaut was bei mir so im Arsenal ist:
Bei einer NI-GPIB-PCIIA Rev.A  (Assy180810-01) befindet sich ein 
NEC7210C sowie jeweils ein DS75160 und DS75162 auf der Karte.

Bei einer NI-GPIB-PCII/IIA- Rev.D  (Assy181065-01) befinden sich zwar 
jeweils ein DS75160 und DS75162 auf der Karte, aber anstelle des NEC une 
deiner Menge Logik Gatter nur ein PLCC Baustein von VLSI solution auf 
der Karte.

Bei einer 488-PC2 Karte Rev-3 von "ICS Electronics Corporation" sind so 
wie bei der ersten NI Karte auch der 7210C und die 75160/75162 verbaut.
Die sonstigen ISA Karten sind momentan alle Verbaut. Und bei den PCI 
karten braucht man gar nicht erst schauen. (Wobei da der PReis sowieso 
uninterressant ist für eine reine Bauteilspende!)

So, jetzt ruft die Familie, weiteres frühestens Morgen!

Gruß
Carsten

von Ralph B. (rberres)


Lesenswert?

Carsten Sch. schrieb:
> Denn der TE möchte ja definitiv ein SLAVE Device bauen. Somit sind die
>
> 200ns einzuhalten

Carsten da irrst du.

Nur wenn die Karte als Master benutzt wird, muss sie die 200nS 
einhalten.
Und auch nur dann wenn das vermurkste HSS488 Prodokoll von National 
Instruments benutzt wird.

ATN ist die Leitung die den angeschlossenen Geräten mitteilt ob ein 
Mehrdrahtbefehl ( IEC-Bus Adresse z.B. ) oder ein Gerätebefehl gesendet 
wird. Der Master nimmt den ATN erst dann zurück, wenn das zu 
adressierende Gerät über die Handshakeleitungen den Mehrdrahtbefehl 
bestätigt hat. Es geht also immer die Richtung von PC ( Master ) in 
Richtung Gerät ( Listner/ Talker ). Erst wenn der PC ( Master ) einen 
anderen Teilnehmer als Master deklarieren will, muss er aufpassen, weil 
dann seinerseits der neue Master die Kontrolle über die ATN Leitung 
übernimmt.

Ralph Berres

von Thomas R. (tinman) Benutzerseite


Lesenswert?

Die NAT9914 gibts gerade beim ebay, habe auch schon welche gekauft für 
den GPIB USB Agilent 82357B clone.

National Instruments hat sehr interessante preise auf der website, mit 
USA in den Landeinstellungen kosten die 9stk 149$, mit Deutschland 
249EUR.
Da hat wohl einer super umgerechnet.

ISA karten mit 7210 gehen natürlich auch, bloss keine "unbekannte" 
geräte wie der Philips 9547 (G) kaufen, da gibts nur grütze drin und 
kein richtiges GPIB controller, siehe:

http://www.eevblog.com/forum/index.php?topic=2025.0

Die bus treiber z.zt. nur über Reichelt verfügbar, den 75161 kann man 
zur 99.9% ohne weiteres als ersatz für 75162 nehmen.

von Osche R. (Gast)


Lesenswert?

Thomas R. schrieb:

> ISA karten mit 7210 gehen natürlich auch, bloss keine "unbekannte"
> geräte wie der Philips 9547 (G) kaufen, da gibts nur grütze drin

Der PM9547 ist ein I2C-to-GPIB - Konverter und gehört zum 
Videosignalgenerator PM5518. Das Ding ist zum schlachten ein bisschen zu 
teuer.

Philips hat den GPIB eigentlich immer mit solchen CMOS-Gräbern 
realisiert. Der PM9696 für die Frequenzzählerserie PM66xx schaut ähnlich 
aus.


Gruß
Patrick



BTW: wer ein PM9696 loswerden will, bitte melden

von Carsten S. (dg3ycs)


Lesenswert?

Ralph Berres schrieb:
> Carsten Sch. schrieb:
>> Denn der TE möchte ja definitiv ein SLAVE Device bauen. Somit sind die
>> 200ns einzuhalten
>
> Carsten da irrst du.
>
> Nur wenn die Karte als Master benutzt wird, muss sie die 200nS
> einhalten.
> Und auch nur dann wenn das vermurkste HSS488 Prodokoll von National
> Instruments benutzt wird.
> ...
>
> Ralph Berres

Nee, Ralph, ich habe da schon recht, der Denkfehler liegt bei dir ;-)

Und das hat auch nix mit dem HS488 Protokoll zu tun, denn die Doku 
welche welche die 200ns vorgibt ist ca. 20Jahre vor dem HS488er 
Protokoll entstanden.
Und es sind einzig und allein diese 200ns, weshalb überhaupt alle welt 
diese IEEE488 Controller einsetzte und auch noch bis heute einsetzt. 
Ohne die 200ns Anforderung hätte es ja ein simpler 8080, 8049,Z80 oder 
was auch immer für weniger als 10% der Kosten getan...

Die Funktion des ATN ist mir schon klar...
Ja, der Master setzt den ATN Befehl, was bedeutet das als nächstes ein 
BEFEHL (ggf. nichtadressiert) übertragen wird.
Dieses Auftreten des ATN Befehls hat höchste Priorität und kann 
JEDERZEIT passieren. Somit kann es eine laufende Datenübertragung 
unterbrechen!

Und die Spec schreibt nun vor, das ein Device, welches einen ATN Befehl 
ERHÄLT 200ns später nicht mehr den Bus treiben darf. Auch wenn es gerade 
im Sendemodus war... Dies- und nur dieses "Nicht mehr treiben", ist das 
kritische. Der Slave macht selber gar nichts mit dem ATN Signal, er 
bekommt es nur und schaltet seine Treiber ab. Ausserdem werden 
unverzüglich die beiden anderen Handshakeleitungen (NDAC und NRFD) 
zurückgesetzt, denn die können ja bis zum erhalt des Befehl ein "Klar" 
Signalisieren. Spätestens 200ns NACH ERHALT dieses Befehls darf das aber 
nicht mehr der Fall sein... Die spätere Abwicklung des Befehls hat gar 
nichts mehr mit den 200ns zu tun und kann (wird!) viel viel langsamer 
erfolgen...

Das der Master aber selbst bestimmt wann er den ATN Befehl setzt ist er 
das einzige Device am Bus für das die 200ns Vorgabe ebend NICHT gilt!

Gruß
Carsten

von Ralph B. (rberres)


Lesenswert?

Carsten Sch. schrieb:
> Und die Spec schreibt nun vor, das ein Device, welches einen ATN Befehl
>
> ERHÄLT 200ns später nicht mehr den Bus treiben darf. Auch wenn es gerade
>
> im Sendemodus war..

1. Sage mir mal in welcher Specification das geschrieben steht.
2. Solange ein Device am senden ist, wird der Master niemals ein ATN 
setzen. Tut er es doch, dann hängt sich zwangsläufig der Bus auf.
Es gibt nicht adressierte Mehrdrahtbefehle. Das setzt aber eben vorraus 
das sämtliche Geräte deadressiert sind. Es gibt Befehle wie parallel 
Poll
und seriel poll, welches durch ATN vom device angekündigt werden. Aber 
auch das setzt vorraus das keine Aktivität auf dem Bus stattfindet. 
Dieses wird wiederum durch den 3 Draht Handshake sichergestellt.

Ich habe ein Gerät von Rohde&Schwarz in welcher überhaupt kein 
Kontroller verbaut ist sondern nur ein IC Grab. Dieser hatte genau den 
Fehler, das im abgeschalteten Gerät das ATN dauernd gesetzt war. Der 
hatte einfach nur den Bus blockiert, ( Geräte konnten nicht adressiert 
werden )und das wars.

Frohe Festtage noch

Ralph Berres

von 900ss (900ss)


Lesenswert?

Patrick S. schrieb:
> Hier ist ein Beispiel für einen GPIB nach USB-Umsetzer:
> http://lpvo.fe.uni-lj.si/gpib/ (guckst Du unter self-build)

Das Ding hab ich auch mal nachgebaut. Ein paar Meßgeräte von HP hier 
haben allesamt damit funktioniert. Obwohl es sicher die 200ns nicht 
einhalten kann.

von Jörg S. (joerg-s)


Lesenswert?

Carsten Sch. schrieb:
> Bei den Datenleitungen haben viele Devices kein OC Verhalten beim Senden!
Und das ist lau Spec erlaubt? Hab ich anders in Erinnerung.

von Carsten S. (dg3ycs)


Lesenswert?

SEUFZ!
Warum glaubt mit keiner...

Ralph Berres schrieb:
> 1. Sage mir mal in welcher Specification das geschrieben steht.
Gerne: ANSI/IEEE Standard 488.1-1987. Wobei es fast sicher auch schon in 
der 1978er Version vorhanden ist, nur liegt mir diese nicht vor...
Leider sind die "Standards" nicht frei im Web verfügbar sondern nur -wie 
viele normen- kostenpflichtig einsehbar...

Da aufgrund der Verwendung von Standart-Schnittstellencontrollern die 
das von sich auch gemacht haben, aber diese kleine -aber feine- Timing 
frage für Hersteller und Bastler irrelevant war hat sich das nicht 
allgemein im Bewusstsein festgesetzt!

Aber es gibt ja trotzdem auch genügend "Second-Source" Quellen die ich 
verlinken kann:
1.
ATN: Attention; When low (true) the system places all devices in Command 
Mode, when high (false) the system places all devices in the Data Mode. 
In Command Mode the Controller passes data to devices, in Data Mode the 
Talker passes data to the Listener. *All device must monitor the ATN 
line and respond within 200nS.*
Zu finden auf: http://www.interfacebus.com/Design_Connector_GPIB.html

2.
Unter "ATN" im Buch: "PC based Instrumentation: Conceps an practice" von 
M. Mathivanan auf Seite 380 oben steht geschrieben:
"All Devices monitor the ATN signal at ALL TIME an response to it 
within 200ns "!
Auszugsweise zu finden unter der Google Buch-Suche auf:
http://books.google.de/books?id=OB65rMNQDo8C&pg=PA400&lpg=PA400&dq=200ns+ieee488&source=bl&ots=CM4XxTGmj8&sig=Z_COHLsKGDVUt2whosOOhbZXXxg&hl=de&ei=4MUVTd__H4Wl8QPKw92CBw&sa=X&oi=book_result&ct=result&resnum=10&ved=0CF4Q6AEwCTgK#v=onepage&q=200%20ns&f=false

3. In dem von HP herausgegebenen "Tutorial Description of the 
Hewlett-Packard Interface Bus" aus dem (glaube) Jahr 1988 steht unter 
Punkt 2.4.3:
"ATN (Attention) *All devlces must monitor ATN at all times and respond 
to it wlthln200 ns.* When true, ATN places the interface ln the "Command 
Mode" whereall devices accept (handshake) data on the Data Lines and 
interpret it as Com-mands or Addresses. When false, ATN places the 
Interface tn the “Data Mode"where the actlve talker sources device 
dependent Data to all active listeners "
Zu finden zum beispiel als PDF hier:
http://www.bitsavers.org/pdf/hp/hpib/TutorialDescrOfHPIB.pdf
Fundstelle ist auf Seite 15, oberes drittel...
*q.e.d.*

Ich hätte noch gut 10 weitere Fundstellen -zum beispiel auch von NI-, 
aber ich glaube dies sollte ausreichen, insbesondere ja selbt ein HP 
eigenes Dokument dabei ist!

> 2. Solange ein Device am senden ist, wird der Master niemals ein ATN
> setzen. Tut er es doch, dann hängt sich zwangsläufig der Bus auf.
> Es gibt nicht adressierte Mehrdrahtbefehle. Das setzt aber eben vorraus
> das sämtliche Geräte deadressiert sind. Es gibt Befehle wie parallel
> Poll und seriel poll, welches durch ATN vom device angekündigt werden.
> Aber auch das setzt vorraus das keine Aktivität auf dem Bus stattfindet.
> Dieses wird wiederum durch den 3 Draht Handshake sichergestellt.

Nee, du liegst immer noch daneben...
ATN wird NUR vom Master gesetzt. Wenn ein Slave also nun sendet, also 
Daten auf dem BUS hat und DAV auf TRUE gesetzt ist, dann darf der Master 
das mit ATN unterbrechen. Daher steht ja auch ganz eindeutig: "All 
devlces must monitor ATN at all times" in den Specs!
Bei deinem Fehler hat aber ein SLAVE die ATN Leitung auf True gezogen 
was den Master daran gehindert hat die Kontrolle über den Bus zu 
übernehmen.
Die ATN Leitung ist bei Geräten die NUR als Slave funktionieren aber 
eigendlich NUR ein Eingang...

900ss D. schrieb:
> Patrick S. schrieb:
>
>> Hier ist ein Beispiel für einen GPIB nach USB-Umsetzer:
>> http://lpvo.fe.uni-lj.si/gpib/ (guckst Du unter self-build)
>
> Das Ding hab ich auch mal nachgebaut. Ein paar Meßgeräte von HP hier
> haben allesamt damit funktioniert. Obwohl es sicher die 200ns nicht
> einhalten kann.
[GENERVT] JA, glaube ich dir- Das Thema hatten wir hier bereits...

Dieses Modul fungiert als MASTER auf dem Bus. Der MASTER sendet aber 
seinerseits das ATN Signal, also muss er nicht selbst darauf reagieren. 
Das müssen die SLAVES. Solange es also sicher -GANZ SICHER- nur EINEN 
Master gibt kann man bei diesem EINEN MASTER auf die Einhaltung der 
200ns verzichten. Natürlich kann man auch wenn man einen eigenen MAster 
baut dann auch bei den Slaves langsamer sein, aber wehe dann kommt ein 
anderer nicht selbst entwickelter MAster der schneller ist... Die ganze 
geschichte ist dann halt nur noch IEEE488 ähnlich und man wundert sich 
in drei Jahren dann auf einmal warum es nicht merh läuft und die 
Schnittstelle des Skopes nun defekt ist... Für nicht einmal 90ct. an 
Bauteilen (reichelt Preis) die man sparen wollte.

Jörg S. schrieb:
> Carsten Sch. schrieb:
>
>> Bei den Datenleitungen haben viele Devices kein OC Verhalten beim
> Senden!
> Und das ist lau Spec erlaubt? Hab ich anders in Erinnerung.
Wie gesagt, die Hardwarebeschreibung war nicht meine Baustelle. Ich 
meine aber trotzdem das das jeweils Sendende Gerät immer den BUS treibt 
und die Empfänger im OC Modus arbeiten.
Bei den Handshakeleitungen war OC Verhalten für die Slaves aber definitv 
vorschrift. Bei den Datenleitungen...? wie gesagt glaube nicht - das 
aber im gegensatz zu den 200ns ohen Gewähr!

Gruß
Carsten

von Ralph B. (rberres)


Lesenswert?

Bei den Datenleitungen sind oft Tristateausgänge. Das ist erlaubt, weil 
immer nur einer Daten auf den Bus legt. Die Handshakeleitungen
NDAV NFRD und NRFD müssen zwingend Open-Collektor sein, weil sie ein 
verdrahtetes Or Gatter darstellen. Sowohl die Daten als auch die anderen 
Leitungen sind negative Logik. Das heist eine logische 1 entspricht 0V 
auf dem Bus und eine logische Null entspricht +5V auf dem Bus.

Sieh mal die Datenblätter vom SN75160, SN75161 und SN75162.

Ralph Berres

von Ralph B. (rberres)


Lesenswert?

Carsten Sch. schrieb:
> dann darf der Master
>
> das mit ATN unterbrechen.


Nee darf er nicht, und kann er auch nicht. Solange Daten auf dem Bus 
sind
muss der Master erst mit DAV antworten, damit der Device seine Daten 
wieder vom Bus nehmen kann. Und obendrein muss der Master erst das EOI 
abwarten, welches mit dem letzten Datum übermittelt wird. Entweder mit 
dem Setzen der Leitung EOI oder durch Senden des CR bzw LF als Daten. 
Erst dann kann er den ATN setzen wieder setzen um dann in diesem Falle 
den Device zu deadressieren.

Ich meine die 200nS beziehen sich darauf, wenn die maximal mögliche 
Busgeschwindigkeit ausgenutzt werden soll.

Man kann ( und das habe ich auch bei einer Fehlersuche schon gemacht ) 
schön mit 16 Kippschalter an den Busleitungen den Datenverkehr inclusive 
Handshake Step by Step durchspielen, und dabei mit einen Logikanalyzer 
oder einen Oszillografen die einzelnen Aktivitäten produkollieren. Da 
habe ich garantiert keine 200ns eingehalten. Sozusagen Einzelsteppmodus.

Ralph Berres

von Osche R. (Gast)


Lesenswert?

Carsten Sch. schrieb:

> "ATN (Attention) *All devlces must monitor ATN at all times and respond
> to it wlthln200 ns.*

Primär gehr's darum, den Bus freizugeben. Das kann man relativ einfach 
über ein paar Gatter und ein Flipflop machen. Um sich das Kommandobyte 
danach genauer anzuschauen, haben die Devices deutlich mehr Zeit. Dann 
kann der Prozessor die Leitungen entsprechend setzen und sich die 
Kontrolle über TE zurückholen.


> ATN wird NUR vom Master gesetzt. Wenn ein Slave also nun sendet, also
> Daten auf dem BUS hat und DAV auf TRUE gesetzt ist, dann darf der Master
> das mit ATN unterbrechen.

So z.B. um eine Druckausgabe abzubrechen. Wobei da nicht wirklich jedes 
Gerät drauf reagiert...


> Bei den Handshakeleitungen war OC Verhalten für die Slaves aber definitv
> vorschrift. Bei den Datenleitungen...? wie gesagt glaube nicht - das
> aber im gegensatz zu den 200ns ohen Gewähr!

Die Datenleitungen sind totem pole. Außer im parallel poll-Betrieb, da 
wird auf open collector geschaltet.

Die 75xxx sind per design kurzschlußfest. Im Datenblatt wird jedoch 
keine thermische Überwachung erwähnt, so daß man sicherstellen muß, daß 
der Kurzschlußstrom den Käfer nicht auf mehr als 70°C erwärmt. Daraus 
folgt, daß ein Kurzschluß immer durch externe Maßnahmen (Software) 
zeitlich begrenzt werden muß.


Gruß
Patrick

von Entwickler (Gast)


Lesenswert?

Es ist lange her, dass ich mit IEEE488 etwas zu tun hatte.
Aber ich meine mich zu erinnern, dass der Bus-Master zu jeder Zeit ATN 
aktivieren darf; sonst wäre er ja nicht Master und könnte auch kein 
Timeout/Bushänger abfangen und beseitigen.

Es reicht meines Erachtens, per FlipFlop die ATN-Aktivierung zu 
registrieren, daraufhin alle Ausgänge auf tristate zu schalten (per 
hardware Gatter) und NRFD zu aktivieren. Ein Interrupt zum µC kann dann 
in Ruhe (per handshake) das Protokoll abarbeiten und das FF für ein 
neues ATN zurücksetzen.

Das würde ich gerne aus Spaß einmal testen, müßte aber zunächst einen 
uralten Rechner mit µPD7210 wieder anwerfen, um die Controller-Funktion 
zu haben. Den Aufwand scheue ich aber :-)

von Ralph B. (rberres)


Lesenswert?

Patrick S. schrieb:
> So z.B. um eine Druckausgabe abzubrechen. Wobei da nicht wirklich jedes
>
> Gerät drauf reagiert...

Da gibt es noch die Leitung IFC Interface clear, REN Remote enable ,
und SRQ Service Request. Mit SRQ kann der Drucker dem Master z.B 
mitteilen das das Papier leer ist oder es zum Papierstau gekommen ist. 
Mit SRQ wird üblicherweise ein Interupt im Hauptprogramm ausgelöst. Man 
kann es aber auch umgekehrt verwenden. Der Master sendet ein SRQ an den 
Drucker mit der Bitte das Drucken abzubrechen. SRQ ist auch beim
Serielpoll eine wichtige Leitung.



Entwickler schrieb:
> Es ist lange her, dass ich mit IEEE488 etwas zu tun hatte.
>
> Aber ich meine mich zu erinnern, dass der Bus-Master zu jeder Zeit ATN
>
> aktivieren darf; sonst wäre er ja nicht Master und könnte auch kein
>
> Timeout/Bushänger abfangen und beseitigen.

Einen Bushänger kann er auch nicht abfangen. Er kann mit einen Timeout 
reagieren und ein Interfaceclear an sämtliche Geräte schicken. Dazu 
braucht er kein ATN.

Ralph Berres

von Unsigned (Gast)


Lesenswert?

Hier http://ieee2iec.t-winkler.net/ dürfte auch schon die ein oder 
andere brauchbare Routine dabei sein.

von Entwickler (Gast)


Lesenswert?

@Ralph Berres

Per IFC? Mad sein, das weiß ich nicht mehr.

Aber wie steht es mit meiner Annahme, auf ATN per Hardware mit NRFD zu 
reagieren. Würde das so funktioniern?
Ich finde meinen Piotrowski nicht mehr. Vor ewigen Zeiten verliehen und 
nicht zurückbekommen :-(

von hbloed (Gast)


Lesenswert?

Hallo Leute!

Für einen Slave gibt es eine super einfach Lösung
8291 von Intel. Der ist zwar seit langem obsolete,
wird aber des öfteren im ebay angeboten. Hab neulich
welche für 2€ gekauft. Ich hätte auch noch ein
Treiberbeispiel dafür, das ist allerdings in PL/M.
Bin gerade dabei das in C umzustricken.

von Ralph B. (rberres)


Lesenswert?

hbloed schrieb:
> Aber wie steht es mit meiner Annahme, auf ATN per Hardware mit NRFD zu
>
> reagieren. Würde das so funktioniern?

Schwierig zu sagen. Der Master darf ja nichts auf den Bus legen solange 
nicht sämtliche Device no rady for Data vom Bus genommen haben.
NRFD ist einer der 3 Handshakeleitungen.

Ich glaube was du vorschlägst ist eine todsichere Methode den Bus zum 
hängen zu bekommen.

Der 8291 ist zum Teil kompatibel zum Nec upd 7210. Aber auch nur fast.

Ich hatte den Versuch mal gemacht den Nec7210 anstelle des 8291 
einzusetzen und auch umgekehrt. In beiden Fälen gab es sporadische 
Hänger , dessen Grund ich nie dahinter gekommen bin.

Ralph Berres

von Carsten S. (dg3ycs)


Lesenswert?

So,

jetzt hat sich zuviel getan um noch in der Zeit bis der Familienwahnsinn 
;-) weitergeht alles sauber auseinanderzufriemeln...

Der Standart IEC625 bzw. IEEE488.1 sagt ganz klar: Eine Reaktion auf ATN 
muss jederzeit und immer erfolgen können!
Und der Master DARF jederzeit ATN setzen. Das eine gerade stattfindende 
übertragung dadurch unterbrochen wird ist fakt, daher sollte man dafür 
Sorge tragen das es nur in Ausnahmefällen geschieht.
Es darf- und kann- aber jederzeit vorkommen.

BTW: Das DAV Signal setzt nicht der MAster, sonder der jeweilige Talker. 
Das muss ebend nicht der Master sein. Kommt aber während des Sendens ein 
ATN muss der Talker SOFORT auf Listener umschalten.

@Patrik S. Was du schreibst habe ich ja schon weiter oben auch 
angedeutet. Per StateMaschine (=Logik) entweder im CPLD oder auch mit 
normalen 74er gattern reagiert man aud das ATN;
Treiber werden automatisch auf TS, High Impedance gesetzt, alle 
Handshakeleitungen zurückgesetzt und die NDAC auf TRUE gelegt. die ganze 
Logik, Treiberanaordung geht intern in einem sicheren Zustand.
Dann erst übernimmt der CPU wieder die Kontrolle, passt seine eigene 
Einstellung den gegebenheitna an, übernimmt wieder die Kontrolle über 
die Schnittstelle und nimmt NDAC zurück um den Befehl zu empfangen.

@Entwickler
Piotrowski! Ok ,der Wars, kam gerade nicht mehr drauf weil mein Buch 
auch verliehen ist. IEC-Bus von Piotrowski, das ist eine gute Lektüre.
Aber NDAC ist das Signal der Wahl, nicht NRFD ;-)

Gruß
Carsten

von Entwickler (Gast)


Lesenswert?

>Aber NDAC ist das Signal der Wahl, nicht NRFD ;-)

Gut zu wissen!
Und anschließend kann der µC FF und Gatter wieder zurücksetzen, was mit 
heutigen Controllern doch eigentlich ein Klacks ist.
Aber auf gute Treiberbausteine und gute Kabel würde ich nicht 
verzichten. Mit Rechnern von Commodore mit ihren VIAs und PIAs konnte 
man noch Flachbandkabel verwenden. Aber sobald ein schneller Controller 
im Spiel war, blieb der Bus oft hängen (Übersprechen, Reflexionen).

Eine andere Frage ist aber, ob es in der heutigen Zeit nicht doch bloß 
eine Liebhaberei ist, sich den IEC-Bus flott zu machen.

von hbloed (Gast)


Lesenswert?

Hallo!

Ich wollte ja hier mal so ein Gateway entwickeln 
(Ethernet,CANOpen,RS232,IEEEE488), das ist aber von
der Helikopterfraktion zerredet worden.

"Beitrag "Ethernet auf IEEE-488 Gateway";

Da bin ich noch kräftig am werkeln. Ich hatte schon einen
Steckbrettaufbau fertig und konnte diverse HP-Geräte damit
bedienen. Ich habe solche HPIB-Extender von HP, die zicken
noch. Z.zt. arbeite ich am TCPIP-Stack und am CANOpen - Interface.

Demnächst werde ich mal eine Platine machen.

Das ganze ist ein AT90CAN-128 mit SN7516Xer Treibern.

Ich werde das ganze aber nicht über dieses Forum laufen
lassen, weil es hier zuviele von diesen Helikoptertypen
gibt. Wer will kann gerne mitmachen.

MfG
Edgar

von Ralph B. (rberres)


Lesenswert?

Entwickler schrieb:
> Eine andere Frage ist aber, ob es in der heutigen Zeit nicht doch bloß
>
> eine Liebhaberei ist, sich den IEC-Bus flott zu machen.

Es gibt eigentlich nur ein von Messgerätehersteller zunehmend benutztes 
Bussystem welches dem IEC Bus ernsthaft Konkurenz machen könnte. das ist 
TCP-IP. USB ist meines Wissens nicht multimasterfähig und ich weis auch 
nicht ob man ihn explizit adressieren kann. Zudem wartet der USB Bus 
nicht auf den langsamsten Teilnehmer bis der Bus frei geräumt ist. RS232 
ist kein Bus sondern eine Punkt zu Punkt Verbindung und dafür sogar 
extrem langsam.

Ich meine der IEC Bus wird speziell in der Messtechnik noch eine ganze 
Weile erhalten bleiben. Die Geschwindigkeit von bis zu 1Mbyte/ Sek ist 
mehr als ausreichend. Ich kenne kein Messgerät was so schnell seine 
Daten loswerden muss. Bildschirminhalte vielleicht noch, aber da reicht 
die Übermittlungszeit auch noch dicke aus.

Der Nachteil dieses Busses ist das er relativ teuer ist. Aber wenn 
Messgeräte in dieser Klasse 1000 Euro und mehr kosten relativiert sich 
das schnell wieder. Mittlerweile bekommt man sowohl die Buskarte für den 
PC als auch die Kabel in der Bucht zu durchaus erschwingliche Preise.

Besonders wenn man noch ältere Messgeräte hat bleibt einen nichts 
anderes übrig als den IEEE488 Bus einzusetzen.

Ralph Berres

von Ralph B. (rberres)


Lesenswert?

Carsten sind die Nec 7210 mittlerweile bei dir eingetroffen?

Ralph Berres

von Carsten S. (dg3ycs)


Lesenswert?

Hallo Ralph,

Ralph Berres schrieb:
> Carsten sind die Nec 7210 mittlerweile bei dir eingetroffen?
>
> Ralph Berres

Nee, noch nicht...
Aber angesichts der Tatsache das gestern erst ein DHL Paket, am letzen 
Samstag  von mir aufgegeben worden, in Bayern angekommen ist- Genauso 
wie ein Paket welches ich Dienstag aufgegeben habe und das ebenfalls 
gestern in Duisburg ankam, da denke ich das es noch etwas dauern kann 
;-)

Ich wundere mich gerade immer noch wie so läppische paar cm Schnee, die 
wir hier ja seit etwas über einer Woche haben, so ein Chaos anrichten 
können. (Ok, seit gestern morgen sind es teilweise wirklich für die 
hiesige Gegend ungewöhnliche Höhen von Flächendeckend 30-40cm, bei 
Schneeverwehungen auch deutlich mehr - aber vorher...)

Ich berichte dir dann wenn die da sind. Montag wäre ja passend, dann bin 
ich hier mit meinen Umbauarbeiten incl. Ausmisten im Arbeitszimmer auch 
fertig, könnte dann direkt loslegen.

Gruß
Carsten

von Carsten S. (dg3ycs)


Lesenswert?

Ralph Berres schrieb:
> Es gibt eigentlich nur ein von Messgerätehersteller zunehmend benutztes
> Bussystem welches dem IEC Bus ernsthaft Konkurenz machen könnte. das ist
> TCP-IP. USB ist meines Wissens nicht multimasterfähig und ich weis auch
> nicht ob man ihn explizit adressieren kann. Zudem wartet der USB Bus
> nicht auf den langsamsten Teilnehmer bis der Bus frei geräumt ist. RS232
> ist kein Bus sondern eine Punkt zu Punkt Verbindung und dafür sogar
> extrem langsam.

USB ist in der tat nicht Multimaster fähig, aber das ist das kleinste 
Problem. Was den USB Bus als vollwertigen ersatz des IEEE488 Busses 
völlig disqualifiziert ist die fehlende Echtzeitfähigkeit!
Weder kann ein Device genau zu einem Ereigniss ein Signal von sich aus 
Auslösen, noch kann GLEICHZEITIG eine Nachricht an mehrere Teilnehmer 
gesendet werden. (Zum Beispiel ein Triggersignal)

Gerade diese Möglichkeit war -und ist es- aber die IEEE488 zur 
Verkopplung von Messtechnik so wertvoll gemacht hat.
Die reine sequentielle Datenübertragung bzw. Einzelfernsteuerung wie die 
meisten Hobbyisten nur einsetzen könnten auch "tausend" andere 
Schnittstellen... Da wo es drum geht verschiedene Messgeräte eine 
Messung genau gleichzeitig beginnen zu lassen, da schlägt bis heute 
nichts den GPIB!

Gruß
Carsten

von hbloed (Gast)


Lesenswert?

Carsten Sch. schrieb:
> Gerade diese Möglichkeit war -und ist es- aber die IEEE488 zur
> Verkopplung von Messtechnik so wertvoll gemacht hat.
> Die reine sequentielle Datenübertragung bzw. Einzelfernsteuerung wie die
> meisten Hobbyisten nur einsetzen könnten auch "tausend" andere
> Schnittstellen... Da wo es drum geht verschiedene Messgeräte eine
> Messung genau gleichzeitig beginnen zu lassen, da schlägt bis heute
> nichts den GPIB!

Dann geh mal zu:

http://www.hbm.com/en/menu/products/measurement-electronics-software/universal-data-acquisition-systems/quantumx/

Da kannste sehen wie man so etwas heute macht, mit Firewire!

von Thomas R. (tinman) Benutzerseite


Lesenswert?

@hbloed

das ist unsinn, eine eigene produkt familie kann ich mit morse code und 
zwei bambus stäben auch steuern. Hier gehts um ein universelles 
BUS/Protokol wo auch fremdgeräte angeschlossen werden können, da nutzt 
firewire herzlich wenig.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Ich denke mal, dass in Zukunft die Ethernet-basierenden Standards LXI 
und evtl. Ethercat bei Laborgeräten größere Bedeutung bekommen. Von 
Firewire in der Gerätevernetzung hab ich bislang noch nichts gehört.

von Entwickler (Gast)


Lesenswert?

>Der Nachteil dieses Busses ist das er relativ teuer ist.

Ich glaube, das ist der Punkt.
Dicke Kabel, dicke Stecker, viele parallele Leitungen und doch eine 
relativ kurze Reichweite, die nur im Labor akzeptabel ist.

> Carsten sind die Nec 7210 mittlerweile bei dir eingetroffen?

Habe mal in den Keller geschaut, drei davon habe ich auch noch :-) Falls 
jemand die 7210 heute verwenden will, ein kleiner Tipp: bitte den 
Zugriff aufs Statusregister mehrfach nacheinander machen und jeweils in 
ein Zielregister 'odern'. Die Teile waren für 8080er wohl schnell genug, 
mit der "Lesegeschwindigkeit" eines 68k wurden sie schon überrannt.

Ich habe auch noch CBM4040, SFD1001, .... :-)

von Ralph B. (rberres)


Lesenswert?

Entwickler schrieb:
> Ich glaube, das ist der Punkt.
>
> Dicke Kabel, dicke Stecker, viele parallele Leitungen und doch eine
>
> relativ kurze Reichweite, die nur im Labor akzeptabel ist.

Um den Einsatz im Labor und um Fertigungsinseln geht es nun mal. Niemand
wird in einer großen Fertigungsstrasse Stand Alone Messgeräte einsetzen.
Da wird wohl mehr der VMX Bus gefragt sein, bei denen Messgeräte nur 
noch Einschübe ohne eigenes Bedienfeld und Display sind.

Entwickler schrieb:
>> Carsten sind die Nec 7210 mittlerweile bei dir eingetroffen?
>
>
>
> Habe mal in den Keller geschaut, drei davon habe ich auch noch

Falls du die nicht mehr verwenden willst. Ich kann die noch gebrauchen.

Ralph Berres

von Entwickler (Gast)


Lesenswert?

>Falls du die nicht mehr verwenden willst. Ich kann die noch gebrauchen.

Aber gerne doch! Nimm die sechs Buchstaben aus f4ra-q#u(a bei gmxpunkt 
net und gib mir Deine Anschrift. Dann bring ich das morgen zur Post.
Zu Weihnachten schenkt man doch gerne :-)

von Ralph B. (rberres)


Lesenswert?

Entwickler schrieb:
> Aber gerne doch! Nimm die sechs Buchstaben aus f4ra-q#u(a bei gmxpunkt
>
> net und gib mir Deine Anschrift

Meine Mail an dich kam als unzustellbar zurück.

Schreibe mir doch mal unter R-Berres@arcor.de oder rufe mich mal an 
0651-44016

Ralph Berres

von Entwickler (Gast)


Lesenswert?

Sie ist angekommen und ich habe es Dir bestätigt.
Ich denke, jetzt ist alles klar.

von Ralph B. (rberres)


Lesenswert?

Ja besten Dank.

Ralph Berres

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.