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



Teraz jest 21 gru 2025, o 22:51


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 19 wrz 2015, o 12:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Witam, mam naprawdę dziwny problem. Otóż mam biblioteke Mirka z GB i chce odbierać jeden znak z terminala a potem od razu go wysyłac z powrotem.

Kod poza inicjalizacją uarta wygląda tak:

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


problem jest taki ze gdy nic nie pisze to i tak wysyłane są same kropki "." do terminala... nie rozumiem dlaczego, tak jakby skad odbierał jakies dane, a przeceiz nic nei wpisuje.

Rezultat jest taki:

Napisałeś: ............................ i tak przez poł ekranu tych kropek ;/ no porostu nie rozumiem czemu tak jest. Uklad jest zmontowany na płytce stykowej z kondensatorami filtrującymi i pinem RST podłączonym do VCC prez rezystor 10K. Nie ma tylko dławika.
Juz wcześniej rozbiłem rożne ćwiczenia z uartem ale nie zauważyłem nigdy takiego problemu.

Ogolnie chciałbym analizować wpisywany tekst do terminala, tak jak Mirek pokazywał w poradniku o Kliencie TCP, choć tutaj chciałbym uzyc zwyklego terminala do takiej analizy, tzn wpisuje jakis tekst i pomiedzy danymi znacznikami jest szukany ciąg. Napisałem taki kod na podstawie w/w poradnika, niestety nie działa, nie ejstem pewny czy nie popełniłem jakiegos błedu w kodzie.

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


Rezultatem chciałbym by było wyświetlenie w terminalu stringa znajdującego sie pomiedzy tagami aaaSTRINGbbb. Obecnie nic sie nie wyswietla, tzn nie wykrywany jest ten ciąg.



Ostatnio edytowano 19 wrz 2015, o 13:01 przez Atmegowiec, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 wrz 2015, o 13:00 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27445
Lokalizacja: Szczecin
Pomógł: 1045

Atmegowiec napisał(a):
problem jest taki ze gdy nic nie pisze to i tak wysyłane są same kropki "." do terminala... nie rozumiem dlaczego

To czemu nie zajrzysz do funkcji uart_getc() tylko stosujesz ją kompletnie bez zrozumienia ? Już nie wspomnę o tym, że już w Bluebooku był przykład jak korzystać z takiej funkcji ... w pętli głównej np w rozdziale z przykładem wielozadaniowym do np gaszenia i zapalania diody LED z terminala - ale po co tam zaglądać no nie ?

------------------------ [ Dodano po: 4 minutach ]

Atmegowiec napisał(a):
nie ejstem pewny czy nie popełniłem jakiegos błedu w kodzie.

Ja nie wiem jak ty oglądasz takie poradniki, że później na ich przykładzie wpisujesz takie rzeczy, które nie mają prawa działać ? ZRÓB chociaż RAZ, JEDEN RAZ takie samo ćwiczenie jak w poradniku i sprawdź zanim wprowadzisz swoje modyfikacje, które popsują to wszystko. A wtedy nawet nie masz punktu odniesienia ....

Toż gdybyś RAZ zrobił przykład jak należy (czyli jak w poradniku albo jak w książce) i by ci to działało ... a później jakbyś wprowadzał własne modyfikacje to widziałbyś (tzn mam taką nadzieję) .... co psujesz że nie działa

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 wrz 2015, o 19:23 
Offline
Użytkownik

Dołączył(a): 13 lut 2015
Posty: 99
Pomógł: 6

Powinieneś użyć funkcji czekającej na znak albo po prostu odrzucać wynik "pusty" czyli NULL albo -1 zależnie od implementacji.

Można także czekać aż uart_avaiable() coś zwróci, a nawet coś takiego.

_________________
AVR-UART-lib
AVR-FAST-ENCODER
RFM7x-lib



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: 3 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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