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



Teraz jest 22 maja 2026, o 11:40


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 21 ] 
Autor Wiadomość
PostNapisane: 8 wrz 2014, o 01:42 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

Witam Serdecznie
Chciał bym zacząć tą przygodę z µC ale na razie niestety tylko teoria i przemyślenia bo:
BB + programmer + płyta; Nie dostępne
GB + Pixelfactory; Nie dostępne
Przejściówka ATB-USB-RS232; Nie dostępne
Przetwornica ATB-PWR3; Nie dostępne

Mirku, zlituj się i napełnij półki w sklepie ATNEL.
Teraz to tam wygląda jak za komuny w mięsnym.
Jestem jednak dobrej nadziei że wkrótce się te produkty pojawią.

Więc TAK:
Eclipse + AVR toolchine hulają wspaniale.
Kompilacja działa, pliki HEX się pojawiają, wszystko cacy.

Jestem niestety na razie zmuszony do pływania na sucho (Dupą po piasku).

Tutaj właśnie pojawia się prośba do was. Umieszczę poniżej schemat i do niego cody które powinny obsługiwać ten układ.
Moją prośbą jest, aby ktoś z was przeanalizował ten program, ewentualnie przetestował to na ATMega8.
Chciał bym wiedzieć czy ja w dobrą stronę rozumuję i kombinuję.
Nie wnikajcie bardziej w schemat bo wiem dokładnie co to filtracja napięcia, odpowiednie zasilanie itd. itp. Elektronika jako taka nie stanowi dal mnie żadnej przeszkody. Na dzień dzisiejszy to jest dla mnie prostsze skonstruowanie jakiegoś n.p. licznika częstotliwości na konwencjonalnych scalakach niż napisanie programu na µC.


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.

Tutaj nie mogę dać sobie rady z portem C Pin0 i Pin1.
Jak tutaj zacząć ???

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


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


Z góry dziękuję za porady i sugestie.

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 07:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 sty 2013
Posty: 1760
Pomógł: 196

Witam
...tak tylko "rzuciłem okiem" i :
Jeżeli chcemy aby dany PIN był WYJŚCIEM to piszemy
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

- w tej drugiej sytuacji jak nic nie napiszesz to i tak będzie to wejście.
U Ciebie jest odwrotnie ( w.g schematu )
Chodzi o
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Pozdr.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 08:23 

Pomógł: 0

Tutaj jest fajny obrazek do wydrukowania http://mirekk36.blogspot.com/2012/01/av ... stawy.html

Dobrze go sobie powiesić nad biurkiem :D.
Sam tak mam zrobione.



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 11:23 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Witam,

Kolega niedostępność towaru u p. Mirka nie powinna stanowić problemu z rozpoczęciem przygody z uC :)

Ja zacząłem od tego, że sam "wyprodukowałem" programator USB-ASP, później zakup stykówki, potrzebnych elementów i darmowy kurs internetowy:
KLIK!

Do tego darmowy MkAvrCalculator - ja cały czas walczę tylko z ATMega8, a dla niego masz pełne wsparcie programu w wersji Free.

I już można coś zacząć.

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 13:20 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

rezasurmar napisał(a):
Tutaj jest fajny obrazek do wydrukowania http://mirekk36.blogspot.com/2012/01/av ... stawy.html

Dobrze go sobie powiesić nad biurkiem :D.
Sam tak mam zrobione.


Właśnie z tego obrazka pisałem. Linia 34 - 39
Błędy pokazuje w L. 42 - 43.



doman89 napisał(a):
Ja zacząłem od tego, że sam "wyprodukowałem" programator USB-ASP, później zakup stykówki, potrzebnych elementów i darmowy kurs internetowy:

Ja na początek wolę osprzęt sprawdzony i uruchomiony.
Pł. stykowe i wszelkie elementy to mam. Pracuje na stykówkach już dobre 15 lat.
Zamówiłem w HonkKongu za 9€ 8xATM8, 8xATM88, 2xATM16, i 4xLCD2x16.
Na przesyłkę muszę jeszcze poczekać dobre 14 - 20 dni. Może do tego czasu Mirek się zlituje i żuci towar. :D

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 13:28 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Przed main wstaw cosik takiego tylko ustaw sobie odpowiedni PIN i PORT gdzie masz tą diodę podłączoną.

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


Autor postu otrzymał pochwałę

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 14:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Zgadzam się, że brak książki w niczym nie przeszkadza. I jest dużo dostępnych kursów po polsku, niemiecku, angielsku, a nawet rosyjsku czy chińsku. Przeszkodą zazwyczaj jest brak procesora choć są też symulatory.
doman89 napisał(a):
Witam,

Ja zacząłem od tego, że sam "wyprodukowałem" programator USB-ASP, później zakup stykówki, potrzebnych elementów i darmowy


Tylko ciekawe czym go oprogramowałeś. Przyciskami nadając 0 i 1? :)

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 14:48 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 3230
Lokalizacja: Kraków - obok FAB5 ATMEL'a
Pomógł: 91

Proszę poprawić obrazki zgodnie z zaleceniami topic44.html

_________________
http://www.jaglarz.info



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 16:17 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Witam,

WoodPaker napisał(a):
Zgadzam się, że brak książki w niczym nie przeszkadza. I jest dużo dostępnych kursów po polsku, niemiecku, angielsku, a nawet rosyjsku czy chińsku. Przeszkodą zazwyczaj jest brak procesora choć są też symulatory.
doman89 napisał(a):
Witam,

Ja zacząłem od tego, że sam "wyprodukowałem" programator USB-ASP, później zakup stykówki, potrzebnych elementów i darmowy


Tylko ciekawe czym go oprogramowałeś. Przyciskami nadając 0 i 1? :)


Zaspokoję Twoją ciekawość i powiem Ci że zaprogramowałem go......... uwaga......... programatorem od znajomego. To dopiero niespodzianka zaprogramowałem mikroprocesor programatorem!
Każdy wie, że można nawet zrobić programator na LPT za parę groszy na ten jeden raz.

Tak więc powodzenia w czepianiu się dalej :)

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 17:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Nikt się nie czepia. Zwykłe proste pytanie żeby rozjaśnić Baaardzo początkującemu pewne niejasności. Człowiek zbuduje sobie programator, a potem stanie w miejscu. Bo wręcz jestem pewien, że
Cytuj:
Każdy wie, że można nawet zrobić programator na LPT za parę groszy na ten jeden raz.

nie jest prawdą. Np. moja mama nie wie :lol:

A biorąc pod uwagę budowę najnowszych laptopów i komputerów to LPT nawet detektyw Rutkowski miałby problem znaleźć.

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 wrz 2014, o 17:09 

Pomógł: 0

WoodPaker napisał(a):
A biorąc pod uwagę budowę najnowszych laptopów i komputerów to LPT nawet detektyw Rutkowski miałby problem znaleźć.


Ze świecą szukać dziś kompa który po pierwsze ma LPT po drugie obsługuje go z poziomu windows 7 czy 8 ;).



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 9 wrz 2014, o 10:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 kwi 2014
Posty: 438
Lokalizacja: Zambrów
Pomógł: 22

ECC88 napisał(a):
Właśnie z tego obrazka pisałem. Linia 34 - 39
Błędy pokazuje w L. 42 - 43.


ECC88 błędy Ci wskazuje bo kompilator nie wie co to jest LED_ON i LED_OFF. W twoim przypadku są to ustawienia stanu portu PC0, do którego podłączona jest dioda LED.

Możesz to rozwiązać na dwa sposoby. Albo po prostu zamiast LED_ON napisać:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

co ustawi stan wysoki na PINie mikrokontrolera i zapali diodę i LED_OFF:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

co tę diodę LED zgasi.

Jak chcesz użyć etykiet LED_ON i LED_OFF to zrób jak Ci podpowiedział kurnachatka. Tylko w twoim przypadku zamienione będą definicje LED_ON z LED_OFF bo diodę zapalasz stanem wysokim, a nie niskim.

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

co ustawi Ci Pin PC0 jako wyjście, należy zrobić raz i to przed pętlą główną programu while (1).

Tak samo z przyciskiem, jeżeli coś ustawiasz to przed while (1). W tym przypadku chcesz, aby PC1 było wejściem więc możesz napisać:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Jednak nie musisz tego robić, bo po RESECIE w ATmedze wszystkie porty domyślnie są wejściami.

Ponieważ przycisk jest podłączony do masy to powinieneś jedynie ustawić podciąganie do VCC przez rezystor tzw. PULL-UP.
Robisz to wpisując 1 do PORTC.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Również przed while (1).

W while (1) zostawiasz sobie tylko warunek, z tymi poprawkami co pisałem wyżej lub dodajesz definicje za pomocą #define jak pisał kurnachatka.

Wtedy powinno Ci śmigać :D


Autor postu otrzymał pochwałę

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 wrz 2014, o 22:40 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

Wielkie dzięki wszystkim.
Rady pomagają i coraz więcej kapuję :D

A Tutaj jeszcze take pytanie baaaardzo początkującego;

Jak się nazywają fachowo te znaki które zaznaczyłem???
Co wpisać w google aby uzyskać listę tych zapisów co jaki znaczy??

Obrazek

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 wrz 2014, o 22:51 
Offline
Użytkownik

Dołączył(a): 05 lut 2013
Posty: 302
Pomógł: 19

operatory



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 wrz 2014, o 22:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 kwi 2013
Posty: 418
Lokalizacja: Rzeszów
Pomógł: 102

https://www.google.pl/search?q=Assignme ... ators+in+C

http://www.tutorialspoint.com/cprogramm ... rators.htm



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

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

Wszystkim dzięki. Znalazłem coś takiego:
http://leksykot.top.hell.pl/lx3/e/prior ... eratorow_c
Bardzo pomocne.

Objaśnił by mi ktoś ten zapis :oops:
if( !key_lock && !(PINC & KEY1 ) )

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2014, o 10:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Ten warunek się spełni jeśli obydwa wyrażenia, które się w nim znajdują, będą prawdą.
Pierwsze wyrażenie to
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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


Działanie drugiego warunku masz ładnie wytłumaczone w króciutkim poradniku na Mirka blogu http://www.mirekk36.blogspot.com/2014/0 ... -o-co.html
Tak w skrócie ten warunek będzie spełniony jeśli na pinie KEY1 zostanie ustawiony stan niski. Wtedy wyrażenie (PINC & KEY1) przyjmie wartość zero czyli fałsz (false). Ale po zastosowaniu negacji logicznej "!" wyrażenie stanie się prawdą (true).

Pierwszy warunek będzie prawdziwy jeśli zmienna key_lock będzie miała wartość zero. Wartość zero czyli false po zastosowaniu negacji logicznej da nam true.

Czyli ten if się wykona jeśli zmienna key_lock będzie miała wartość zero i jednocześnie na pinie KEY1 będzie panował stan niski.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2014, o 21:26 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

Już wszystko coraz bardziej jasne.
Oto moje następne podejście:
Obrazek
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Jeżeli dobrze rozumuje to taster S2 włącza LED2 a jeżeli warunek nie jest spełniony to świeci LED1.
Czy dobrze rozumuje? Jest to poprawnie zapisane?

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2014, o 22:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

A sprawdzałeś ten program jak działa? Bo raczej nie zadziała wg założeń. Po wciśnięciu przycisku włączą ci się obydwie diody i już tak włączone zostaną niezależnie od stanu przycisku.
Jeśli przycisk będzie nie wciśnięty to włączy się dioda na PD3. Po wciśnięciu przycisku włączy się dioda na PD2 ale ta na PD3 już nie zgaśnie. Tak samo po zwolnieniu przycisku dioda na PD2 też nie zgaśnie. W rezultacie obydwie będą świecić.

Teraz pokombinuj jak to zmienić.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 wrz 2014, o 23:20 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 15 lip 2014
Posty: 8
Pomógł: 0

jacekk232 napisał(a):
A sprawdzałeś ten program jak działa?

Nie nadal czekam na Hardware. µC, programmer i to wszystko.

Na razie na sucho.

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

Ustawiłem PD2 i 3 na stan niski, dobrze kombinuję???

_________________
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 wrz 2014, o 09:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 kwi 2014
Posty: 438
Lokalizacja: Zambrów
Pomógł: 22

jacekk232 napisał(a):
Ustawiłem PD2 i 3 na stan niski, dobrze kombinuję???

Można to dodać, ale nie tu leży problem :D

Mianowicie w twoim warunku w pętli while(1)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

W tym warunku po przyciśnięciu Przycisku na PD0 zapali Ci się dioda podłączona na PD2. Jeżeli przycisk niewciśnięty to zapali Ci się dioda na PD3. Problem jest, że po przyciśnięciu raz przycisku od uruchomienia programu zapalą Ci się obie diody, ale nigdzie w programie nie są one gaszone. Także według mnie trzeba by dodać jeszcze kod na gaszenie diod:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Wtedy po wciśnięciu przycisku Będzie Ci się tylko świecić PD2, a po puszczeniu PD3. Jeżeli o taki efekt Ci chodziło :P
Zresztą to co ja Ci tu na kodzie przedstawiłem, słownie to samo opisał Ci wcześniej jacekk232 :)

_________________
.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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