Skocz do zawartości
juras

[STM32] [C] Wysyłanie wartości heksadecymalnych przez UART

Pomocna odpowiedź

Witam!

Borykam się z pewnym problemem. Wysyłanie i odbiór przez UART wartości 8-bitowych udało mi się zrealizować bez większych problemów. Jednak gdy chciałem zrealizować wysyłanie wartości 16-bitowych, najpierw wysyłając starsze 8 bitów, później młodsze i następnie łącząc je w całość, miałem problemy z odbiorem.

Nie zależy mi na wysyłaniu liter, jedynie wartości heksadecymalne, ponieważ chcę wykorzystać opracowaną na własne potrzeby ramkę danych. Próbowałem wykorzystać sposób z funkcjami printf z lekcji UART z kursu STM32F4, również nie osiągnąłem odpowiedniego rezultatu.

Do odbioru i wysyłania wykorzystuję przerwania, a dane przesyłam jako elementy tablicy.

Czy ktoś zna sposób, w jaki można rozwiązać ten problem?

Udostępnij ten post


Link to post
Share on other sites

Ale jaki problem dokładnie? Bo napisałeś tylko, że "miałeś problemy z odbiorem", ale nie napisałeś na czym one polegały. Jakieś szczegóły? Może jakiś minimalny przykład kodu, który demonstruje problem?

Przy okazji, wartości heksadecymalne, to ty najwyżej możesz sobie wyświetlać, przesyłasz zawsze wartości binarne. A to, czy potem je interpretujesz jako litery, bajty, czy liczby 16-bitowe, to już sprawa odbiornika.

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...