Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 22 lip 2026, o 10:42


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 26 gru 2016, o 14:35 
Offline
Nowy

Dołączył(a): 28 gru 2014
Posty: 2
Pomógł: 0

Witam,

mam problem z transmisją za pomocą modułu UART. To co chcę osiągnąć to z poziomu Matlaba móc sterować wartością PWM podawaną na silnik. Algorytm działania jest następujący -> Z Matlaba wysyłam wartość (typu string) np. "1700". Mikrokontroler odbiera tą wartość, a po odebraniu jest odsyłana z powrotem do Matlaba. Problem jest taki, że poza odebraną wartością 1700 co jakiś czas odbieram np. '17', albo tym podobne. Czy mógł by ktoś pomóc? Pewnie to jakiś prosty błąd, nie potrafię sobie jednak z tym poradzić na chwilę obecną. Poniżej zamieszczam kod.

Funkcja main

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Funkcja log_get_value()

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Funkcja send_value_dec()

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Funkcja uart_getc() + przerwanie - zapożyczone z książki pana Mirka

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Proszę o pomoc i pozdrawiam serdecznie.



Ostatnio edytowano 27 gru 2016, o 16:56 przez Tojmak, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 gru 2016, o 16:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Wstaw prawidłowo kod.

Wysłane z mojego Kruger&Matz DRIVE 4 przy użyciu Tapatalka

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 15:49 
Offline
Nowy

Dołączył(a): 28 gru 2014
Posty: 2
Pomógł: 0

Kod poprawiony, mam nadzieję, że teraz jest dobrze.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 16:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

W pliku main.c od linii 61 do 63:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tak ma być? ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 16:40 
Offline
Użytkownik

Dołączył(a): 07 cze 2016
Posty: 563
Pomógł: 143

Tojmak napisał(a):
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Przy takim zapisie funkcja send_value_dec() będzie wykonana niezależnie od tego, czy warunek if(!log_get_value(&test)) będzie spełniony, czy też nie.
Zapewne nie to było Twoim zamiarem ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO