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

©2023 mgr Jerzy Wałaszek
I LO w Tarnowie

obrazek

Mikrokontrolery

ATtiny25/45/85

Przegląd

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

obrazek

Przegląd

Mikrokontroler ATtiny25/45/85 jest 8-bitowym mikrokontrolerem CMOS o niskim poborze energii opartym na ulepszonej architekturze AVR RISC (ang. Reduced Instruction Set Computer – komputer o zredukowanej liście rozkazów). Dzięki wykonywaniu zaawansowanych instrukcji w ciągu pojedynczego cyklu zegarowego ATtiny25/45/85 osiąga wydajność około 1MIPS'a (ang. Million Instructions Per Second) na 1MHz, co pozwala projektantowi systemu zoptymalizować pobór mocy w stosunku do prędkoś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).

ATtiny25/45/85 udostępnia następujące cechy:2/4/8KB pamięci FLASH programowanej poprzez ISP, 128/256/512 bajtów EEPROM, 128/256/512 bajtów SRAM, 6 linii we/wy ogólnego przeznaczenia, 32 robocze rejestry ogólnego przeznaczenia, jeden 8-bitowy timer/licznik z trybami porównań, jeden 8-bitowy timer/licznik o dużej prędkości, uniwersalny interfejs szeregowy, przerwania wewnętrzne i zewnętrzne, a 4-kanałowy, 10-bitowy przetwornik A/C, programowalny licznik zegarowy z wewnętrznym oscylatorem oraz trzy wybierane programowo tryby oszczędzania energii. Tryb bezczynny (ang. Idle Mode) zatrzymuje mikroprocesor, pozwalając jednak na pracę pamięci SRAM, timera/licznika, przetwornika A/C, komparatora analogowego oraz systemu przerwań. 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. Tryb zmniejszania zakłóceń dla przetwornika A/C (ang. ADC Noise Reduction Mode) zatrzymuje mikroprocesor i wszystkie moduły we/wy za wyjątkiem przetwornika A/C w celu zminimalizowania szumu od przełączeń w sieciach logicznych mikrokontrolera podczas przetwarzania napięć wejściowych w przetworniku A/C.

Układ mikrokontrolera jest wytwarzany 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 ATtiny25/45/85 są wspierane przez komplet narzędzi do tworzenia systemów oraz ich oprogramowywania, łącznie z makroasemblerami, kompilatorami języka C oraz zestawami uruchomieniowymi.

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 programów

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.

Dla rejestrów we/wy znajdujących się w rozszerzonej pamięci we/wy należy zastąpić instrukcje IN, OUT, SBIS, SBIC, CBI i SBI instrukcjami, które umożliwiają dostęp do rozszerzonej pamięci we/wy. Zwykle oznacza to instrukcje LDS i STS połączone z SBRS, SBRC, SBR i CBR. Nie wszystkie mikrokontrolery AVR zawierają rozszerzoną pamięć we/wy.


Pojemnościowe wykrywanie dotyku

Biblioteka QTouch opracowana przez ATMEL'a udostępnia łatwe w użyciu rozwiązanie dla interfejsów dotykowych na mikrokontrolerach Atmel AVR. Biblioteka ta zawiera wsparcie dla metod pobierania danych QTouch® i QMatrix®.

Wykrywanie dotyku (ang. touch sensing) można w prosty sposób dołączyć do dowolnej aplikacji przez połączenie z jej kodem biblioteki QTouch i użycie funkcji interfejsu API udostępnianego przez tę bibliotekę w celu zdefiniowania kanałów dotykowych i czujników dotyku. Aplikacja następnie wywołuje funkcje API do pobrania informacji z kanałów i określania stanu czujnika dotyku.

Biblioteka QTouch jest bezpłatna i można ją pobrać z witryny Microchip'a (w 2016 firma Microchip przejęła swojego konkurenta Atmel i obecnie udostępnia wszystkie materiały pierwotnie udostępniane w sieci przez Atmela), na której znajdziesz również dokumentację oraz przewodniki dla użytkownika.

Utrzymywanie danych

Wyniki badania niezawodności pokazują, że dane są tracone z częstotliwością dużo mniejszą od 1 PPM (ang. parts per million – części na milion) przez 20 lat w temperaturze 85°C lub przez 100 lat w temperaturze 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
©2023 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.