Mit Tachyonen und Gold-Chip gegen Handystrahlen...

Gerrit Heitsch <gerrit@laosinh.s.bawue.de> wrote:
Falk Brunner wrote:
Gerrit Heitsch schrieb:

Vor allem weil ein USB-Device nicht melden kann, dass Daten
anliegen, es muss warten bis es vom Host gepollt wird.

Was aber jede Millisekunde passieren kann. Bei 256 Byte Rx buffer sollte
das reichen, auch bei 115k2.

Aber nicht wenn das Timing eng ist. Ein echter UART liefert bei
115k2 ca. alle 86 Mikrosekunden ein Byte. Mit einem USB-Dongle ist das
nicht zu machen.
Kann den nicht mit USB2 alle 125 usec, in einem USB Mikroframe auch ein
Datenblock uebertragen werden?

--
Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
 
Gerrit Heitsch <gerrit@laosinh.s.bawue.de> writes:


Der FIFO ist schon passend, hilft dir aber nicht, wenn dein
Protokoll ein engeres Timing voraussetzt.
[Beispiel]

Vor etwas mehr als 20 Jahren habe ich eine A...-Registrierkasse[*]
mit RS4xx-Wandler (selbst entworfen) an einen Kaypro (4 MHz CP/M)
angeschlossen. Das Teil wollte unbedingt eine Antwort nach "7-10"
milli-Sekunden. Nicht vorher und erst recht nicht später...
Das war unter CP/M kein grosses Problem; wohl aber auf einem _PC_
(nicz _AT :) auf den das Programm portiert werden sollte...

Gruss, Holger

[*] Ich weiss heute nicht mehr, ob es Anker oder ADS war...
 
Gerrit Heitsch schrieb:

Aber nicht wenn das Timing eng ist. Ein echter UART liefert bei
115k2 ca. alle 86 Mikrosekunden ein Byte. Mit einem USB-Dongle ist das
nicht zu machen.
Jaja, aber komisch nur, dass PCs 115k2 erst wirklich nutzen konnten, als
die FIFOs hatten . . .

MFG
Falk
 
Gerrit Heitsch schrieb:
Protokoll ein engeres Timing voraussetzt. Beim erwaehnten
Beispiel mit einem Byte welches mit einem Byte beantwortet
werden muss schaffst du mit USB einen maximalen Durchsatz von
500 Bytes/sec pro Richtung. Bei einem echten UART und 115k2
sind es hingegen in der Gegend von 5700 Bytes/sec.
Dann ist dein Protokoll entweder schlecht oder wirklich nur auf einem
echten UART nutzbar.

MFG
Falk
 
Uwe Bonnes schrieb:

Kann den nicht mit USB2 alle 125 usec, in einem USB Mikroframe auch ein
Datenblock uebertragen werden?
Die 8 kHz Rahmenfrequenz gibt es AFAIK nur bei High Speed USB mit 480
Mbit/s. Ich glaube kaum, dass ein USB-UART IC damit arbeitet. Ich kenn
keinen (was nix heissen soll).

MfG
Falk
 
Falk Brunner wrote:
Gerrit Heitsch schrieb:

Aber nicht wenn das Timing eng ist. Ein echter UART liefert bei
115k2 ca. alle 86 Mikrosekunden ein Byte. Mit einem USB-Dongle ist das
nicht zu machen.

Jaja, aber komisch nur, dass PCs 115k2 erst wirklich nutzen konnten, als
die FIFOs hatten . . .
Im gegebenen Beispiel mit Single-Byte-Ping-Pong braucht man aber keinen
FIFO und zumindest aktuelle PCs sollten auch ohne FIFO in der Lage
sein 115k2 hinzubekommen.

Gerrit
 
Falk Brunner wrote:
Gerrit Heitsch schrieb:
Protokoll ein engeres Timing voraussetzt. Beim erwaehnten
Beispiel mit einem Byte welches mit einem Byte beantwortet
werden muss schaffst du mit USB einen maximalen Durchsatz von
500 Bytes/sec pro Richtung. Bei einem echten UART und 115k2
sind es hingegen in der Gegend von 5700 Bytes/sec.

Dann ist dein Protokoll entweder schlecht oder wirklich nur auf einem
echten UART nutzbar.
Ist ja nur ein Beispiel welches zeigt, dass ein USB-RS232-Dongle
eben kein 100% Ersatz fuer einen UART ist, auch wenn man auf
Bitklimperei auf den Handshakeleitungen verzichtet.

Gerrit
 
Falk Brunner wrote:

Jaja, aber komisch nur, dass PCs 115k2 erst wirklich nutzen konnten, als
die FIFOs hatten . . .
Das stimmt nicht. Man mußte bloß dafür sorgen, daß so ziemlich alle
anderen Interruptquellen abgeschaltet waren, dann ging es auch ohne FIFO
problemlos.

Oder statt DOS/BIOS-Gespann ein Betriebsystem verwenden.

Es war nämlich durchaus möglich, die verkorkste PC-Hardware ein wenig
intelligenter zu benutzen als DOS/BIOS. Dann klappte es auch mit den
UARTs...
 
Falk Willberg wrote:

Falk Brunner wrote:

Was aber jede Millisekunde passieren kann. Bei 256 Byte Rx buffer
sollte das reichen, auch bei 115k2.

Pollen[0] ist trotzdem Mist. So fängt man sich u.U. ein paar Millionen
sinnlose Operationen ein.
Aber macht das der HCD nicht "in Hardware" selbst und signalisiert dem
OS dann per Interrupt dann, daß das Polling erfolgreich war?

Gruß
Henning
 
Helmut Wabnig <hwabnig@ .- --- -. DOT .- t> wrote:

Du hast offensichtlich keine Erfahrung im industriellen Gerätebau,
Aber ich. Wir verwenden einen fest rastenden USB-Verbinder von Phoenix
- da is' nix locker, glaub mir :) Ob nun generell USB die richtige
Wahl für die Anwendung war, dazu schweige ich mal vornehm, aber Fakt
ist, es funktioniert problemlos und stabil, wenn man nicht den
consumer-Mist an Kabeln und Verbindern verwendet.



Ralph.

http://www.dk5ras.de/
Skispringen für Jedermann:
http://www.wsv08lauscha.de/veranstaltungen/jedermann/Tageskurs_Startseite.htm
 
Jorgen Lund-Nielsen <jorgen.lund-nielsen@xyz123desy.de> wrote:

Tja, nur woran schliesse ich den dann die zu steuernde Hardware an,
wenn USB nix Industriequalität ist und RS232 (=Industriequalität) nach
der parallelen Schnittstelle nun auch den Bach runtergeht?
CAN und Ethernet bzw. von beiden irgendwelche Abarten sind die
Verfahren, die ich im Anlagenbau mehr und mehr sehe.



Ralph.

http://www.dk5ras.de/
Skispringen für Jedermann:
http://www.wsv08lauscha.de/veranstaltungen/jedermann/Tageskurs_Startseite.htm
 
Henning Paul schrieb:
Falk Willberg wrote:

Falk Brunner wrote:
Was aber jede Millisekunde passieren kann. Bei 256 Byte Rx buffer
sollte das reichen, auch bei 115k2.
Pollen[0] ist trotzdem Mist. So fängt man sich u.U. ein paar Millionen
sinnlose Operationen ein.

Aber macht das der HCD nicht "in Hardware" selbst und signalisiert dem
OS dann per Interrupt dann, daß das Polling erfolgreich war?
Kann gut sein. Ich sehe jedenfalls, daß Interrupts ausgelöst werden,
wenn ich die USB-Maus bewege.

Falk
 
Christian Zietz schrieb:
http://www.reichelt.de/?;ARTICLE=11216;
MAX232CPE 32 Cent

Da das Reichelt ist, wird das vermutlich kein MAX232CPE sondern
irgendwas mehr oder weniger kompatibles sein...
bei meinen letzten Bestellungen verteilt über 2 Monate kam da immer der
MAX232N von Texas.

Gruß,
Alexander
 
Rainer Buchty schrieb:
In article <60ukiaF1t01cbU1@mid.individual.net>,
Falk Willberg <Faweglassenlk@falk-willberg.de> writes:

|> DMA: Ein Brief wird eingeworfen.

Ne... Eher "ich hab mich mit dem Besuch in einer Bar verabredet":
Und ich setze ganz frech: Bar == Briefkasten, Besuch == Brief ;-)

Falk
 
Rainer Buchty wrote:

|> DMA: Ein Brief wird eingeworfen.

Ne... Eher "ich hab mich mit dem Besuch in einer Bar verabredet":
DMA: Er hat den SchlĂźssel.


Nick
--
The lowcost-DRO:
<http://www.yadro.de>
 
In article <60ukiaF1t01cbU1@mid.individual.net>,
Falk Willberg <Faweglassenlk@falk-willberg.de> writes:

|> DMA: Ein Brief wird eingeworfen.

Ne... Eher "ich hab mich mit dem Besuch in einer Bar verabredet":

ohne DMA: Ich muß ihn abholen.

mit DMA: Er kommt selbst hin.

ohne DMA, ohne Interrupt: Ich muß ihn abholen, weiß aber nicht, wann genau
er daheim ist und schaue daher mehrfach vorbei. Schaue ich zu spät, überlegt
er sich's anders und ich gehe allein in die Bar.

ohne DMA, mit Interrupt: Ich muß ihn abholen, sobald er durchgerufen hat,
daß er zuhause ist.

mit DMA, ohne Interrupt: Er kommt selbst hin und wird sich an den vereinbarten
Tisch setzen, aber ich weiß nicht wann und muß daher rechtzeitig schauen, ob
er schon da ist (oder riskieren, daß er wieder geht, wenn wir uns verpassen).

mit DMA+Interrupt: Er kommt selbst hin, setzt sich an den vereinbarten Tisch
und ruft durch, daß er da ist.

Rainer
 
Hi Gerrit,
Ist ja nur ein Beispiel welches zeigt, dass ein USB-RS232-Dongle
eben kein 100% Ersatz fuer einen UART ist, auch wenn man auf
Bitklimperei auf den Handshakeleitungen verzichtet.
dafür kann schon ein billigster USB-Dongle mindestens 4xy kbd
Übertragungsrate (sorry, ich hab die konkrete Zahl nicht im Kopf) meist geht
sogar das Megabit. Die besseren Microcontroller können das auch, aber die
wenigsten UARTs on Board.

Marte
 
Marte Schwarz wrote:
Hi Gerrit,
Ist ja nur ein Beispiel welches zeigt, dass ein USB-RS232-Dongle
eben kein 100% Ersatz fuer einen UART ist, auch wenn man auf
Bitklimperei auf den Handshakeleitungen verzichtet.

dafür kann schon ein billigster USB-Dongle mindestens 4xy kbd
Übertragungsrate (sorry, ich hab die konkrete Zahl nicht im Kopf) meist geht
sogar das Megabit. Die besseren Microcontroller können das auch, aber die
wenigsten UARTs on Board.
Das liegt aber nur daran, dass der UART im PC mit 1.8432 MHz laeuft
weil das im Original-PC auch so war. Mit diesem Takt sind 115200
das Maximum. Die aktuell verbauten Chips koennen deutlich mehr.
Versorg sie mit einem Takt von 7.3728 oder 11.0592 MHz und schon
geht mehr. Quarze mit diesen Frequenzen sind problemlos zu bekommen.

Wobei ich bisher noch nie eine RS232 (!) mit 1MBit brauchte. Der
Normalfall sind hier 9600 8N1. Reicht fuer eine Konsole zur
Installation und Konfiguration eines Systems mehr als aus.

Gerrit
 
Gerrit Heitsch schrieb:

Das liegt aber nur daran, dass der UART im PC mit 1.8432 MHz laeuft
weil das im Original-PC auch so war. Mit diesem Takt sind 115200
das Maximum. Die aktuell verbauten Chips koennen deutlich mehr.
Schon der im Ur-PC verbaute INS8250 konnte mehr, max 8MHz Clock,
also 500kbps. Schon damals gabs Basteleien mit anderem Oszillator
(Original war 18,432MHz und 74LS90), aber dann auch RS-422.


Gruß Dieter
 
Gerrit Heitsch schrieb:
Marte Schwarz wrote:
Hi Gerrit,
Ist ja nur ein Beispiel welches zeigt, dass ein USB-RS232-Dongle
eben kein 100% Ersatz fuer einen UART ist, auch wenn man auf
Bitklimperei auf den Handshakeleitungen verzichtet.

dafür kann schon ein billigster USB-Dongle mindestens 4xy kbd
Übertragungsrate (sorry, ich hab die konkrete Zahl nicht im Kopf)
meist geht sogar das Megabit. Die besseren Microcontroller können das
auch, aber die wenigsten UARTs on Board.

Das liegt aber nur daran, dass der UART im PC mit 1.8432 MHz laeuft
weil das im Original-PC auch so war.
Darf ich sagen, daß der PC immer schon eine furchtbare Konstruktion war,
der überwiegend durch IBM, Microsoft und Intel dauerhaft versaubelt
worden ist, ohne daß man mir Haßtiraden vorwirft?

Falk
 

Welcome to EDABoard.com

Sponsor

Back
Top