kategoriler: Pratik Elektronik, Mikrodenetleyici devreleri
Görüntülenme sayısı: 21376
Makaleye Yorumlar: 0
AVR mikrodenetleyicilerinin çeşitleri ve düzenlenmesi
AVR - Bu, şirketin ürettiği popüler mikrodenetleyiciler ailesinin adıdır. Atmel. Bu marka altında ABP'ye ek olarak, mikrokontrolörler ve ARM ve i8051 gibi diğer mimariler.
AVR mikrodenetleyicileri nelerdir?

Üç tür mikrodenetleyici vardır:
-
AVR 8 bit.
-
AVR 32 bit.
-
AVR xMega
On yıldan fazla bir süredir, en popüler olan 8 bitlik mikrodenetleyici ailesi. Birçok jambon ondan mikrodenetleyici incelemeye başladı. Hemen hemen hepsi, LED yanıp sönen ışıklar, termometreler, saatler gibi basit el sanatlarını yaparak, aydınlatma ve ısıtma cihazlarını kontrol etmek gibi basit otomasyonları yaparak programlanabilir kontrolörlerin dünyasını öğrendi.
Mikrodenetleyiciler AVR 8-bit, sırayla, iki popüler aileye ayrılır:
-
ATTiny - adı, en küçük (küçük - genç, genç, en genç) temelde 8 veya daha fazla pime sahip olduğunu gösterir. Belleklerinin ve işlevlerinin hacmi genellikle aşağıdakilerden daha mütevazıdır;
-
Atmega - Daha gelişmiş mikrodenetleyiciler daha fazla bellek, pim ve çeşitli fonksiyonel ünitelere sahiptir;

Mikrodenetleyicilerin en güçlü alt ailesi xMega'dır - bu mikrodenetleyiciler 44'den 100'e kadar çok sayıda pim bulunan durumlarda mevcuttur. Çok sayıda sensör ve aktüatörlü projeler için çok şey gereklidir. Ayrıca, artan bellek kapasitesi ve hızı yüksek performans elde etmenizi sağlar.

Transkript: Pin (eng. Pin - iğne, pin) mikrodenetleyicinin veya dedikleri gibi bacağın çıktısıdır. Dolayısıyla "pinout" kelimesi - yani. her bir bacağın amacı hakkında bilgi.
Mikrodenetleyiciler ne içindir ve ne içindir?
Mikrodenetleyiciler hemen hemen her yerde kullanılır! 21. yüzyıldaki hemen hemen her cihaz bir mikrodenetleyici üzerinde çalışır: ölçüm cihazları, aletler, ev aletleri, saatler, oyuncaklar, müzik kutuları ve kartpostallar ve daha fazlası; yalnızca numaralandırma birkaç sayfa metin alacaktır.
Geliştirici, mikrodenetleyicinin girişine kadar altındaki analog sinyali kullanabilir ve değeri üzerindeki verileri işleyebilir. Bu çalışma bir analog-dijital dönüştürücü (ADC) tarafından gerçekleştirilir. Bu işlev, kullanıcının mikrodenetleyici ile iletişim kurmasına ve sensörler kullanarak çevredeki dünyanın çeşitli parametrelerini algılamasına izin verir.

Ortak AVR mikro denetleyicilerinde, örneğin, ATMega3282017 yılında birçok devre kartının kalbi olan Arduinoama daha sonra onlar hakkında. Kullanılan 8 kanal ADCbit derinliği ile 10 bit. Bu, değeri 8 analog sensörden okuyabileceğiniz anlamına gelir. Ve dijital sensörler, açık olabilen dijital çıkışlara bağlanır. Bununla birlikte, bir dijital sinyal sadece 1 (birim) veya 0 (sıfır) olabilirken, analog bir sinyal sonsuz sayıda değer alabilir.

Açıklama:
kapasite Analog girişin kalitesini, doğruluğunu ve hassasiyetini karakterize eden bir değerdir. Kulağa çok net gelmiyor. Biraz pratik: 10 bitlik bir ADC, 10 bitlik bir bellekteki bir bağlantı noktasından analog bilgileri kaydeder, başka bir deyişle, sorunsuz bir şekilde değişen bir dijital sinyal bir mikrodenetleyici tarafından 0 ila 1024 arasında bir sayısal değer olarak tanınır.
12 bitlik bir ADC aynı sinyali görür, ancak daha yüksek doğrulukla - 0 ila 4096 formunda, bu da giriş sinyalinin ölçülen değerlerinin 4 kat daha doğru olacağı anlamına gelir. 1024 ve 4096'nın nereden geldiğini anlamak için, sadece ADC bit derinliğinin gücüne 2 yükseltin (2, 10 bit için 10 gücüne vb.)
Yük gücünü kontrol etmek için, emrinizde PWM kanalları vardır, bunlar örneğin parlaklığı, sıcaklığı veya motor hızını ayarlamak için kullanılabilir. Aynı 328 kontrol cihazında 6 tane var.
Genel olarak, AVR mikrodenetleyicisinin yapısı şemada gösterilmiştir:

Tüm düğümler imzalanmıştır, ancak yine de bazı isimler o kadar açık olmayabilir. Onların gösterimlerine bakalım.
-
ALU - aritmetik-mantıksal aygıt. Hesaplamayı yapmak için gereklidir.
-
Genel Amaçlı Kayıtlar (RON) - Mikrodenetleyici güce bağlıyken veri alabilen ve saklayabilen kayıtlar, yeniden başlatmadan sonra silinir. Veri işlemleri için geçici hücre görevi görür.
-
kesmeler - mikrodenetleyici üzerindeki iç veya dış etkilerden kaynaklanan bir olay gibi bir şey - zamanlayıcı taşması, MK piminden harici kesinti vb.
-
JTAG - mikrodenetleyiciyi karttan çıkarmadan devre içi programlama için bir arayüz.
-
Flash, RAM, EEPROM - bellek tipleri - isimlerdeki sıraya göre programlar, geçici çalışma verileri, mikrodenetleyiciye güç beslemesinden bağımsız uzun süreli depolama.
-
Zamanlayıcılar ve Sayıcılar - mikrodenetleyicideki en önemli düğümler, bazı modellerde sayıları bir düzine kadar olabilir. Tedbir sayısını, sırasıyla zaman aralıklarını bildirmek için gereklidirler ve sayaçlar olaylardan herhangi biri için değerlerini arttırır. Çalışmaları ve modu programa bağlıdır, ancak bu eylemler donanımda, yani. programın ana metnine paralel olarak, kod yürütmenin herhangi bir aşamasında, herhangi bir satırında kesintiye (zamanlayıcı taşmasıyla, bir seçenek olarak) neden olabilirler.
-
A / D (Analog / Dijital) - ADC, amacını zaten açıklamıştık.
-
WatchDogTime (Bekçi Zamanlayıcısı) - Mikrodenetleyiciden ve hatta saat üreticisinden bağımsız bir RC osilatörü, belirli bir süreyi sayar ve çalışırsa bir MK sıfırlama sinyali üretir ve uyku modundaysa (güç tasarrufu) uyanır. WDTE biti 0 olarak ayarlanarak çalışması devre dışı bırakılabilir.
Mikrodenetleyicinin çıkışları oldukça zayıftır, yani aralarındaki akım genellikle 20-40 miliampere kadardır, bu da LED ve LED göstergelerini aydınlatmak için yeterlidir. Daha güçlü bir yük için, aynı transistörler gibi akım veya voltaj amplifikatörlerine ihtiyaç vardır.
Mikrodenetleyiciler üzerinde çalışmaya başlamak için neye ihtiyacınız var?
İlk önce mikrodenetleyiciyi satın almanız gerekir. İlk mikrodenetleyicinin rolü herhangi bir Attiny2313, Attiny85, Atmega328 ve diğerleri olabilir. Katıldığınız derslerde açıklanan modeli seçmek daha iyidir.

İhtiyacınız olan bir sonraki şey programcı. Ürün yazılımını MK belleğine indirmek gerekir, en ucuz ve en popüler olarak kabul edilir USBASP.

Biraz daha pahalı, ama daha az yaygın bir programcı değil AVRISP MKIIKendiniz yapabileceğiniz - normal bir tahtadan Arduino

Başka bir seçenek de onları USB UART genellikle dönüştürücülerden birinde yapılan adaptör: FT232RL, CH340, PL2303 ve CP2102.
Bazı durumlarda, böyle bir dönüştürücü için USB donanım desteğine sahip AVR mikrodenetleyicileri kullanılır; Bu kadar çok model yoktur. İşte bazıları:
-
ATmega8U2;
-
ATmega16U2;
-
ATmega32U2.

Yalnızca bir “ama” - UART önyükleyicisinin önce mikro denetleyicinin belleğine yüklenmesi gerekir. Tabii ki, bunun için hala AVR mikrodenetleyicileri için bir programcıya ihtiyacınız var.
İlginç: Bootloader - Bu bir mikrodenetleyici için normal bir programdır, ancak olağandışı bir görevle - piyasaya sürüldükten sonra (güce bağlanır), bir süre için bellenimin yüklenebileceğini bekler. Bu yöntemin avantajı, herhangi bir USB-UART adaptörünü flaş edebilmeniz ve çok ucuz olmasıdır. Dezavantajı, yazılımın yüklenmesi uzun zaman almasıdır.
İş için UART AVR mikrodenetleyicilerindeki (RS-232) arabirimi bir tam kayıt UDR'si tahsis etti (UART veri kaydı). UCSRA (RX, TX alıcı-verici bit ayarları), UCSRB ve UCSRС - bir bütün olarak arayüz ayarlarından sorumlu bir kayıt seti.
Programları nasıl yazabilirim?
Programcıya ek olarak, programı yazmak ve indirmek için bir IDE geliştirme ortamına ihtiyacınız vardır. Tabii ki not defterine kod yazabilir, derleyicilerden geçebilir, vb. Mükemmel hazır seçenekler olduğunda neden gereklidir? Belki de en güçlü olanlardan biri IAR'dır, ancak ödenir.
Resmi Atmel IDE, sürüm 6'da Atmel stüdyosu olarak yeniden adlandırılan AVR Studio'dur. Tüm AVR mikro denetleyicilerini (8, 32, xMega) destekler, komutları otomatik olarak algılar ve girmeye yardımcı olur, doğru sözdizimini ve çok daha fazlasını vurgular.Yardımı ile MK flaş yapabilirsiniz.
En yaygın olanı C AVR'dir, bu yüzden bir öğretici bulun, tonlarca Rusça dil seçeneği vardır ve bunlardan biri Khartov V.Ya'dır. “AVR mikrodenetleyicileri. Yeni başlayanlar için atölye çalışması. "

AVR öğrenmenin en kolay yolu
Kendiniz satın alın veya yapın Arduino kartı. Arduino projesi özellikle eğitim amaçlı tasarlanmıştır. Çeşitli şekil ve temas sayısına sahip düzinelerce pano var. Arduino'daki en önemli şey, sadece bir mikrodenetleyici değil, bir maske ve monte edilmiş SMD bileşenleri ile kaplı yüksek kaliteli bir textolite baskılı devre kartına lehimlenmiş tam teşekküllü bir hata ayıklama kartı satın almanızdır.
En yaygın olanları, Nano'nun Uno'dan yaklaşık 3 kat daha küçük olması dışında, Arduino Nano ve Arduino UNO'dur.

Birkaç gerçek:
-
Arduino standart bir dilde programlanabilir - “C AVR”;
-
kendi - kablolama;
-
standart geliştirme ortamı - Arduino IDE;
-
bir bilgisayara bağlanmak için, USB kablosunu Arduino nano kartındaki mikro USB soketine bağlamanız, sürücüleri yüklemeniz gerekir (büyük olasılıkla bu otomatik olarak gerçekleşecektir, CH340'taki dönüştürücü hariç, Win 8.1'de sürücülerim yoktu, indirmem gerekiyordu, ancak Çok fazla zaman almadı.) Ardından “skeçlerinizi” yükleyebilirsiniz;
-
“Eskizler” arduino için programların adıdır.

bulgular
Mikrodenetleyiciler, dijital elektronik dünyasını keşfetmenize, kendi ölçüm cihazlarınızı ve ev otomasyon ekipmanlarınızı tasarlamanıza izin verecek amatör radyo pratiğinizde çok yardımcı olacaktır.
Ayrıca bkz. electro-tr.tomathouse.com
: