Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

obrazek

Autor artykułu: mgr Jerzy Wałaszek
Konsultacje: Wojciech Grodowski, mgr inż. Janusz Wałaszek

©2022 mgr Jerzy Wałaszek
I LO w Tarnowie

obrazek

Mikrokontrolery

ATtiny24/44/84

Konfiguracja końcówek

obrazek

Educational and Non-Profit Use of Copyrighted Material:

If you use Microchip copyrighted material solely for educational (non-profit) purposes falling under the “fair use” exception of the U.S. Copyright Act of 1976 then you do not need Microchip’s written permission. For example, Microchip’s permission is not required when using copyrighted material in: (1) an academic report, thesis, or dissertation; (2) classroom handouts or textbook; or (3) a presentation or article that is solely educational in nature (e.g., technical article published in a magazine).

https://www.microchip.com/about-us/legal-information/copyright-usage-guidelines

SPIS TREŚCI
Podrozdziały

obrazek

PDIP/SOIC


14P3

Wymiary w mm


14S1

Na początek:  podrozdziału   strony 

QFN/MLF


20M1

Na początek:  podrozdziału   strony 

Opis końcówek

VCC

Napięcie zasilania.

GND

Masa.

Port B (PB3:PB0)

Port B jest 4-bitowym dwukierunkowym portem we/wy z wewnętrznymi opornikami podciągającymi (ang. internal pull-up resistors) dla każdej linii portu. Bufory wyjściowe portu B posiadają symetryczną charakterystykę wysterowania z taką samą maksymalną wartością prądów wpływających i wypływających z wyjątkiem końcówki PB3, która posiada funkcję RESET. Aby używać końcówki PB3 jako końcówki we/wy, a nie jako RESET, zaprogramuj ("0") bit bezpiecznikowy RSTDISBL. Jako wejścia końcówki portu B, które wewnętrznie podłączone są do oporników podciągających, będą źródłem prądu, jeśli zewnętrznie wymuszono na nich stan niski 0. Końcówki portu B przechodzą w stan wysokiej impedancji podczas resetu, nawet jeśli zegar nie pracuje. Port B spełnia również różne funkcje alternatywne mikrokontrolera ATtiny24/44/84.

RESET

Wejście resetu. Niski poziom na tej końcówce przez czas dłuższy od minimalnej długości impulsu wygeneruje reset, nawet jeśli zegar mikrokontrolera nie pracuje, lecz pod warunkiem, iż funkcja resetu nie została wyłączona. Minimalna długość impulsu resetującego zależy od napięcia zasilania i wynosi w przybliżeniu:
2000 ns przy VCC = 1,8V
700 ns przy VCC = 3V
400 ns przy VCC = 5V

Krótsze impulsy nie dają gwarancji wygenerowania resetu.

Końcówka RESET może również być używana jako (słaba) końcówka we/wy po wyłączeniu funkcji resetu poprzez zaprogramowanie na 0 bitu bezpiecznikowego RSTDISBL.

Port A (PA7:PA0)

Port A jest 8-bitowym dwukierunkowym portem we/wy z wewnętrznymi opornikami podciągającymi (ang. internal pull-up resistors) dla każdej linii portu. Bufory wyjściowe portu A posiadają symetryczną charakterystykę wysterowania z taką samą maksymalną wartością prądów wpływających i wypływających.

Jako wejścia końcówki portu A, które wewnętrznie podłączone są do oporników podciągających, będą źródłem prądu, jeśli zewnętrznie wymuszono na nich stan niski 0.

Końcówki portu A przechodzą w stan wysokiej impedancji podczas resetu, nawet jeśli zegar nie pracuje.

Port A posiada funkcje alternatywne takie jak wejścia analogowe dla przetwornika analogowo/cyfrowego i komparatora analogowego, wejścia/wyjścia dla timera/licznika, interfejs szeregowy SPI oraz przerwania przy zmianie stanu końcówki. Zobacz do podrozdziału "Alternatywne funkcje portu".

Na początek:  podrozdziału   strony 

Krótki przegląd architektury mikrokontrolera

ATtiny24/44/84 8-bitowym mikrokontrolerem CMOS o niskim poborze prądu opartym na rozszerzonej architekturze RISC AVR. Wykonując zaawansowane instrukcje w pojedynczym cyklu zegara, ATtiny24/44/84 osiąga wydajność bliską 1 MIPS na MHz, co pozwala projektantowi zoptymalizować pobór prądu w funkcji szybkości przetwarzania.

Rdzeń AVR zawiera bogaty zbiór instrukcji z 32 roboczymi rejestrami ogólnego przeznaczenia oraz rejestrami systemowymi. Wszystkie rejestry są bezpośrednio połączone z Jednostką Arytmetyczno Logiczną JAL (ang. Arithmetic Logic Unit ALU), umożliwiając jednoczesny dostęp do dwóch niezależnych rejestrów w pojedynczej instrukcji wykonywanej w ciągu jednego cyklu zegarowego. Wynikowa architektura jest bardziej efektywna, a jednocześnie osiąga wydajność do dziesięciu razy większą od typowych mikrokontrolerów CISC (ang. Complex Instruction Set Computer – komputer o liście złożonych rozkazów).

Mikrokontroler ATtiny24/44/84 udostępnia następujące cechy: 2/4/8KB pamięci FLASH programowanej poprzez ISP, 128/256/512 bajty EEPROM, 128/256/512 bajty SRAM, 12 linii we/wy ogólnego przeznaczenia, 32 robocze rejestry ogólnego przeznaczenia, jeden 8-bitowy timer/licznik z dwoma kanałami PWM, jeden 16-bitowy timer/licznik z dwoma kanałami PWM, przerwania wewnętrzne i zewnętrzne, a 8-kanałowy, 10-bitowy przetwornik A/C o programowanym wzmocnieniu (1x, 20x) dla 12 różnicowych par kanałów, programowalny licznik zegarowy z wewnętrznym oscylatorem, wewnętrzny oscylator kalibrowany oraz cztery wybierane programowo tryby oszczędzania energii. Tryb bezczynny (ang. Idle Mode) zatrzymuje mikroprocesor, pozwalając jednak na pracę pamięci SRAM, timerów/liczników, przetwornika A/C, komparatora analogowego oraz systemu przerwań. Tryb zmniejszania zakłóceń dla przetwornika A/C (ang. ADC Noise Reduction mode) minimalizuje zakłócenia cyfrowe podczas przetwarzania w przetworniku A/C przez zatrzymanie mikroprocesora i wszystkich modułów we/wy za wyjątkiem przetwornika A/C. Tryb wyłączenia zasilania (ang. Power-down Mode) zachowuje zawartość rejestrów, wyłączając wszystkie funkcje układu aż do momentu następnego przerwania lub sprzętowego resetu. W trybie gotowości  (ang. Standby mode) oscylator kwarcowy lub rezonator pracuje, natomiast reszta mikrokontrolera jest uśpiona, pozwalając na bardzo szybki start w połączeniu z niskim poborem prądu.

Urządzenie jest wytwarzane z wykorzystaniem technologii wysokiej gęstości pamięci nieulotnej, którą opracowała firma ATMEL. Wewnętrzna, programowalna poprzez ISP pamięć FLASH pozwala na zaprogramowanie w systemie za pomocą zwykłego programatora pamięci nieulotnych lub za pomocą wbudowanego kodu startowego uruchomionego na rdzeniu AVR.

Mikrokontrolery AVR ATtiny24/44/84 są wspierane przez komplet narzędzi do tworzenia systemów oraz ich oprogramowywania, łącznie z makroasemblerami, kompilatorami języka C oraz zestawami uruchomieniowymi.

Na początek:  podrozdziału   strony 

Informacje ogólne

Zasoby

Firma Atmel, oryginalny producent mikrokontrolerów AVR została wykupiona w roku 2016 przez Microchip Technology, producenta mikrokontrolerów PIC. Pomimo przejęcia mikrokontrolery AVR są wciąż produkowane i dostępne w handlu. Oryginalne zasoby internetowe Atmela są teraz dostępne w witrynie firmy Microchip:
https://www.microchip.com

Do programowania mikrokontrolerów AVR stosowane jest kilka pakietów IDE. Szczególnie polecam Atmel Studio 7, które umożliwia programowanie w języku C oraz w asemblerze. Opis instalacji tego środowiska znajdziesz w tym rozdziale:
Instalacja Atmel Studio 7

Równie popularnym środowiskiem programowania jest Eclipse z uwagi na to, iż może pracować w systemie Linux. Zaletą tego rozwiązania jest to, iż Eclipse pozwala na wykorzystanie tanich programatorów USBasp:
Instalacja Eclipse z AVRDude

Również środowisko MPLAB X firmy Microchip posiada możliwość programowania mikrokontrolerów AVR:
https://www.microchip.com/mplab/mplab-x-ide/avr-support

Przykładowe kody

Ta dokumentacja zawiera proste przykłady kodów programów, które krótko pokazują sposób użycia różnych elementów mikrokontrolera. W przykładach tych zakłada się, iż do programu zostały dołączone odpowiednie pliki nagłówkowe przed kompilacją. Bądź jednak świadomy faktu, iż nie wszyscy producenci kompilatorów języka C dołączają definicje bitów w plikach nagłówkowych, a obsługa przerwań zależy od wybranego kompilatora C. Więcej szczegółów znajdziesz w dokumentacji swojego kompilatora.

Utrzymywanie danych

Wyniki testów niezawodności pokazują, iż liczba błędów utrzymywania danych w pamięciach nieulotnych AVR jest mniejsza od 1 na milion w czasie 20 lat przy temperaturze 85°C lub w czasie 100 lat przy 25°C.

Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2022 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.

Informacje dodatkowe.