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



Teraz jest 23 lut 2026, o 08:59


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 12 sty 2013, o 16:22 
Offline
Nowy

Dołączył(a): 09 wrz 2012
Posty: 17
Pomógł: 0

Witam, napisałem program, a raczej przepisałem z książki Pana Mirka z pewnymi moimi modyfikacjami. Jednak nie działa to jak należy, tzn. sprawdzam napięcie na baterii poprzez przetwornik AC, lecz nie pokazuje poprawnej wartości. Napięcie na baterii waha się w przedziale od 8,4V-przy maksymalnie naładowanej do 6V przy rozładowanej. Dzielnik napięcia zrobiłem z 8,4V na 2,56V i wykorzystałem Vref=2,56V. R1=120ohm R=270ohm. Pracuje na atmega16 8Mhz. Wartość "pm" wyświetla mi na wyświetlaczu równą 921 co przy ręcznych obliczeniach wychodzi, że powinno być 7,5V, a na wyświetlaczu wartość napięcia jaką mi wyświetla równa jest 0,1V...Wyjście z dzielnika podłączone jest do PA7. W pliku main.c zawarte są również niektóre linijki służące do odbioru sygnału z pilota RC5, lecz to jest mało istotna sprawa. W czym może być błąd?

adc.c

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


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.


Do prezentowania kodu używamy znaczników syntax=c - poprawiłem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2013, o 16:57 
Offline
Nowy

Dołączył(a): 09 wrz 2012
Posty: 17
Pomógł: 0

Dzięki, już działa :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2013, o 19:41 
Offline
Moderator
Avatar użytkownika

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

leszek90 --> masz w tym kodzie jeszcze jeden poważny błąd, który wprawdzie na razie nie powoduje u ciebie negatywnych skutków ale jak tylko zaczniesz kombinować z pomiarami z co najmniej dwóch kanałów to niestety dostaniesz poważnej czkawki.

Dlatego ZDECYDOWANIE polecam jednak zaglądać na stronę uaktualnień do książki:

http://atnel.pl/uaktualnienia-programow-do-dvd.html

i zobacz odnośnie ADC z książki masz tam BARDZO WAŻNY artykuł, który powinieneś już dawno przeczytać. Wiedza z niego przyda ci się nie tylko przy ADC zobaczysz:

http://atnel.pl/domyslna-promocja-do-typu-int.html

m.in wynika z niego dlaczego np zamiast tak:

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 spokojnie napisać 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.


i też będzie taki sam poprawny efekt. Warto jednak zrozumieć dlaczego.


Autor postu otrzymał pochwałę

_________________
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 sty 2013, o 08:54 
Offline
Moderator
Avatar użytkownika

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

GwynBleidD napisał(a):
No nie jest ważne do końca którą zmienną się będzie rzutować na uint32 :) Ważne, żeby którąkolwiek... Przynajmniej w tym przykładzie.

Tak tak - mi nie chodziło o to żeby pokazać, że twój przykład jest zły, skąd? ... po prostu chciałem pokazać że rzutowanie można też zrobić dzięki dodatkom UL do stałych dosłownych.

_________________
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: 14 sty 2013, o 14:04 
Offline
Nowy

Dołączył(a): 09 wrz 2012
Posty: 17
Pomógł: 0

Ok, dzięki wielkie za odpowiedzi, przeczytam dokładnie ten artykuł Panie Mirku. Jednak w moim programie nie muszę korzystać z większej ilości portów ADC. Z dzielnikiem akurat jest taka sprawa, że bateria będzie o wiele wyższymi prądami rozładowywana, rzędu 1.5A, więc te 21mA jest raczej mało znaczące :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 sty 2013, o 15:33 
Offline
Moderator
Avatar użytkownika

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

rozumiem - ale wiesz lepiej o tym wiedzieć wcześniej niż PÓŹNIEJ ;) nieprawdaż ?

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

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