ATtiny 2313


9
Ocena: None Średnia: 9 (1 głosujący)

ATtiny 2313(V) jest 8-bitowym mikrokontrolerem firmy ATMEL (http://www.atmel.com/), wykonanym w technologii CMOS. Bazuje on na RISC'owej architekturze, przez co większość rozkazów wykonuje w jednym cyklu zegarowym. Procesor ten zawiera 2kB pamięci flash, programowanej w systemie (bez wyjmowania z podstawki), 128 bajtów nieulotnej pamięci EEPROM oraz 128 bajtów pamięci RAM. ATtiny 2313 posiada 18 uniwersalnych linii wejście/wyjście, dwa Timery oraz interfejs USART.

Kartę Katalogową układu ATtiny2313 można pobrać ze strony producenta. Link bezpośredni dostępny tutaj

Ważniejsze właściwości:
- 120 instrukcji, większość wykonywana w jednym cyklu zegarowym
- 2kB pamięci flash programowanej w systemie o żywotności 10000 cykli zapis/kasowanie
- 128 bajtów wewnętrznej pamięci EEPROM o żywotności 100000 cykli zapis/kasowanie
- 128 bajtów pamięci SRAM
- Programowe blokowanie odczytu pamięci programu (Flash) i danych(EEPROM)
- Jeden 8 bitowy timer z preskalerem
- Jeden 16 bitowy timer z preskalerem
- Cztery kanały PWM
- Komparator analogowy
- Programowany Watchdog
- Interfejs USART
- Tryby oszczędzania energii: Idle i Power-down
- Wewnętrzny oscylator
- 18 Programowalnych linii wejście/wyjście
- Zasilanie 1.8 - 5.5V dla ATtiny2313V oraz 2.7 - 5.5V dla ATtiny2313
- Pracuje z częstotliwością 0 - 10MHz dla ATtiny2313V oraz 0 - 20MHz dla ATtiny2313

Wyprowadzenia:
Na rysunku poniżej przedstawiony jest rozkład wyprowadzeń układu Attiny2313 w obudowie DIP-20

Po dokładny opis układu odsyłam do orginalnej karty katalogowej. Ustawienia fusebitów znajdują się w artykule "Fuse Bity w Mikrokontrolerach AVR"

Uwaga! Rysunki użyte w opisie pochodzą z karty katalogowej, zostały zamieszczone tylko w celach edukacyjnych.




Portret użytkownika gosc

komparator

Witam, chciał bym obsłużyć wbudowany komparator, tzn sprawdzać, czy napięcie na jednym z wejść jest większe/ mniejsze od napięcia na drugim z wejść, z tego co widziałem w aplikacji do poprawnego używania komparatora należy użyć kilku rejestrów, w efekcie tego nie mam pojęcia jak to zrobić (w at89s2051 wystarczyło sprawdzać p3.6 - wirtualne wyjście uP)

Portret użytkownika mirley

Re: Komparator

Narazie nie wiem bo komparator nie był mi potrzebny. Sprawdze jak będe miał dostęp do płytki testowej. Jeśli piszesz w BASCOM'ie to poszukaj w helpie przerwania od komparatora bo jest takie napewno. Będzie tam też pewnie jakiś przykład realizacji

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika szymon12w

wbudowany kwarc

czy ATtiny2313 ma wbudowany kwarc? jeśli tak to ile MHz?

-

szymon12w

Portret użytkownika mirley

Re: Tiny2313

Jest wbudowany oscylator a nie kwarc. Może działać max na 8MHz lub z dzielnikiem 1MHz. Resztę doczytaj w karcie katalogowej w rozdziale Clock Sources czy jakoś tak podobnie :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Krzysztof

Jaki Attiny ?

Mam pytanie następujące: Jakiego rodzaju Attiny używasz ?

Znalazłem 3 typy: 20PU, 20SU, 10SU ?

Chodzi mi o projekty, w których używasz tego właśnie uC :)

-

Nowicjusz :)

Portret użytkownika mirley

Re: tinny

20PU to jest ten w dużej obudowie typu DIL20, natomiast 20SU i 10SU to są wersje do montażu SMD. 20Su -> max 20Mhz, 10SU -> max 10MHz jak dobrze pamiętam

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Krzysztof

Tinny.

Ok, dziękuję. :)

-

Nowicjusz :)

Portret użytkownika atek00

porty w t2313

Witam, może Ty będziesz wiedział dlaczego nie mogę wysterować diody z pinu ustawiając poziom 0.
O ile podaję 1 na pin i diodę podłączam przez tranzystor npn to wszystko gra. Ale podłączając tranzystor pnp i na bazę chcąc podać poziom niski nic nie działa. Bezpośrednio + -> rezystor -> dioda -> pin stan 0 także. Może uwalone mam porty?

Portret użytkownika mirley

Re: Porty

Pomijając fakt że do diody nie jest potrzebny tranzystor to nie ma możliwości żeby nie dało się podłaczyć tranzystorów. Tranzystor NPN podłącza się emiterem do masy(-), na bazę port uC poprzez rezystor np 3,3k, diodę poprzez rezystor między kolektor a +5V. Tranzystor PNP podłącza się emiterem do +5V bazę tak samo jak dla NPN, dioda jest od kolektora poprzez rezystor i do masy. Podłączenie tranzystora PNP emiterem do masy nie zda egzaminu, jeśli o to pytasz

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc22

Problem z taktowaniem i odmierzaniem czasu

Dlaczego attiny2313 20PU który moze byc taktowany 20MHz po wybraniu takiej
częstotliwości jedną sekunde odmierza przez 20 sekund
zeby odmierzał sekunde prawidłowo to musze zmienić taktowanie do 1MHz
prgramuje pod BASCOMEM

Portret użytkownika mirley

Re: Tny2313

jaki program masz napisany i jak ustawiłeś fusebity. Domyślnie jest włączony sprzętowy podzielnik przez 8, dodatkowo timer musi być dobrze skonfigurowany żeby czas był dobrze mierzony

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc22

Niewiem o co chodzi z tymi fusebitam

nie wiem gdzie to sie przestawia a programuje pod bascomem i mam
tą płytke do programowania do oślej łączki jak ją kupiłem to był na niej procesor
który był taktowany w bascomie 8MHz i chodził dobrze jak tylko włożyłem nowy to wolno chodził włożyłem następny i to samo chyba ze ustawie mu 1MHz to jest ok

Dim B as byte
do
incr B
LCD "B=" ; B
if B=10 then b=0
wait 1
cls
loop
end

Portret użytkownika Matiz

Witam... miałem taki sam

Witam... miałem taki sam problem tylko ze Atmega8. Musisz zmienic Fusebity, a mianowicie owierasz BASCOM, i musisz wejsc na manual program (Program Chip F4 -> -program, -manual program), otworzy Ci sie okno Sample Electronic AVR Programmer, bedziesz widział tam FlaschROM, EEPROM i Lock and Fuse bits <- to ostatnie Cie interesuje. Ukażą Ci sie takie nazwy CHip, Lockbits fuse bits i fubebits high. taktowanie znienasz w zakładce FUSEBITS -> Fusebit KLA987 tam masz liste jaką wybierasz zeby twój Chip pracował z wybranym kwarcem. Moze cos zrozumiesz z tego, zyczę powodzenia :)

Portret użytkownika mirley

Re: fusebity

W linijce Fusebit KLA987 powinna być pozycja External crystal resonator i częstotliwość taktowania. Wybierz 8MHZ- co znaczy 8MHz i więcej.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc22

Ok dzieki znalazłem te fusebity

zacząłem tam wybierać te opcje w KLA987 i zaczęło sie zmieniać az wybrałem którąś z opcji
i wszystko padło wyskakuje mi teraz ze nie może zidentyfikowac procesora
czy można ten procesor jeszcze ożywić

Portret użytkownika mirley

Re: Tiny2313

Można jeśli wiesz co wybrałeś..... nauczysz się na przyszłośc żeby nie wybierać byle czego. Miało być "External crystal resonator..." a nie np "external clock"

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc22

Ok wreszcie doszłem do ładu

z tymi parametrami czas odmierza jak szwajcarski zegarek przy
zewnętrznym kwarcu 4Mhz moje parametry fusebitów do bascoma dla procesora
attiny 2313 PU
to:
Fusebit C 1:Divide clock by 8 disable
Fusebit KLA987 011100 Ext Crystal Osc Freqency 3.0-8.0Mhz Startup time 14CK+65
[CKSEL=1100 SUT=01]

Portret użytkownika mirley

Re: fusy

no i tak ma byc :)

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika lopez

odkamieniacz wody

Witam,ja trochę z innej beczki,gdyż widzę tutaj fachowe podejście do w/w układu.
Mam urządzenie do zmiękczania-odwapniania-odkamieniania wody zbudowane właśnie na kości ATTINY 2313V-10PU która współpracuje z mniejszą kością LM393N i ma za zadanie ten cały układ z elementami biernymi wytwarzać częstotliwość pracy zawierającą się między 1kHz - 32 kHz,poprzez wypuszczenie z tego mniejszego scalaka dwóch przewodów które należy nawinąć jako cewki na rurce przez którą przepływa woda,zamieszczam link do tego urządzenia
Moje pytanie do fachowców brzmi czy jest możliwe wytwarzanie takich impulsów częstotliwościowych przez te układy,i czy według Was może mieć to wpływ na uzyskanie mniej kamiennej i przez to zmiękczonej wody ?,pozdrawiam i z góry dziękuję za fachową odpowiedź.

Portret użytkownika mirley

Re: Tiny

Trochę nie rozumiem... mówisz że masz układ zbudowany na Tiny2313 i komparatorze LM393N, a potem pytasz czy układ zbudowany na tym samym tiny2313 będzie działał lepiej.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Frodus

Prośba o podpowiedź

Witam. Bardzo proszę o pomoc, programować "zacząłem" jakoś 2 lata tamu, ale szybko zniechęcilem się gdy nie wychodził mi prosty program.
Programowałem w Bascomie, i problem mam tego typu, że nie za bardzo wiem jak zastosować przerwanie, np pisząc program aby dioda migała wyk. procedurę WAIT, w tym czasie procek zajęty jest tylko liczeniem i do dalszej części programu przejdzie jeśli skończy liczyć.
Jak zrobić jakąś sztuczkę magiczną ;p aby działało np tak:

Naciskam klawisz nr.1
Dioda zapala się na 1s
Gaśnie na 1s
Zapala się na 1s. i gaśnie na 1s (i tak w kółko), aż do momentu naciśnięcia jakiegoś PRZYCISKU który spowodował by inna pracę diody, szybsze miganie bądź wolniejsze.

Chodzi mi tutaj o to jak przerwać procedurę WAIT?

Portret użytkownika mirley

Re: Wait

Nie da się przerwać waita... poza tym to bardzo nie wygodne polecenie, bo nie ma żadnej dokładnej kontroli nad czasem. Trzeba używać timerów i flag, które taktują odpowiednio program. Masz wtedy kontrolę nad wszystkim. Popatrz do moich probramów, nawet w najprostszych używam timera i prawie nigdy waita

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc1123

Zasilanie Attiny2313

Mam problem. Mianowicie nie wiem jak zasilic moj nowo zakupiony uC. Na jednej stronie czytalem ze nalezy "podlaczyc kondensator 100uF jak najblizej pinu VCC uC, a druga nozke kondensatora zasilic masa". Nie wiem czy to prawda i czy to cokolwiek zmieni, bo mikroprocesor ciagle bedzie zasilany niestabilizowana masa. Jestem w tej dziedzinie zupelnie zielony, wiec prosze o prosta odpowiedz. :)

Portret użytkownika matrix

Re: Zasilanie Attiny2313

To jest atmega8 ale zasilanie będzie podobne.

Zasilania minimalne wygląda tak:

A poniżej podłączenie zalecane:

Zasilanie ogólnie jest podobne z tym że attiny2313 nie ma ADC.