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



Teraz jest 30 lis 2024, o 00:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
PostNapisane: 31 sty 2016, o 22:00 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

Witam. Mam pewien problem. Postanowiłem sam napisać kod do takiej mini sygnalizacji. Założenie było takie żeby nie robić tego na delay tylko na przerwaniach. Problem polega na tym że czasy jakie powinny zachodzić pomiedzy cyklami nie odpowiadają tym w kodzie. Taktowanie procka jest na pewno dobrze ustawione i w mkavr jak i eclipse ( 8MHZ )
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Procesor jakiego używam to Atmega8



Ostatnio edytowano 31 sty 2016, o 23:10 przez marek2012r, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 22:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Może napisz co według Ciebie chciałeś uzyskać, bo kod jak kod - działa zgodnie z tym jak jest napisany a co chciałeś uzyskać to ciężko się domyśleć.
Jaką wartość tiku timera chciałeś uzyskać? 2s?

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 22:49 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

To miało być tak ,że co 10s zmieniały się światła ale nawet jak mierzyłem napięcie na porcie D to na niektórych pinach było 5v i spadało do 0 a w niektórych tylko do 1,5v

------------------------ [ Dodano po: kilkunastu sekundach ]

A co 1 s miała się zwiększać wartość zmiennej timer
Spodziewam się, że mogą być źle zapisane działania PORTD &= ~(LED11 | LED13); czyli zerowanie bitów



Ostatnio edytowano 31 sty 2016, o 23:13 przez marek2012r, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 22:58 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

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

topic7402.html

_________________
http://www.jaglarz.info



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:05 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

Poprawiony widok kodu :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Napisz co dokładnie i kiedy ci nie działa. Zrób na początek prosty algorytm tylko dla pojedynczych diod.
Jak piszesz, że masz coś nie tak z napięciami, to daj schemat.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:14 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

To było sprawdzane na płytce stykowej i czasem nawet na konkretnym pinie było 0V-5V a czasem 5v-1,5v



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Diody masz podłączone poprzez rezystory? Podpięte są do VCC czy GND?
Daj sobie pomóc. Wrzuć więcej informacji a nie tylko enigmatyczne
Cytuj:
czasem 5v-1,5v


--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:22 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

Wyjście pod podciągnięte wewnętrznie pod VCC i dodatkowo jeszcze dany rezystor 1kOhm.Diody połączone pod GND Myślałem że będzie za duży ale dioda świeci. A czy zapis PORTD &= ~(LED11 | LED13); jeżeli chcę wyzerować te dwa piny jest poprawny ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Wyjście pod podciągnięte wewnętrznie pod VCC i dodatkowo jeszcze dany rezystor 1kOhm.
Nie rozumiem jak masz te diody podłączone.
Cytuj:
czy zapis PORTD &= ~(LED11 | LED13); jeżeli chcę wyzerować te dwa piny jest poprawny
Tak. Zerujesz piny PD5 i PD7.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:36 
Offline
Nowy

Dołączył(a): 29 sty 2016
Posty: 20
Pomógł: 0

Chodzi o to że z wyjścia pinow mam rezystor 1 kohm później dioda i do gnd



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:44 
Offline
Użytkownik
Avatar użytkownika

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

Witam
Po pierwsze ja bym dla czytelności przypisań poszcz. LED'ów pozmieniał ich define na np.:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

jeszcze profesjonalniej: RED_CAR_1_2 ;)
Teraz te if'y : chyba jednoznaczniej byłoby pisać:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

...bo z tym "==" to takie sobie
A jak nie to wykorzystaj switch'e zamiast tych if'ów.

marek2012r napisał(a):
Wyjście pod podciągnięte wewnętrznie pod VCC
:shock:

Pozdr.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 sty 2016, o 23:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

To napisz teraz w którym momencie Ci nie działa.
Czy chodzi o zależności czasowe? Czy to, że diody nie zaświecają się jak chciałeś.
Napisz jaki masz stan po włączeniu zasilania. Jak i kiedy się zmienia.

Pamiętaj, że w swoim kodzie wykonujesz operacje zmiany stanu diod nie raz, tylko dla każdego warunku kilka tysięcy razy. Ale to nie powinno być przyczyną Twojego problemu.

--
Pozdrawiam,
Robert

------------------------ [ Dodano po: 2 minutach ]

Cytuj:
marek2012r napisał(a):
Cytuj:
Wyjście pod podciągnięte wewnętrznie pod VCC

:shock:
Dlatego tak się dopytywałem jak ma podłączone.



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