logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Regulacja prądu i odbiór sygnałów w Atmega8 - jak to działa?

Mefu 15 Lis 2005 20:19 2730 14
REKLAMA
  • #1 1993217
    Mefu
    Poziom 22  
    Posty: 649
    Pomógł: 14
    Ocena: 5
    Witajcie.

    Jeszcze sie nie wziołem za nauke programowania, ale mam kilka pytań do tego procesora. Pytania lamerskie ale dopiero zaczynam przygode z mikrokontrolerami więc prosze o wyrozumiałość.

    Z tego co sie dowiedziałem do tej pory na 23 programowalnych wyprowadzeniach procesora można "wywoływać" napięcie dodatnie o wydajności prądowej 20mA (zgadza sie?). Mam pytanie.... czy można uzyskać odpowiednio mniej ? np. regulacja od 0-20mA. Wyprowadzenia te mogą pracować też jako "odbiorniki" sygnałów zewnętrnych (zgadza sie?) I znowu pytanie.... czy odbiór tych sygnałów też jest w jakimś przedziale np. pomiar napięcia 0-1V.

    To by było na tyle..... Jeżeli napisałem coś głupiego i niedorzecznego to przepraszam...... dopiero sie ucze :cry:
  • REKLAMA
  • Pomocny post
    #2 1993255
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Procesory operuja na wartosciach cyfrowych. Dla nich obowiazuja tylko dwa stany ktore potrafia rozroznic, jest napiecie i nie ma napiecia. Nic posrodku. Wydajnosc pradowa wyjscia jest podana po to zebys sie nie dziwil gdy na wyjscie uC dasz zarowke 1kW a ona nie bedzie swiecic, albo zebys nie uszkodzil wyjscia nadmiernym pradem. Jesli chcesz sobie regulowac prad usisz zrobic przetwornik cyfrowo-analogowy ktory zamieni sygnal cyfrowy (jakas liczbe) na prad o odpowiedniej wartosci. Najpopularniejszym przetwornikiem tego typu jest DAC0808
    Pozdro
    Dexter
  • REKLAMA
  • #3 1993289
    Mefu
    Poziom 22  
    Posty: 649
    Pomógł: 14
    Ocena: 5
    Tak też mi sie wydawało że to działa binarnie :)

    A czy przetwornik C/A zmienia częstotliwość na prąd ?? Bo rozumiem że tylko częstotliwość sygnału jest wstanie wysłać/odebrać µC ??
  • REKLAMA
  • Pomocny post
    #4 1993490
    valarian
    Poziom 22  
    Posty: 647
    Pomógł: 33
    Ocena: 112
    Od siebie dodam tylko, ze uC odbiera sygnal w postaci cyforowej, natomiast ATMega8 [i wiele innych uC] ma wbudowne przetworniki A/C, co na niektore piny pozwala podawac sygnaly analogowe...
  • Pomocny post
    #5 1993526
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Nie. Jak zapewne wiesz liczby w swiecie komputerow sa reprezentowane za pomoca bitow. Bit przyjmuje jeden z dwoch stanow 0 lub 1. Im wiecej bitow tym wieksza liczbe dzieki nim mozemy przedstawic. Dzieki 8-miu bitom mozemy przedstawic maksymalnie 256 wartosci w tym zero. Ale do przedstawienia takiej cyfry potrzebujemy osmiu wyprowadzen. Atmega8 jest uC osmiobiotowym i jej porty sa rowniez osmiobitowe (nie wszystkie sa pelne) i zeby zrobic przetwornik cyfrowo analogowy osmiobitowy musisz wykorzystac osiem wyprowadzen podlaczyc do przetwornika a z przetwornika jest jedno wyjscie z ktorego wyplywa prad z zakresu 0-Imax z rozdzielczoscia 1/256.
    Owszem to o czym mowisz to da sie zalatwic, czyli generowac na jednej nozce uC jakas czestotliwosc i dorzucic przetwornik czestotliwosc-napiecie lub czestotliwosc-prad, ale jest to zadko spotykane rozwiazanie i to juz nie mozna nazwac konwersja cyfrowo-analogowa. Swiat cyfrowy zaklada rowniez statyczne dzialanie co sie automatycznie kloci z pojeciem okresu i czestotliwosci.
    Pozdro
    Dexter
  • #6 1993777
    Mefu
    Poziom 22  
    Posty: 649
    Pomógł: 14
    Ocena: 5
    zajżałem do dokumentacji atmeg8 i okazuje sie ze ma tylko 1 przetwornik A/C :? trochu mało :?

    Dodano po 18 [minuty]:

    acha..... ale jak np. potrzebuje rozdzielczość 1/16 to moge zastosować tylko 4 piny ?? Widze że w nocie katalogowej wyprowadzenia są pogrupowane tak PB0-7 PC0-7 PD0-7. Czyli właściwie to jednego układu moge podłączyć 3 przetworniki A/C (+wbudowany), właśnie do tych portów ??

    A jak sie ma sprawa przetworników C/A..... czy na wyjściu jest regulowane napięcie ?? Czy jego zakres zależy od przetornika czy jakiejś regulacji ??

    To samo z A/C Jak jest regulowane ??


    Powynagradzałem za wszystkie odpowiedzi :)
  • #7 1993866
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Tak ma jeden przetwornik ale 5 wejsc jesli dobrze pamietam i w programie mozesz sobie te wejscia przelaczac. Wbudowane przetworniki zawsze beda ciut gorsze od przetwornikow ktore sa dostepne w postaci osobnych kostek, ale do wiekszosci zastosowan ich parametry sa wiecej niz zadowalajace.
    Pozdro
    Dexter
  • #8 1993996
    valarian
    Poziom 22  
    Posty: 647
    Pomógł: 33
    Ocena: 112
    ATMega8 ma 5 lub 6 wejsc dla przetwornika A/C, wiec to tak jakby kilka osobnych przetwornikow.. Do kazdego mozesz podpiac inne urzadzenie i mierzyc sygnal z innego zrodla...
    Co do podlaczania zewnetrznych przetwonikow A/C, to na pewno da sie podlaczyc do tego uC dwa przetworniki 8-bitowe... Czyli w sumie 16 pinow... Nie wiem, czy starczy na trzeci, bo niektore piny nie moga pracowac jako wyjscia...
  • #9 1994059
    Mefu
    Poziom 22  
    Posty: 649
    Pomógł: 14
    Ocena: 5
    No żeczywiscie.... tylko 2 8-mio bitowe :? Ale oczywiście pod wyjścia można też podłączać bramki logiczne prawda ?? I też nic nie zaszkodzi podłączyć wyjście prosto pod bazę tranzystora, który czymś będzie sterował........ prawda ??

    A jeżeli mam przetworkin C/A 8-bitowy, to czy moge go podłączyć pod 4 wyprowadzenia zeby pracował jako 4-bitowy ??

    Powiedzcie mi tylko czy moje rozumowanie jest poprawne..... bo mam taki pomysł..... są dwa przyciski impulsowe na 2 wejściach i jeden przetworkin C/A 8-bitowy. Jeżeli wcisne przycisk wartość liczby z zakresu 0-255 na wyjściu przetwornika, spadnie lub zwiększy sie o 1 (w zależności który przycisk). Póżniej wyjście C/A podłączam pod baze tranzystora, i tak mam regulacje wzmocnienia dźwięki we wzmacniaczu przy użyciu 2 przycisków. To tylko taki szkic, ale czy dobrze rozumuje ??
  • REKLAMA
  • #10 1994093
    valarian
    Poziom 22  
    Posty: 647
    Pomógł: 33
    Ocena: 112
    Piny mozna podpiac zarowno pod bramki logiczne, jaki i pod baze tranzystora, oczywiscie... Ewentualnie mozna dac jakis niewielki rezystor, tak na wszelki wypadek...

    Nie wiem, czy z 8-bitowego przetwornika tak latwo zrobic 4-bitowy, ale wydaje mi sie, ze nie... Bedzie trzeba zastosowac oddzielny [ale pewnien jestem tylko na 80%]... :-)

    Natomiast co do tego szkicu, to zdaje sie poprawny, ale nie wiem, czy czy nie chodzilo Ci o "wartosc liczby z zakresu 0-255 na WEJSCIU przetwornika"... Tak to by mialo sens :-)
  • #11 1994532
    genetix
    Poziom 24  
    Posty: 669
    Pomógł: 42
    Mefu napisał:
    A jeżeli mam przetworkin C/A 8-bitowy, to czy moge go podłączyć pod 4 wyprowadzenia zeby pracował jako 4-bitowy ??


    Jeśli ten przetwornik ma wejścia równoległe to tak.
    Możesz podłączyć przetwornik na 2 sposoby:

    1. Podłączyć starsze bity i korzystać z całego zakresu przetwarzania, lecz z niedokładną regulacją (tzn. 16 wartości co 16-ty "krok")

    2. Podłączasz młodsze 4 bity do procesorka i zyskujesz dokładną regulację w bardzo wąskim zakresie ("okienko" 1/16 całego zakresu). Wyboru "okienka" w którym będzie pracował Twój DAC dokonasz podłączając na stałe starsze bity do Vcc lub GND
  • #12 1995510
    merlinthe
    Poziom 12  
    Posty: 56
    Pomógł: 3
    Ocena: 2
    Dexter nie wspomniał o PWM- jednej z podstawowych funkcji kontrolera.

    Dzięki PWM (pulse width modulation + ew. układ całkujący) w praktyce otrzymuje się regulację wysokości napięcia i wykorzystuje się to bardzo powszechnie np. regulowania obrotów silników. ATMega ma 3 kanały PWM - czyli w danej chwili możesz mieć 3 różne analogowe wartości na wyjściach.
  • #13 1996810
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Nie wspomnialem bo jak widac autor topicu jest poczatkujacy i za duzo informacji czasami szkodzi a nie pomaga. Owszem PWM da sie dosc latwo adoptowac do regulacji obrotow silnikow ale zeby uzyskac z niego w latwy sposob precyzyjny przetwornik C/A to gorzej. Duzo zalezy od obciazenia. Pewna wartosc wypelnienia przy obciazeniu X da inna wartosc napicia niz przy obciazeniu Y zakladajac ze przetwornikiem jest prosty filtr LC. Zeby uniknac tego typu problemow trzeba stosowac "wtorniki" Czyli w zasadzie dostawiac uklad scalony. A jak juz dostawiac to chyba lepiej zakupic gotowy przetwornik np. sterowany przez I2C i w ten sposob gdy potrzeba mozna rozszerzac liczbe przetwornikow do wiekszej ilosci zajmujac tylko dwie nozki proca.
    Pozdro
    Dexter
  • #14 1997305
    merlinthe
    Poziom 12  
    Posty: 56
    Pomógł: 3
    Ocena: 2
    O - to się nazywa profesjonalna odpowiedź :) I mi dużo powiedziała.

    Możesz dorzucić jeszcze jakieś numerki przetworników DAC (i przy okazji ADC), takich działających na I2C i wolnostojących, żeby było o co w sklepie pytać?
  • #15 2000529
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Tego typu przetwornikow jest duzo. Ja osobiscie korzystalem tylko z jednego: osmiokrotnego 6-cio bitowego TDA 8444. Chcesz znalezc wiecej informacji to wpisz do google: I2C + "Digital to analog converter"
    Pozdro
    Dexter

Podsumowanie tematu

✨ Atmega8 to mikrokontroler 8-bitowy z 23 programowalnymi wyprowadzeniami, które mogą dostarczać prąd do 20 mA w stanie wysokim, jednak nie jest możliwa bezpośrednia regulacja prądu w zakresie 0-20 mA na pojedynczym pinie, ponieważ procesor operuje sygnałami cyfrowymi (stan wysoki lub niski). Regulację analogową można uzyskać stosując przetwornik cyfrowo-analogowy (DAC), np. DAC0808, który konwertuje sygnał cyfrowy na analogowy prąd lub napięcie. Atmega8 posiada wbudowany przetwornik analogowo-cyfrowy (ADC) z 5 lub 6 wejściami, umożliwiający pomiar napięć analogowych na wybranych pinach. Wbudowany ADC ma ograniczoną rozdzielczość i parametry, ale do większości zastosowań jest wystarczający. Możliwe jest także podłączenie zewnętrznych przetworników ADC i DAC, często sterowanych interfejsem I2C, co pozwala na rozszerzenie liczby kanałów pomiarowych i wyjściowych. Przetworniki DAC zwykle wymagają ośmiu linii danych, ale można je też używać w trybie 4-bitowym, podłączając odpowiednio starsze bity do stałych poziomów napięcia, co zmienia zakres i rozdzielczość regulacji. Alternatywnie, do regulacji analogowej sygnału wyjściowego stosuje się modulację szerokości impulsu (PWM), którą Atmega8 obsługuje na trzech kanałach, umożliwiając efektywną regulację napięcia po filtracji. Jednak PWM nie jest idealnym DAC-em ze względu na zależność napięcia wyjściowego od obciążenia i konieczność stosowania filtrów i wzmacniaczy buforowych. W praktyce do precyzyjnej regulacji analogowej lepiej stosować dedykowane przetworniki DAC sterowane cyfrowo, np. przez I2C. Wyjścia mikrokontrolera można bezpiecznie podłączać do baz tranzystorów lub bramek logicznych, zalecane jest stosowanie rezystorów ograniczających prąd. Przykładowy projekt regulacji wzmocnienia wzmacniacza audio może polegać na sterowaniu wartością cyfrową DAC za pomocą przycisków impulsowych, co pozwala na krokową zmianę sygnału analogowego sterującego tranzystorem.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA