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



Teraz jest 28 mar 2026, o 10:33


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
Autor Wiadomość
PostNapisane: 28 paź 2015, o 18:11 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Witam
Próbuję nauczyć się zaawansowanej komunikacji po RS232, która jest opisana w GB. Próbuję zapalić diodę LED funkcją, która miała zapalić podświetlenie LCD. Wygląda na to, że działa, ale dioda się nie zapala. Dodałem do tej funkcji polecenie wysłania stringa do terminala i to działa. Zmieniłem makra dla diody w pliku komendy_at.h. Nie mam pojęcia co robię źle.
Działam na Atmega8 i wew. rezonatorze 8MHz.

PS
Nie wrzucam tutaj kodu, bo pochodzi on z książki, a to jest zabronione :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 paź 2015, o 20:05 
Offline
Moderator
Avatar użytkownika

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

Zombol napisał(a):
Nie wrzucam tutaj kodu, bo pochodzi on z książki, a to jest zabronione

Prośba moja zawsze dotyczy tylko tego aby nie wrzucać oryginalnych bibliotek z książek ... a swój plik main szczególnie gdy dokonujesz w nim zmian możesz wrzucać ile wlezie - to nawet wskazane bo nie wiadomo co ty tam robisz - więc jak pomóc ?

_________________
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: 28 paź 2015, o 20:33 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Właśnie problem w tym, że ja w main nic nie zmieniałem, a jedynie zmieniłem 4 linijki w komendy_at.h

Dokonałem zmian w tym fragmencie. Nie jest to chyba jakiś szczególnie wrażliwy fragment, więc chyba nie popełniłem rażącego błędu udostępniając go :) Jeśli jestem w błędzie, to wykasować :)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Nie załączyłem do projektu plików z obsługą lcd i ir, dlatego w pliku komendy_at.c w funkcji st_lcd_service zakomentowałem dwie linijki: pozycjonującą kursor i wysyłającą w to miejsce tekst.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 paź 2015, o 21:44 
Offline
Moderator
Avatar użytkownika

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

Spokojnie wklej fragmenty biblioteki które zmieniłeś - to przecież można - a definicje diod co mogą mieć do rzeczy

_________________
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: 29 paź 2015, o 09:45 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

W bibliotece komendy_at.c, w funkcji at_led_service zmieniłem lekko wykonywane funkcje, gdy parametr=1.

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

Napis się wyświetla poprawnie.

W funkcji at_lcd_service, zakomentowałem linijki lcd_locate i lcd_str, bo usunąłem z projektu bilioteki obsługujące LCD.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Tak wygląda plik main.c. Usunąłem z niego funkcję do parsowania danych z IR. Biblioteki do obsługi IR również nie dołączałem do projektu.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


To są wszystkie zmiany jakie poczyniłem. Sam się zastanawiam jak to możliwe, że ta dioda się nie zapala. Wszystko inne w tej funkcji działa, dlatego myślałem, że to wina definicji.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2015, o 09:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 maja 2013
Posty: 432
Lokalizacja: Gostyń / Poznań
Pomógł: 25

Jeszcze nie sprecyzowales gdzie masz ta diode podlaczona ... Czy na pewno na 7 pinie portu D?

_________________
Podpis...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2015, o 10:29 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Tak, dioda jest podłączona dobrze. Sprawdziłem ją "ręcznie"(tak jak to jest opisywane w BB w pierwszym programie) i działa.
Odkryłem też coś dziwnego. Jeżeli chcę sprawdzić stan diody poleceniem at+led? to zawsze dostaję odpowiedź +led=1.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2015, o 10:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 maja 2013
Posty: 432
Lokalizacja: Gostyń / Poznań
Pomógł: 25

A czy jest ustawienie gdzieś kierunku tego piny dla diody? Pytam bo nie mam teraz kompa a tu w skrawka nie widać... dodaj w main pod led1 ddrd |=(1 <<pd7)


Autor postu otrzymał pochwałę

_________________
Podpis...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2015, o 11:33 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Jeszcze długa droga przede mną :) Tak głupi błąd, że aż głupio tu pisać.
I w książce i na płycie w main.c są dwie magiczne linijki
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Nie mam pojęcia czemu je skasowałem. Może z rozpędu jak kasowałem inicjalizacje IR ;)

I problem się rozwiązał :) Dziękuję za pomoc i przepraszam, że takimi pierdołami zawracałem głowę ;D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2015, o 14:06 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Pojawił mi się kolejny problem. Próbuję sterować silnikiem DC z wykorzystaniem komend at i mostka H. Napisałem sobie funkcję do obsługi komendy at+sp zgodnie z szablonem w GB:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Nie wiem dlaczego nie działa mi sprawdzanie aktualnego stanu komendy. Niezależnie od tego, czy silnik się kręci, czy nie, otrzymuję komunikat Silnik nie kreci się.

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


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



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

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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO