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



Teraz jest 19 kwi 2024, o 14:39


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
PostNapisane: 5 lut 2017, o 18:05 
Offline
Nowy

Dołączył(a): 05 lut 2017
Posty: 4
Pomógł: 0

Posiadam zestaw uruchomieniowy z atmega32, kwarc 16MHz
Wszystko pięknie podpięte, program wgrany prze Bootloadera


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



Ostatnio edytowano 5 lut 2017, o 18:48 przez elektrotechnik0, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 18:14 
Offline
Moderator
Avatar użytkownika

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

po PIERWSZE to proszę edytować swój post i poprawić zgodnie z instrukcją na forum topic7402.html formatowanie kodu

po DRUGIE widząc to, że w pętli main używasz zmiennej typu (o zgrozo) int - która to zmienna zmienia się w zakresie od 0 do 2 , i do tego w ogóle nie dajesz pętli głównej programu to świadczy, że nie za bardzo znasz totalnych nawet podstaw jak na razie ... więc polecam zacząć od Bluebooka

http://atnel.pl/mikrokontrolery-avr-jezyk-c.html

i pamiętaj - bez pętli głównej w programie ZAWSZE będziesz miał taki efekt jak masz - i to jest prawidłowe zachowanie wbrew temu co ci się wydaje.

_________________
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: 5 lut 2017, o 18:37 
Offline
Nowy

Dołączył(a): 05 lut 2017
Posty: 4
Pomógł: 0

mirekk36, jestem tu nowy, nie zapoznałem się jeszcze z ogólnymi zasadami. Program napisałem "na kolanie", tylko i wyłącznie w celu sprawdzenia wyświetlenia pojedynczego napisu. Nie jest tutaj potrzebna pętla while(1)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 18:42 
Offline
Użytkownik

Dołączył(a): 26 lip 2015
Posty: 269
Pomógł: 34

Jak dla mnie to pętla while musi być zawsze żeby program się nie zakończył. W takim wypadku jak masz to funkcja int main musi zwrócić na koniec swojego działania jakąś wartość a u ciebie się kończy i nic nie zwraca. Na bank daj pustą pętlę while(1). A co do zasad zapoznaj się szybko i popraw swój post.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 18:53 
Offline
Nowy

Dołączył(a): 05 lut 2017
Posty: 4
Pomógł: 0

Proszę państwa, w celu wyświetlenia pojedynczej linii na wyświetlaczu LCD w żadnym razie nie jest potrzebna pętla while(1) (w tym wypadku), proszę o obiektywne sprawdzenie kodu



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 19:05 
Offline
Użytkownik

Dołączył(a): 14 sie 2016
Posty: 905
Pomógł: 39

Pętla może i nie, ale pewnie przydałaby się obsługa wyświetlacza ;)

_________________
Moje porady są błędne,nie czytać,zbanować od razu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 19:10 
Offline
Nowy

Dołączył(a): 05 lut 2017
Posty: 4
Pomógł: 0

odpowiednie rozkazy są przypisane do portu B



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 19:21 
Offline
Użytkownik
Avatar użytkownika

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

Jak to pętla while nie jest potrzebna ? hmm to po co nawet jak zaczynam pisać program i chcę zmienić stan pinu w mainie to on go nie zmieni bez pętli while ?

nie ważne że z niej teraz nie korzystasz ona musi być i koniec bo inaczej to klapa i nic nie zadziała.

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




Można też tak:

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



Pętla while musi być zawsze. Nie upieraj się przy swoim tylko wpisz ją w kod i wtedy sprawdź.

Bez niej nie wykona się prawidłowo ostatnia instrukcja
sprawdź sam

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 20:05 
Offline
Użytkownik

Dołączył(a): 27 lut 2013
Posty: 230
Pomógł: 4

mirekk36 napisał(a):
i pamiętaj - bez pętli głównej w programie ZAWSZE będziesz miał taki efekt jak masz - i to jest prawidłowe zachowanie wbrew temu co ci się wydaje.

i tu jest po temacie ... ;)

A tak z innej beczki co wspólnego ma kod na AVR-a z Basic4Android ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 21:12 
Offline
Użytkownik
Avatar użytkownika

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

michal1210 napisał(a):
A tak z innej beczki co wspólnego ma kod na AVR-a z Basic4Android ?


Sokole oko :) zapewne zielony jak zobaczy to zrobi się różowy i może któryś z nich przeniesie :) do właściwego działu :)

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 22:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 paź 2014
Posty: 233
Lokalizacja: Rzeszów
Pomógł: 11

Co to za wyświetlacz? Z kodu nie mogę niczego się domyśleć. Widzę tylko, że żonglujesz portami.

Nie rozumie też, o co chodzi z tą "pętlą główną". Po wyjściu z funkcji main program będzie zapętlony - robi to kompilator.

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


Przynajmniej tak mi się wydaje.

_________________
Mr. Nobody



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 22:23 
Offline
Użytkownik
Avatar użytkownika

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

APAP75 napisał(a):
Co to za wyświetlacz? Z kodu nie mogę niczego się domyśleć. Widzę tylko, że żonglujesz portami.

Nie rozumie też, o co chodzi z tą "pętlą główną". Po wyjściu z funkcji main program będzie zapętlony - robi to kompilator.

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


Przynajmniej tak mi się wydaje.



No to zrób test ... na podstawie kodu który podałem wyżej wpisując np tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


silnik zrobi 3 postoje i 3 obroty z pętlą while wykona się też ostatni warunek wraz z delay czyli

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


Wychodzi na to że jednak się nie zapętli :)

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2017, o 22:38 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 paź 2014
Posty: 233
Lokalizacja: Rzeszów
Pomógł: 11

Ale tu nie chodzi o "jakiś" wyświetlacz LCD?
majster - ciekawe jest to co piszesz - testu jednak nie potrafię zrobić, bo nie mam ani całego kodu ani silnika krokowego.
To co wkleiłem jest kawałkiem pliku .lss programu zaprezentowanego w pierwszym poście. Ciekaw jestem skąd takie zachowanie silniczka.
Z drugiej strony - jeśli program wyjdzie z main i się nie zapętli, to co będzie robił? "Buszował" po pamięci i wykonywał przypadkowe polecenia. No może nie do końca przypadkowe - chyba niezaprogramowana pamięć ma wartość 0xFF - nie wiem na co to przetłumaczy uK.
Nie twierdzę, że nie masz racji - ciekawi mnie jedynie DLACZEGO tak się dzieje.

_________________
Mr. Nobody



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

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