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



Teraz jest 12 gru 2024, o 00:28


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 13 mar 2019, o 08:07 
Offline
Użytkownik

Dołączył(a): 18 cze 2015
Posty: 368
Pomógł: 0

Witam wszystkich!
Mam prośbę o podpowiedź w temacie pomiaru napięcia na ATiny 45_85. Chciałem użyć napięcie odniesienia, jako Vcc, czyli 5volt. Patrząc na notę pdf wychodzi, że jest taka możliwość
(jeśli dobrze zrozumiałem zapis)

Obrazek


Pytanie moje jest takie, co mam zrobić z pinem PB0 AREF. No nie rozumiem do końca wszystkiego w nocie. Czy powinienem zostawić całkowicie wolny, czy dać kondensator (100n) do masy ?.
Dalej, czy jeśli odpalę w procku moduł ADC,to czy mogę nadal użyć pin AREV PB0, jako zwykły I/O, czy muszę go dodatkowo konfigurować..., czy się nie da.

Generalnie napiszę, co chcę uzyskać:

Na jednym pinie chcę mierzyć napięcie od 1-5volt. Na podstawie mierzonego napięcia chcę zapalać lub gasić diody na 3, a jak się uda, to na 4 pinach. Dodatkowo jeden pin do przycisku.
Pin RESET przestawię, jako I/O, jeśli będzie to konieczne.

Z uruchomieniem przerwań sobie poradziłem, a teraz walczę z pomiarem napięcia po raz pierwszy z tym prockiem i proszę o małą pomoc. Z góry dzięki. Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 09:38 
Offline
Użytkownik

Dołączył(a): 24 cze 2014
Posty: 113
Pomógł: 1

Kolego Robert_1967, Mirek popełnił całą serię poradników na ten temat: http://mirekk36.blogspot.com/2013/06/pr ... acych.html
Ręczę, że jak oglądniesz je ze zrozumieniem i wykonasz te ćwiczenia przeportowując sobie kod na swojego procka, to bez najmniejszego problemu ogarniesz kompleksowo temat :-)
Trochę czasu trzeba na to poświęcić, ale naprawdę warto.

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 09:52 
Offline
Użytkownik

Dołączył(a): 18 cze 2015
Posty: 368
Pomógł: 0

Dzięki tec-dive
Ja oczywiście, że oglądałem wiele poradników Pana Mirka, które zresztą są bezcenne i wyjątkowe w swoim rodzaju. Fakt, ze o adc oglądałem dość dawno, ale z tego co pamiętam, to nie było o ATiny 85, no chyba ze się mylę i zwracam honor ;) . Do tej pory kombinowałem z Atmegami 8, 16, 32 i to co mi potrzeba, to wiem. Mój przypadek wydał mi się trochę "inny" i dla tego założyłem temat, a żeby nie przekopywać się przez tyle poradników. Na pewno odświeżenie poradników przyniosłoby tylko pozytywy, ale jak zawsze brak czasu i szybciej zapytać o jedną, czy dwie kwestie, niż......
Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 10:12 
Offline
Użytkownik

Dołączył(a): 24 cze 2014
Posty: 113
Pomógł: 1

W tych poradnikach nie było mowy o ATtiny85 dlatego napisałem, że jest konieczność przeportowania. Na początek proponuję abyś zweryfikował założenia projektu. Dla przykładu: czy jest jakiś konkretny powód dlaczego chcesz użyć jako napięcia odniesienia Vcc? Może warto rozważyć inne opcje jak wewnętrzne napięcia referencyjne, a tu masz dwa do wyboru (jeśli się nie mylę). Wtedy do AREF podpinasz zewnętrzny kondensator. Nie napisałeś jaką dokładność chcesz uzyskać jeśli chodzi o progi zapalania/gaszenia LED, bo też będzie determinowało wybór odpowiednich metod pomiaru. Jak napiszesz więcej konkretów, to myślę, że otrzymasz sporo trafionych porad.

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 11:49 
Offline
Użytkownik

Dołączył(a): 18 cze 2015
Posty: 368
Pomógł: 0

Dzięki tec-dive
Użycie, jako napięcie odniesienia Vcc nie jest bardzo krytyczne, ale wybrałem takie rozwiązanie, ponieważ sądziłem (może błędnie, dla tego pytałem w pierwszym poście), że "zaoszczędzę" jeden pin do przełączania diody. Jeśli wybiorę wew. źródło odniesienia, to tak, jak pisałeś, muszę podłączyć kondensator i automatycznie pin stracony. Ale może tak się nie da. Nie wiem, dla tego pytam. Chcę wykorzystać tylko jeden pin do pomiaru napięcia, gdzie użyję drabinki rezystorowej + przełączana zworka i na podstawie odczytanego napięcia odpowiednio zapalać diody. Do tego jeszcze jeden pin do
mikro przełącznika. Dla tego chcę wykorzystać jak największą ilość pinów na maksa, w końcowej fazie również RESET.
Oczywiście wziąłbym np. Atmegę8 i dawno bym zapomniał o temacie i nie zaprzątał innym głowę. Cena taka sama powiedzmy i prościej, ale chciałem zacząć przygodę z tak małym prockiem i ogarnąć temat. Trochę szkoda Atmegi na kilka pinów i malutki wsad, jak może uda się wykonać założenia na ATtiny 45/85. Pozdrawiam.

----------------------------------------------------------------------------------------------------------------------------

A więc sprawdziłem na "żywym" organizmie i program działa prawidłowo. Pomiaru dokonuję na PB3, a dioda led jest podpięta do nogi PB0, czyli AREF. Tylko dioda bez kondensatora. Przy kodzie niżej, kiedy podłączę na chwilę Vcc do PB3, to dioda się zaświeca na PB0. Kiedy pod PB3 podepnę GND, to dioda gaśnie.
Tylko mam pytanie, czy z punktu elektronicznego taka konfiguracja jest prawidłowa, czy może się coś wysypać (uszkodzić port, procek...). Z góry dzięki za info.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 13:18 
Offline
Użytkownik

Dołączył(a): 24 cze 2014
Posty: 113
Pomógł: 1

To możesz użyć jako napięcie odniesienia Vcc, a wtedy PB0 używasz jako normalne wyjście dla LED - nie podłączasz już żadnego kondensatora, bo wewnętrzne układy napięć odniesienia są odłączone od tego pinu (po skonfigurowaniu ADMUX tak jak zaznaczyłeś w tabelce). Skoro to ma być tester w jakim okienku napięć (wybieranych zworką) się znajdujemy, to nie jest wymagana duża dokładność i spokojnie możesz użyć Vcc jako źródła odniesienia. Mimo wszystko warto pamiętać do porządnym zaprojektowaniu zasilania i to nie tylko ze względu na to, że użyjemy go jako źródła odniesienia.


Autor postu otrzymał pochwałę

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 mar 2019, o 13:32 
Offline
Użytkownik

Dołączył(a): 18 cze 2015
Posty: 368
Pomógł: 0

Dzięki.
Z tego wszystkiego zapomniałem o kodzie. To tak najprościej, a żeby sprawdzić co się stanie.

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


IVENT_1_PIN odnosi sie do portu PB0, czyli AREF.

Dziękuję za udział w temacie. Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2019, o 06:38 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2587
Pomógł: 128

Zawsze możesz tez użyć charlieplexing.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 mar 2019, o 07:45 
Offline
Użytkownik

Dołączył(a): 18 cze 2015
Posty: 368
Pomógł: 0

Dzięki micky
Bardzo ciekawe rozwiązanie. Wcześniej o nim nie słyszałem. W mojej sytuacji sytuacja jest taka, że diody led symbolizują tylko sposób działania portów, a żebym widział, jak to w ogóle działa i czy działa prawidłowo. Docelowo będzie sterowanie np. bazami tranzystorów, które z kolei będą załączały przekaźniki. Załączanie przekaźników w odpowiedniej kolejności i odstępach czasowych. Nie
wgryzałem się w temat, o którym napisałeś, ale może przy zastosowaniu tranzystorów npn i pnp można byłoby uzyskać podobny efekt ???. Jeszcze raz dzięki.



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

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