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



Teraz jest 26 mar 2026, o 03:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 5 lip 2013, o 14:54 
Offline
Użytkownik

Dołączył(a): 19 lut 2013
Posty: 50
Pomógł: 0

Witam, na początku zaznaczę że oglądałem wszystkie poradniki o przetworniku ADC, które bardzo mi pomogły, ale niestety u mnie parę rzeczy nie działa prawidłowo, dlatego piszę na forum bo sam nie mogę do tego dojść.

Posiadam moduł uruchomieniowy atmega8, a będę mierzył napięcie z potencjometru.

Po 1: Jeśli ustawiam kanał ADC w rejestrze MUX... na mierzonym kanale chyba powinno być 0V(jak na filmiku), u mnie jest 3,48V gdy pin wisi w powietrzu, jeśli podłączę do potencjometru na którym jest np. 0,50V, to przy podłączonym kanale wzrasta do 2,80V co daje mi wynik 255... Z kolei jeśli mierzę napięcie na bateryjce 1,5V, mierzy prawidłowo. Co zrobić aby po uruchomieniu ADC zaczynało się od 0?

2: Niezależnie od stanu flagi ADLAR, mam pomiary z rozdzielczością 8 - bitową... Jak uzyskać rozdzielczość 10 - bitową?

Oto kod:

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


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


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 odpowiedzi.

Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2013, o 15:45 
Offline
Użytkownik

Dołączył(a): 11 lut 2013
Posty: 140
Lokalizacja: Kraków
Pomógł: 10

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


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

1. zaznaczylem komentarzmi czego brakowalo i wstawilem to. w pliku header przenioslem czesc kodu tam gdzie jego miejsce..
2. sprawdz czy funkcja LCD_int nie przyjmuje czasem argumentow 8bitowych bo to moze byc problemem (obcina starsze bity) i dlatego jest blad w pomiarze



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2013, o 15:55 
Offline
Moderator
Avatar użytkownika

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

miccaldo napisał(a):
Jeśli ustawiam kanał ADC w rejestrze MUX... na mierzonym kanale chyba powinno być 0V(jak na filmiku)


Na filmiku nic takiego nie było - chyba że nie na moim ;)

jak pin ADC wisi w powietrzu to będziesz miał SIECZKĘ - czyli nie wiadomo jakie wartości i mogą pływać - zapomnij więc po pomiarach z pinu wiszącego w powietrzu

jak chcesz mieć ZERO jak na filmiku panie - to obejrzyj go jednak jeszcze raz ;) bo tam jest dzielnik i zero jest wtedy gdy skręcony suwak jest na zero....

------------------------ [ Dodano po: 5 minutach ]

ten void o którym kolega wyżej pisze akurat nie przeszkadza że go nie ma ale ...

ale widać od razu że kolega nie trzyma się takich pełnych prawidłowych zasad dobrego pisania kodów

dlatego poza poradnikiem warto jednak zajrzeć do książki:

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

bo tam masz uzupełnienie wszystkich swoich braków ...

poza tym kod wygląda ok i musi działać - kłopot polega na tym że ty powinieneś umieścić tu swój schemat jak podłączasz ten potencjometr itp .... bo problemu dopatrujesz się w kodzie a możesz go mieć w sprzęcie

a zatem nie jest tak jak w twoim podpisie, że "jest potencjometr - jest impreza" ;) trzeba ten podpis uzupełnić o tak:

"jest potencjometr i schemat - jest impreza" ;)

_________________
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 lip 2013, o 16:09 
Offline
Użytkownik

Dołączył(a): 11 lut 2013
Posty: 140
Lokalizacja: Kraków
Pomógł: 10

tyle że podpis jest mój, nie kolegi.. chyba ze ja coś źle zrozumiałem

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

i owszem, schemat jak najbardziej by sie przydal



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2013, o 16:22 
Offline
Moderator
Avatar użytkownika

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

matisek1233 napisał(a):
tyle że podpis jest mój, nie kolegi.. chyba ze ja coś źle zrozumiałem


a nie ;) to ja źle zrozumiałem a ty rzeczywiście dobrze przeniosłeś ;)

_________________
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: 9 lip 2013, o 20:10 
Offline
Użytkownik

Dołączył(a): 19 lut 2013
Posty: 50
Pomógł: 0

Z początku podłączyłem potencjometr w ten sposób:
Obrazek

I nie działało, ADC wskazywało cały czas 255.

Teraz mam podłączone w ten sposób:
Obrazek

Nie sądzę że jest to prawidłowo, ale pomiar działa. Jeśli chodzi o rozdzielczość, to jak radził matisek1233, po przyjęciu za argument uint16_t dla funkcji LCD_Int(), wyświetlacz już wskazuje 10 bitową wartość. Dziękuję za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 lip 2013, o 21:50 
Offline
Moderator
Avatar użytkownika

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

drugi schemat to niestety jakieś koszmarne nieporozumienie :( i nie mów że dobrze działa

Pierwszy schemat jest OK = masz dzielnik /2 i wystarczyło włączyć napięcie odniesienia 2,56 i już miałbyś pełen zakres ADC

a ty widzę robisz na zasadzie troszkę "zgaduj zgadula" tu coś zmienię i może wyjdzie

_________________
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: 10 lip 2013, o 19:44 
Offline
Użytkownik

Dołączył(a): 19 lut 2013
Posty: 50
Pomógł: 0

Ale kiedy podłączam według pierwszego schematu i przekręceniu suwaka potencjometru na 0, na jego wyjściu jest nie 0V, a 2,75V... i tego nie rozumiem dlaczego tak się dzieje, robię tak samo jak na filmiku ale coś jest nie tak.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lip 2013, o 20:47 
Offline
Użytkownik

Dołączył(a): 27 mar 2012
Posty: 511
Lokalizacja: Sląsk
Pomógł: 14

złóż cały układ od nowa, gdzieś musiałeś zrobić babola :)

_________________
Programowanie to styl życia :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 lip 2013, o 21:03 
Offline
Moderator
Avatar użytkownika

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

Janadamis napisał(a):
gdzieś musiałeś zrobić babola


racja - to jest oczywiste jak drut - więc dokładnie zamiast wymyślać schematy z kosmosu jak ten drugi - zrób to od nowa i poprawnie.

_________________
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: 12 lip 2013, o 18:57 
Offline
Użytkownik

Dołączył(a): 19 lut 2013
Posty: 50
Pomógł: 0

A proszę zobaczyć na jeszcze prostszym przykładzie z samym dzielnikiem napięcia, że nadal ta sama sytuacja.

ObrazekObrazek

Przepraszam za odwrócone zdjęcie.

Czy podłączam coś źle?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 lip 2013, o 20:40 
Offline
Moderator
Avatar użytkownika

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

Panie , ale co z tych zdjęć widać ? - no jakieś tam kabelki i ze dwa rezystory, do tego LCD i miernik

człowieku co te zdjęcia mają pokazać ? :(

A gdzie procesor ? jak to jest do niego podłączone ? no chyba że to ma być REBUS - ZAGADKA ? ;)

_________________
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: 13 lip 2013, o 07:21 
Offline
Użytkownik

Dołączył(a): 27 mar 2012
Posty: 511
Lokalizacja: Sląsk
Pomógł: 14

Sprawdź dokładnie jak masz podłączona nogę od uC AVCC. Bo to jest zasilanie modułu ADC

_________________
Programowanie to styl życia :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lip 2013, o 13:00 
Offline
Użytkownik

Dołączył(a): 19 lut 2013
Posty: 50
Pomógł: 0

No tak, rzeczywiście powinienem opisać to zdjęcie.

Czerwony i czarny kabelek to plus i minus zasilacza 5V. Do masy podłączyłem masę uC i miernika. Dzielnik rezystorowy bez podłączonego kanału ADC(pomarańczowy kabelek) powoduje spadek jak widać 0,9V. Chcę zmierzyć to napięcie za pomocą A/C, ale kiedy podłączę kanał ADC, napięcie wzrasta do 3,01V. Jak podłączę kanał do np. czujnika temperatury czy potencjometru jest to samo, uniemożliwia mi to dalsze realizowanie projektu :(

Proszę oto schemat podłączenia atmegi:

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lip 2013, o 13:21 
Offline
Moderator
Avatar użytkownika

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

Miał być schemat jak ty to podłączyłeś a nie zdjęcia jakichś kabelków, potem jakiś skan schematu, a potem jakaś powieść o tym jak to kabelki są ze sobą łączone i o spadkach napięć.

Dokąd nie nauczysz się sam narysować schematu np w Eaglu, tego co zrobiłeś - dotąd nie zrozumiesz o co w tym chodzi. Czy tak ciężko ci zrozumieć, że jak wciąż mówię o rozrysowaniu schematu to chodzi mi o to że to już samemu tobie by pomogło ... sorki ale ja się odłączam

_________________
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: 31 lip 2013, o 12:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 mar 2012
Posty: 177
Pomógł: 9

dzielnik dobrze działa, tak mi się zdaje że problemem mogą być źle ustawione bity ADC albo po prostu pod zły pin uC podpinasz "pomarańczowy kabelek". Ta płyteczka cod wyświetlaczem to z jakiegoś kitu?

EDIT:

najprostszym sposobem będzie zmierzenie napięcia na pinie do którego jest podłączony pomarańczowy kabelek, albo chociaż powiedz do którego pinu jest podłączony



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

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