Сканер штрихкодов. Почему не работает?

Jibuzz
Offline
Зарегистрирован: 28.04.2015

Здрствуйте. Я начинающий. Делаю сканер штрих-кодов, нужно получить тупо строчку (string). Сканер выдаёт байты кода,в конце байты 13, 10. Код не работает, подскажите, где косяк, два дня уже бьюсь. С железом всё в порядке, на прямую байты выводятся нормально.

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);
 
void setup()  
{
  Serial.begin(9600);
  Serial.println("/barcode/");
  mySerial.begin(9600);
}
 
void loop()
{
  
  int incb; //байт с порта
  String bar; //штрихкод
  boolean ok; //флаг, что код прочитан
  incb = 0;
  bar = "";
  ok = false;
 
  while (ok == false); 
  {
    if (mySerial.available()) 
    {
      incb=mySerial.read();
      if (incb != 10) // сканер в конце даёт байт 10, выкидываем 
      {
        if (incb != 13) // перед последним байтом - 13, тоже выкидываем
          {
          bar = bar + ((char)incb);
          incb = 0;
          }
      }
      else ok = true;  // выходим если 10
    }    
  }
Serial.println(bar);
delay (1000);
}

 

MikSer
Offline
Зарегистрирован: 27.01.2012

Что за сканер? Может TTL уровни с МК нужно согласовать?

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

А сканер точно не как HID-устройство работает? Я других последнее время не встречал...

Jibuzz
Offline
Зарегистрирован: 28.04.2015

Нет, с железом всё ОК, да и можно удалять тему, переписал всё с нуля и заработало. Только где тут косяк так и не понял. :)

Jibuzz
Offline
Зарегистрирован: 28.04.2015

Сканер изначально HID/USB. Но я его расковырял, а там внутри ещё COM обычный на 3232. Переключение с одного режима на другой в мануале описано. В общем он двухстандартный, просто наружу только USB хвост выведен. Если кому интересно, сканер Z-5130, маленький такой модуль.

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Jibuzz пишет:

Сканер изначально HID/USB. Но я его расковырял, а там внутри ещё COM обычный на 3232. Переключение с одного режима на другой в мануале описано. В общем он двухстандартный, просто наружу только USB хвост выведен. Если кому интересно, сканер Z-5130, маленький такой модуль.

У меня такого нету...

Где покупали?

Jibuzz
Offline
Зарегистрирован: 28.04.2015

Покупало предприятие, где я работаю. К сожалению, я понятия не имею, где отдел снабжения нашел этот сканер.