PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Barcodeleser



iltis
06.04.2006, 12:40
Hallo,

ich habe folgendes Problem mit einem Barcodeleser:

Der AVR liest Zeichen vom Barcodeleser ein und verarbeitet diese. Leider funktionieren nur Eingaben mit der Tastatur - dem Einlesen mit dem Scanner kommts immer zu einem Fehler.
Ich habe schon die Sprache des Lesers umgestellt, Pausen zwischen den Zeichen eingefügt, ... aber keine Lösung.
Am PC gibt der Leser auch die richtigen Zeichen aus.
Was kann das sein?

Vielen Dank!

Hessibaby
06.04.2006, 13:02
Über welche Schnittstelle hast Du den Leser angeschlossen ?
Bei RS232C also seriell muß die Baudrate und das Framing stimmen.
z.B. 9600 Baud 8 Bit no Parity , wenn es am PC funzt schau einfach bei der Schnittstelleneinstellung in der Windowssystemsteuerung nach.
Gruß Hartmut

iltis
06.04.2006, 13:15
Hängt an PS/2. Ist mir total rätselhaft.

Viele Grüße

Hessibaby
06.04.2006, 13:20
Hängt die Tastatur auch am PS/2 ?

iltis
06.04.2006, 13:22
Ja die hängt auch da dran. Aber nicht gleichzeitig, weil das an sich schon wieder eine Fehlerquelle ist

Hessibaby
06.04.2006, 14:04
Beim Scanner kommen die Daten als relativ schnelles Paket. Dafür hat der PC einen entsprechenden FIFO-Buffer. Wenn Du direkt am Seriellen oder I2C Port des AVR hängst wirst Du die Daten nicht schnell genug aus dem Buffer kriegen und diese dann wahrscheinlich überschreiben. Üblicherweise mußt Du nach dem 1. Interrupt am Port pollen und die Daten abholen da eine Interruptserviceroutine zu langsam ist. Bei der Tastatur kommen inkl. Frame nur 10 Bit pro Tastendruck. Bei eine Scanner 640 Bit je Scan. Ich würde dem Port einen Hardware Fifo-Buffer von 1k vorschalten und sequentiell auslesen.
Hast Du in C oder Assembler geprogt ?
Gruß Hartmut

iltis
06.04.2006, 16:17
Nein hab ich nicht. Aber jetzt gehts misteriöserweise.

Vielen Dank!