RS232-RFID-Lesegerät funktioniert nicht

Ich habe ein RFID-Lesegerät gekauft, das über ein RS-232-Kabel kommuniziert. Ich habe jedoch einen RS-232-zu-USB-Adapter verwendet, um ihn an meinen Laptop anzuschließen. Es ist ein ACM812A RFID-Lesegerät .

Wenn ich die Anwendung des RFID-Lesegeräts öffne und versuche, eine Verbindung zum Lesegerät herzustellen, wird ein Kommunikationsfehler angezeigt. Also beschloss ich, den Arduino herauszuziehen und zu sehen, was übertragen wird. Erstens, jedes Mal, wenn ein RFID-Tag in der Nähe des RFID-Lesegeräts platziert wird, gibt das Lesegerät einen Piepton aus, um anzuzeigen, dass ein Tag erkannt wurde. Die ID des Tags wird dann über das RS-232-Kabel an den PC übertragen. Also beschloss ich, das RS-232-Kabel und die Verbindung zu entfernen. Ich nahm dann drei Drähte und verband sie mit den RX-, TX- und GND-Pins des Lesegeräts und verband dann den RX mit TX des Arduino und TX mit RX des Arduino und auch Masse.

Wenn ich den seriellen Monitor öffne und das Tag in die Nähe des Lesegeräts platziere, wird auf dem seriellen Monitor für alle Buadraten Folgendes angezeigt. Ich sollte die ID vom Tag erhalten (wie 251458712). Als ich das TX-Kabel des Lesegeräts gemessen habe, sind es -5,2 V. Kann mir jemand helfen zu verstehen, was falsch läuft?

Geben Sie hier die Bildbeschreibung ein

Sie können das TX-Kabel nicht mit einem Voltmeter messen, Sie benötigen ein Oszilloskop (digital oder auf andere Weise), um es entweder zu messen und / oder zu decodieren. Sind Sie sicher, dass der Reader statt etwas anderem ASCII-Daten ausgibt?
RS232 und Logik Tx/Rx sind invertiert. Sieht so aus, als würde es Ihnen 8 Mal "Pilotenfehler" in 15 Zeichen sagen. ;) lily@goldbridgesz.com Überprüfen Sie alle Annahmen und Anweisungen und wenden Sie sich dann an den Support, um die genaue Einrichtung anzuzeigen
kam schon Rauch aus deinem AVR?
RS232-Sender haben etwa 1200 Ohm Innenwiderstand, es ist wahrscheinlich, dass der Arduino überleben würde

Antworten (2)

Das verwendete Lesegerät verfügt über eine serielle Schnittstelle mit RS232-Spannungspegeln. Arduino hat eine serielle Schnittstelle mit 5V oder 3V TTL/CMOS-Pegeln. Sie sind nicht kompatibel, es sei denn, Sie haben einen RS232-Transceiver zwischen Arduino und Lesegerät angeschlossen. Es ist möglich, dass die höheren Spannungspegel des Lesegeräts den Arduino beschädigt haben, also prüfen Sie, ob er noch zuverlässig funktioniert.

Das rs232-Signal hat die entgegengesetzte Polarität zum Adruinos UART, da die Spannungen falsch sind.

Schließen Sie stattdessen an das RS485-Kabel „A“ an. das Signal dort hat die richtige Richtung und eine geeignete Spannung.