RFIDRW-E-232 не может понять команды от Raspberry Pi

Здравствуйте, у меня есть некоторые проблемы со связью с этим читателем RFID метки животного. Я использую Rasperry Pi, Java и PI4J. Я посылаю команды читателю в соответствии с документацией: http://www.priority1design.com.au/rfidrw-e-usb.pdf

Я попытался включить / выключить светодиод, получить версию прошивки и многие другие команды. Я все еще получаю ответ 0x00 (Команда не понята.)

Вот мой основной метод:

public static void main(String[] args) {
    final Serial serial = SerialFactory.createInstance();

    try {
        serial.open(Serial.DEFAULT_COM_PORT, 9600);
        serial.addListener(new SerialDataListener() {
            @Override
            public void dataReceived(SerialDataEvent event) {
                try {
                    String data = event.getData();
                    byte[] array = data.getBytes("US-ASCII");
                    String s = "";
                    System.out.println("Read: ");
                    for (int i = 0; i < array.length; i++) {
                        s = s + String.format("%02X ", array[i]);
                    }
                    System.out.println(s);
                } catch (UnsupportedEncodingException ex) {
                }
            }
        });
        //byte [] data = "VER".getBytes("US-ASCII");
        String data = "VER";
        //byte [] data = {(byte) 0x56,(byte) 0x45,(byte) 0x52};

        serial.write(data);
        //serial.write("\r");
        Thread.sleep(3000);

        System.out.println("done");
    } catch (Exception e) {
        System.out.println(e.getMessage());
    } finally {
        serial.close();
    }
}

Знаете ли вы, где может быть проблема? Спасибо за все ответы.

1 ответ

Я не знаю, помогает ли это, но когда я посмотрел страницу примера последовательного соединения pi4j

это говорит об этом, мне интересно, если вы пытались отключить COM-порт в качестве консоли?

    // !! ATTENTION !!
    // By default, the serial port is configured as a console port 
    // for interacting with the Linux OS shell.  If you want to use 
    // the serial port in a software program, you must disable the 
    // OS from using this port.  Please see this blog article by  
    // Clayton Smith for step-by-step instructions on how to disable 
    // the OS console for this port:
    // http://www.irrational.net/2012/04/19/using-the-raspberry-pis-serial-port/

Также, похоже, существует утилита для переключения порта с консоли https://github.com/lurch/rpi-serial-console

Другие вопросы по тегам