Kategori: Elektronik Praktikal, Litar mikropengawal
Bilangan pandangan: 21376
Komen pada artikel: 0

Jenis dan perkiraan mikrokontroler AVR

 


AVR - Ini adalah nama keluarga mikrocontrollers yang dihasilkan syarikat itu. Atmel. Selain ABP di bawah jenama ini dikeluarkan mikrokontroler dan arkitek lain seperti ARM dan i8051.


Apakah mikrogator AVR?

Mikrokomputer AVR

Terdapat tiga jenis mikrokontroler:

  1. AVR 8-bit.

  2. AVR 32-bit.

  3. AVR xMega

Selama lebih dari satu dekad, yang paling popular adalah keluarga 8-bit mikrokontroler. Banyak hams mula belajar microcontrollers daripadanya. Hampir semuanya belajar dunia pengawal diprogramkan dengan melakukan kraf mudah mereka, seperti lampu berkelip LED, termometer, jam, serta automasi mudah, seperti mengawal lampu dan peralatan pemanasan.

Mikrokomputer AVR 8-bit pula terbahagi kepada dua keluarga yang popular:

  • Attiny - namanya menunjukkan bahawa bongsu (kecil - muda, muda, termuda), pada dasarnya mempunyai 8 pin atau lebih. Jumlah memori dan fungsi mereka biasanya lebih sederhana daripada yang berikut:

  • Atmega - Mikrokontroler yang lebih maju mempunyai lebih banyak memori, pin dan pelbagai unit berfungsi;

Pengawal mikro Attiny

Subfamili mikrofiz yang paling berkuasa adalah xMega - mikrokontroler ini tersedia dalam kes dengan sejumlah besar pin, dari 44 hingga 100. Begitu banyak diperlukan untuk projek-projek dengan sebilangan besar sensor dan penggerak. Di samping itu, peningkatan kapasiti memori dan kelajuan membolehkan anda mendapat prestasi tinggi.

Mikrokontroler Atmega

Pengekodan: Pin (eng Pin - jarum, pin) adalah output daripada mikrokontroler atau, seperti yang mereka katakan, kaki. Oleh itu, perkataan "pinout" - iaitu. Maklumat mengenai tujuan setiap kaki.


Apakah mikrokontroler dan apa yang mereka buat?

Mikrokontroler digunakan hampir di mana-mana sahaja! Hampir setiap peranti pada abad ke-21 berfungsi pada mikropengawal: alat ukur, alat, peralatan rumah, jam tangan, mainan, kotak muzik dan poskad, serta banyak lagi; penghitungan sahaja akan mengambil beberapa halaman teks.

Pemaju boleh menggunakan isyarat analog dari bahagian bawahnya kepada input mikrokontroler dan memanipulasi data pada nilainya. Kerja ini dilakukan oleh penukar analog-ke-digital (ADC). Fungsi ini membolehkan pengguna untuk berkomunikasi dengan pengawal mikrokontroler, serta untuk melihat pelbagai parameter di dunia sekitar menggunakan sensor.

Mikropengawal AVR pada papan roti

Sebagai contoh, mikrokontroler AVR, sebagai contoh, Atmega328yang pada tahun 2017 adalah jantung banyak papan litar Arduinotetapi mengenai mereka kemudian. Digunakan 8 saluran ADCdengan kedalaman sedikit 10 bit. Ini bermakna anda boleh membaca nilai dari 8 sensor analog. Dan sensor digital disambungkan kepada output digital, yang mungkin jelas. Walau bagaimanapun, isyarat digital boleh hanya 1 (unit) atau 0 (sifar), manakala isyarat analog boleh mengambil nilai tak terhingga.

Isyarat digital dan analog

Penjelasan:


Kapasiti Adakah nilai yang mencirikan kualiti, ketepatan dan kepekaan input analog. Itu tidak terdengar sangat jelas. Sedikit amalan: ADC 10-bit, rekod maklumat analog daripada port dalam 10 bit memori, dengan kata lain, isyarat digital yang berubah secara lancar diiktiraf oleh mikrokontroler sebagai nilai berangka dari 0 hingga 1024.

ADC 12-bit melihat isyarat yang sama, tetapi dengan ketepatan yang lebih tinggi - dalam bentuk dari 0 hingga 4096, yang bermaksud bahawa nilai diukur isyarat input akan 4 kali lebih tepat. Untuk memahami di mana 1024 dan 4096 datang dari, hanya menaikkan 2 kepada kedalaman bit ADC (2 hingga 10, 10 bit, dan sebagainya)

Untuk mengawal kuasa beban, terdapat saluran PWM yang boleh digunakan, contohnya, untuk menyesuaikan kecerahan, suhu, atau kelajuan enjin. Dalam 328 pengawal yang sama terdapat 6 daripadanya.

Secara umum, struktur mikrokontroler AVR digambarkan dalam rajah:

Struktur AVR Mikrokontroler

Semua nod ditandatangani, tetapi masih ada beberapa nama yang tidak begitu jelas. Mari lihat notasi mereka.

  • ALU - peranti logik aritmetik. Perlu melakukan pengiraan.

  • Daftar Tujuan Am (RON) - Daftar yang boleh menerima data dan menyimpannya semasa mikropengawal disambungkan kepada kuasa, akan dipadamkan selepas reboot. Berkhidmat sebagai sel sementara untuk operasi data.

  • Gangguan - sesuatu seperti peristiwa yang berlaku akibat pengaruh dalaman atau luaran pada mikrokontroler - limpahan pemasa, gangguan luaran dari pin MK, dll.

  • Jtag - antara muka untuk pengaturcaraan litar tanpa mengeluarkan mikropengawal dari papan.

  • Flash, RAM, EEPROM - jenis memori - program, data sementara, penyimpanan jangka panjang bebas daripada bekalan kuasa kepada mikropengawal, mengikut pesanan dalam nama.

  • Pemasa dan Kaunter - nod yang paling penting dalam mikrokontroler, dalam beberapa model bilangan mereka boleh sehingga sedozen. Mereka diperlukan untuk melaporkan bilangan langkah, masing-masing, selang masa, dan kaunter meningkatkan nilai mereka untuk mana-mana peristiwa. Kerja mereka dan modnya bergantung pada program, bagaimanapun, tindakan ini dilakukan dalam perkakasan, iaitu. selari dengan teks utama program ini, mereka boleh menyebabkan gangguan (oleh limpasan pemasa, sebagai pilihan) pada mana-mana peringkat pelaksanaan kod, pada mana-mana baris.

  • A / D (Analog / Digital) - ADC, kami telah menerangkan tujuannya.

  • WatchDogTime (Jam Pemantauan) - pengayun RC bebas daripada mikrokontroler dan juga penjana jam, yang mengira tempoh masa tertentu dan menghasilkan isyarat reset MK jika ia berfungsi, dan bangun jika ia berada dalam mod tidur (penjimatan kuasa). Operasinya boleh dilumpuhkan dengan menetapkan bit WDTE kepada 0.


Output mikrokontroler agak lemah, yang bermaksud bahawa arus melalui mereka biasanya sehingga 20-40 milliamps, yang cukup untuk menyalakan petunjuk LED dan LED. Untuk beban yang lebih kuat, penguat semasa atau voltan diperlukan, sebagai contoh, transistor yang sama.


Apa yang anda perlukan untuk mula mengkaji mikrokontroler?

Pertama, anda perlu membeli mikropengawal itu sendiri. Peranan mikrokontroler pertama boleh menjadi mana-mana Attiny2313, Attiny85, Atmega328 dan lain-lain. Lebih baik memilih model yang diterangkan dalam pelajaran yang akan anda lakukan.

Attiny2313

Perkara seterusnya yang anda perlukan adalah programmer. Ia diperlukan untuk memuat turun firmware ke memori MK, ia dianggap paling murah dan paling popular USBASP.

Pemrogram

Sedikit lebih mahal, tetapi pengaturcara kurang biasa AVRISP MKII, yang boleh anda lakukan sendiri - dari papan reguler Arduino

Programmer AVRISP MKII

Pilihan lain adalah untuk menyalakannya USB UART penyesuai, yang biasanya dilakukan pada salah satu penukar: FT232RL, CH340, PL2303 dan CP2102.

USB-UART Adapter

Dalam sesetengah kes, mikropagulator AVR dengan sokongan perkakasan USB digunakan untuk penukar sedemikian, tidak terdapat banyak model sedemikian. Berikut adalah beberapa:

  • ATmega8U2;

  • ATmega16U2;

  • ATmega32U2.

Microcontroller AVR berasaskan perkakasan USB

Hanya satu "tetapi" - bootloader UART mesti dimuatkan terlebih dahulu ke memori mikropengawal. Sudah tentu, untuk ini, anda masih memerlukan programmer untuk mikrokontroler AVR.


Menarik: Bootloader - Ini adalah program biasa untuk pengawal mikrokontroler, tetapi dengan tugas yang luar biasa - selepas pelancarannya (menyambung kepada kuasa), ia menjangkakan beberapa saat bahawa firmware boleh dimuatkan ke dalamnya. Kelebihan kaedah ini ialah anda boleh menghidupkan mana-mana penyesuai USB-UART, dan mereka sangat murah. Kelemahannya ialah firmware mengambil masa yang lama untuk memuatkan.

Untuk kerja UART (RS-232) dalam mikropengafeng AVR memperuntukkan UDR daftar keseluruhan (Daftar data UART). UCSRA (tetapan bit transceiver RX, TX), UCSRB dan UCSRС - satu set daftar yang bertanggungjawab untuk tetapan antara muka secara keseluruhan.


Bagaimana saya boleh menulis program?

Sebagai tambahan kepada pengaturcara, untuk menulis dan memuat turun program yang anda perlukan persekitaran pembangunan IDE. Anda sudah tentu dapat menulis kod dalam notepad, melalui penyusun, dll. Kenapa perlu apabila terdapat pilihan siap sedia yang sangat baik. Mungkin salah satu yang paling kuat ialah IAR, tetapi ia dibayar.

Atmel IDE rasmi ialah AVR Studio, yang dinamakan semula sebagai studio Atmel pada versi 6. Ia menyokong semua mikrokontroler AVR (8, 32, xMega), secara automatik mengesan arahan dan membantu masuk, menyoroti sintaks yang betul dan banyak lagi.Dengan bantuannya, anda boleh menyalakan MK.

Yang paling biasa adalah C AVR, jadi cari tutorial mengenainya, terdapat banyak pilihan bahasa Rusia, dan salah satunya adalah Khartov V.Ya. "AVR mikrokontroler. Bengkel untuk pemula. "

Pengaturcaraan microcontroller

Cara paling mudah untuk belajar AVR

Beli atau buat sendiri Papan Arduino. Projek arduino direka khusus untuk tujuan pendidikan. Ia mempunyai puluhan papan dengan pelbagai bentuk dan bilangan kenalan. Perkara yang paling penting dalam arduino adalah anda membeli bukan hanya mikropengawal, tetapi papan debug sepenuhnya disalurkan ke papan litar bercetak textolite berkualiti tinggi, ditutup dengan topeng dan komponen SMD yang dipasang.

Yang paling biasa adalah Arduino Nano dan Arduino UNO, yang pada asasnya sama, kecuali Nano adalah kira-kira 3 kali lebih kecil daripada Uno.

Arduino uno

Beberapa fakta:

  • Arduino boleh diprogramkan dalam bahasa standard - "C AVR";

  • sendiri - pendawaian;

  • persekitaran pembangunan standard - Arduino IDE;

  • untuk menyambung ke komputer, anda hanya perlu menyambungkan kabel USB ke soket mikro-USB pada papan Arduino nano, pasang pemacu (kemungkinan besar ini akan berlaku secara automatik, kecuali apabila penukar pada CH340, saya tidak mempunyai pemacu pada Win 8.1, saya perlu memuat turunnya, tetapi Ia tidak mengambil banyak masa.) Kemudian anda boleh memuat naik "lakaran" anda;

  • "Sketsa" ialah nama program untuk arduino.

Eksperimen dengan Arduino UNO

Kesimpulan

Mikrokontrobat akan sangat membantu dalam amalan radio amatur anda, yang akan membolehkan anda untuk menemui dunia elektronik digital, mereka bentuk instrumen pengukur sendiri dan peralatan automasi rumah anda.

Lihat juga di i.electricianexp.com:

  • PIC microcontrollers untuk pemula
  • Pengaturcaraan microcontroller untuk pemula
  • Menyambung dan pengaturcaraan Arduino untuk pemula
  • Pemrogram mikrokontroler dalam JavaScript: mana yang boleh dipilih, ciri ...
  • Apakah mikrokontroler - tujuan, peranti, perisian

  •