Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

ARDUINO - czytnik kodów kreskowych

03 Lis 2014 12:51 4107 27
  • Poziom 8  
    Witam,
    właśnie przyszedł zamówiony USB HOST Shield do Arduino UNO
    po podłączeniu wszystko działa, wgrałem biblioteki, podłączyłem czytnik kodów kreskowych LS2208, i wszystko prawie bardzo ładnie
    tylko, że chce jeszcze mieć możliwość porównania kodu zeskanowanego z określonym kodem, jeśli oba są takie same to zapala się dioda jeśli nie to nic się nie dzieje

    nie wiem jak zapisać dane z czytnika do buforu i jak je porównać z jakimś konkretnym

    za wszelką pomoc serdecznie dzięki
    a oto mój kod

    Kod: c
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 8  
    Arduino zgłosiło mi błąd, może nie wtym miejscu wkleiłem

    barcode_scanner.ino: In member function 'virtual void KbdRptParser::OnKeyPressed(uint8_t)':
    barcode_scanner:32: error: invalid conversion from 'char' to 'char*'
    barcode_scanner:32: error: initializing argument 1 of 'char* strcpy(char*, const char*)'


    Kod: c
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    if(0==strcpy((char*)key,"5901336909607"))
  • Poziom 8  
    Niby działa kompilator nie zgłasza problemu, ale sam program już ma problemy ze skanera słyszę kilka piknięć a w terminalu widzę tylko pierwszą cyfrę
  • Poziom 28  
    Sorry nie przyjrzałem sie dokładnie, on zwraca po znaku więc musisz składać do tablicy.
    Tak na szybko to coś takiego.
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Z tego co widze to key jest zakończony spacją nie tak jak myślałem \r\n.
    Pokaż co wychodzi z tego.
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Teraz powinno działać.
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 8  
    a to jest bibliotek z której korzystam
    Link
  • Poziom 28  
    Zadeklarowałeś tablice na przynajmniej 14 (char keyString[14])
  • Poziom 28  
    Upsss zamien strcpy na strcmp.
  • Poziom 28  
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Zwiększ buf do 40.
    Odczytaj przynajmniej dwa kody bez resetu.
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Zamień if(key==' ') na if(key==19)
  • Poziom 28  
    Czyli chyba dziala. Skanuj kod takí jak w porownaniu.
  • Pomocny post
    Poziom 28  
    Zamien strcpy na strcmp.
    Tak to jest z kopiuj wklej.
  • Poziom 28  
    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Dodano po 10 [minuty]:

    Zamien strcpy na strcmp.
    PS. Sorry zaraz poprawie swoje posty bo już mnie to denerwuje.