Czy USB ma gwarancję jakości usługi dla danych przesyłanych między moim urządzeniem USB-CDC a hostem USB?
Wiem, że z tradycyjnym RS232 w hałaśliwej sytuacji (np. Samochodowy port diagnostyczny) zdarzają się bity na tyle często, że sumy kontrolne są ważne dla protokołu. Gdybym miał dostosować taki protokół do aplikacji wykorzystującej wyłącznie USB, czy mogę bezpiecznie pominąć sumę kontrolną i powiązane procedury obsługi błędów?
Dla porównania używam AT91SAM7S256 ze strukturą USB-CDC dostarczoną przez Atmel.
Aktualizacja:
Ćwiczyłem trochę Google-Fu na tym problemie i znalazłem ten artykuł, który opisuje podklasę CDC do emulacji Ethernet i stwierdza:
Przez kabel USB zamknięte są ramki enkapsulowane Ethernet, zaczynając od docelowego adresu MAC i kończąc tuż przed sumą kontrolną ramki. (Suma kontrolna ramki nie jest potrzebna, ponieważ USB to niezawodny transport).
Mogą oznaczać, że USB-CDC to niezawodny transport, a nie USB w ogóle, ponieważ niektóre klasy urządzeń przeznaczone do szybkich danych seryjnych (kamera internetowa?) Mogą nie chcieć zapełniać buforów, jeśli program nie może wystarczająco szybko sondować danych.
Nadal chcę dodatkowe potwierdzenie w tej sprawie.