Arduino Uno

Arduino Uno ochiq manbali mikrokontroller platasi boʻlib, Microchip ATmega328P mikrokontrolleriga asoslangan va Arduino.cc tomonidan ishlab chiqilgan va dastlab 2010-yilda chiqarilgan. Arduino Uno turli xil kengaytirish platalari (qalqonlari) va boshqa kontaktlarning zanglashiga olib kirishi mumkin bo'lgan raqamli va analog kirish/chiqish (I/O) pinlari bilan jihozlangan.  Arduino Uno 14 ta raqamli kiritish/chiqarish pinlari (oltitasi PWM chiqishi mumkin), 6 ta analog I/U pinlari mavjud va B tipidagi USB kabeli orqali Arduino IDE (Integrated Development Environment) bilan dasturlashtiriladi. U USB kabeli yoki tashqi 9 voltli akkumulyator bilan quvvatlanishi mumkin, garchi u 7 dan 20 voltgacha kuchlanishni qabul qilsa. Bu Arduino Nano va Leonardo bilan bir xil. Uskuna ma'lumotnomasi dizayni Creative Commons Attribution Share-Alike 2.5 litsenziyasi ostida tarqatiladi va Arduino veb-saytida mavjud. Uskunaning ayrim versiyalari uchun tartib va ishlab chiqarish fayllari ham mavjud.

"Uno" so'zi italyancha "bir" degan ma'noni anglatadi va Arduino dasturiy ta'minotining dastlabki versiyasini belgilash uchun tanlangan. Uno platasi USBga asoslangan Arduino platalari seriyasining birinchisidir; Arduino UNO  va Arduino IDE ning 1.0 versiyasi Arduinoning mos yozuvlar versiyalari edi, ular endi yangiroq versiyalarga aylandi. Bortdagi ATmega328 yuklash moslamasi bilan oldindan dasturlashtirilgan bo'lib, unga tashqi apparat dasturchisidan foydalanmasdan yangi kodni yuklash imkonini beradi.

Uno asl STK500 protokoli yordamida muloqot qilsada, u oldingi barcha platalardan FTDI USB dan seriyali drayver chipidan foydalanmasligi bilan farq qiladi. Buning o'rniga u USB-seriyali konvertor sifatida dasturlashtirilgan Atmega16U2 (R2 versiyasigacha Atmega8U2) dan foydalanadi.

Tarix 

Arduino loyihasi Italiyaning Ivrea shahridagi Ivrea Interaction Design Institute (IDII) da boshlandi. O'sha paytda talabalar BASIC Stamp mikrokontrolleridan foydalanganlar, bu esa ko'plab talabalar uchun katta xarajat edi. 2003-yilda Hernando Barragan IDIIda magistrlik dissertatsiyasi loyihasi sifatida Wiring ishlab chiqish platformasini yaratdi, ular qayta ishlash tili bo'yicha ish bilan mashhur Massimo Banzi va Keysi Reas rahbar edi. Loyihaning maqsadi muhandis bo'lmaganlar tomonidan raqamli loyihalarni yaratish uchun oddiy, arzon vositalarni yaratish edi. Wiring platformasi ATmega 168 mikrokontrolleriga ega bosilgan elektron platadan (PCB), qayta ishlashga asoslangan IDE va mikrokontrollerni oson dasturlash uchun kutubxona funktsiyalaridan iborat edi. 2003-yilda Massimo Banzi yana bir IDII talabasi Devid Mellis va Devid Kuartielles bilan Wiring-ga arzonroq ATmega8 mikrokontrollerini qo‘llab-quvvatladi. Ammo Wiring bo'yicha ishni davom ettirish o'rniga, ular loyihani ajratib, Arduino nomini o'zgartirdilar. Ilk arduino platalarida FTDI USB-dan seriyali drayver chipi va ATmega 168 ishlatilgan. Uno oldingi barcha platalardan ATmega328P mikrokontrolleri va USB-dan seriyali konvertor sifatida dasturlashtirilgan ATmega16U2 (Atmega8U2 dan R2 versiyasigacha) bilan ajralib turardi.

Texnik spetsifikatsiyalar 

 Mikrokontroller : Microchip ATmega328P 
 Ishlash kuchlanishi: 5 volt
 Kirish kuchlanishi: 7 dan 20 voltgacha
 Raqamli kiritish/chiqarish pinlari: 14
 PWM pinlari: 6 (pin № 3, 5, 6, 9, 10 va 11)
 UART: 1
 I2C: 1
 SPI: 1
 Analog kirish pinlari: 6
 Kirish/chiqish pinidagi doimiy oqim: 20 mA
 3.3V pin uchun doimiy oqim: 50 mA
 Flash xotira : 32 KB, shundan 0,5 KB yuklovchi tomonidan ishlatiladi
 SRAM : 2 KB
 EEPROM : 1 KB
 Soat tezligi: 16 MGts
 Uzunligi: 68.6 mm
 Kengligi: 53.4 mm
 Og'irligi: 25 g
 ICSP sarlavhasi: Ha
 Quvvat manbalari: DC quvvat ulagichi, USB port va VIN pin (faqat +5 volt)

Sarlavhalar

Umumiy pin funktsiyalari 

 LED : Raqamli pin 13 tomonidan boshqariladigan o'rnatilgan LED mavjud. PIN qiymati yuqori bo'lsa, LED yonadi, pin past bo'lsa, u o'chadi.
 VIN : Arduino/Genuino platasi tashqi quvvat manbaidan foydalanilganda kirish kuchlanishi (USB ulanishi yoki boshqa tartibga solinadigan quvvat manbasidan 5 voltdan farqli o'laroq). Siz ushbu pin orqali kuchlanishni ta'minlashingiz mumkin, yoki quvvat ulagichi orqali kuchlanishni ta'minlasangiz, unga ushbu pin orqali kiring.
 5V : Bu pin platadagi regulyatordan regulyatorli 5V chiqaradi. Kengash to'g'ridan-to'g'ri quvvat ulagichidan (7 - 20 V), USB ulagichidan (5 V) yoki plataning VIN pinidan (7-20 V) quvvat bilan ta'minlanishi mumkin. 5V yoki 3.3V pinlar orqali kuchlanishni etkazib berish regulyatorni chetlab o'tadi va plataga zarar etkazishi mumkin.
 3V3 : Bort regulyatori tomonidan ishlab chiqarilgan 3,3 voltli quvvat manbai. Maksimal oqim 50 mA ni tashkil qiladi.
 GND : Tuproq pinlari.
 IOREF : Arduino/Genuino platasidagi ushbu pin mikrokontroller ishlaydigan kuchlanish ma'lumotnomasini beradi. To'g'ri sozlangan ekran IOREF pin kuchlanishini o'qishi va tegishli quvvat manbasini tanlashi yoki chiqishlardagi kuchlanish translyatorlarini 5V yoki 3.3V bilan ishlashga imkon berishi mumkin.
 Qayta o'rnatish : Odatda platadagini bloklaydigan qalqonlarga qayta o'rnatish tugmasi qo'shish uchun ishlatiladi.

Maxsus pin funktsiyalari 
Uno-dagi 14 raqamli pin va 6 analog pinning har biri dasturiy ta'minot nazorati ostida (pinMode(), digitalWrite() va digitalRead() funksiyalari yordamida) kirish yoki chiqish sifatida ishlatilishi mumkin. Ular 5 voltda ishlaydi. Har bir pin tavsiya etilgan ish sharoiti sifatida 20 mA ni ta'minlashi yoki qabul qilishi mumkin va 20-50K ohm ichki tortishish qarshiligiga (sukut bo'yicha uzilgan) ega. Mikrokontrollerga doimiy shikast yetkazmaslik uchun har qanday kirish/chiqarish pinida maksimal 40mA dan oshmasligi kerak. Uno A0 dan A5 gacha etiketlangan 6 ta analog kirishga ega; har biri 10 bit ruxsatni (ya'ni 1024 xil qiymat) ta'minlaydi. Odatiy bo'lib, ular yerdan 5 voltgacha o'lchanadi, ammo AREF pin va analogReference() funksiyasi yordamida diapazonning yuqori uchini o'zgartirish mumkin.

Bundan tashqari, ba'zi pinlar maxsus funktsiyalarga ega:

 Seriya / UART: pinlar 0 (RX) va 1 (TX). TTL seriyali ma'lumotlarini qabul qilish (RX) va uzatish (TX) uchun ishlatiladi. Ushbu pinlar ATmega8U2 USB-to-TTL seriyali chipining mos keladigan pinlariga ulangan.
 Tashqi uzilishlar: 2 va 3-pinlar. Ushbu pinlar past qiymatda uzilishni, ko'tarilish yoki pasayish yoki qiymat o'zgarishini ishga tushirish uchun sozlanishi mumkin.
 PWM (impuls kengligi modulyatsiyasi): pinlar 3, 5, 6, 9, 10 va 11. AnalogWrite() funksiyasi bilan 8-bitli PWM chiqishini ta'minlay oladi.
 SPI (seriyali periferik interfeys): pinlar 10 (SS), 11 (MOSI), 12 (MISO) va 13 (SCK). Ushbu pinlar SPI kutubxonasidan foydalangan holda SPI aloqasini qo'llab-quvvatlaydi.
 TWI (ikki simli interfeys) / I²C : pin SDA (A4) va pin SCL (A5). Wire kutubxonasi yordamida TWI aloqasini qo'llab-quvvatlang.
 AREF (analog mos yozuvlar): Analog kirishlar uchun mos kuchlanish.

Aloqa 
Arduino/Genuino Uno kompyuter, boshqa Arduino/Genuino platasi yoki boshqa mikrokontrollerlar bilan aloqa qilish uchun bir qator imkoniyatlarga ega. ATmega328 0 (RX) va 1 (TX) raqamli pinlarida mavjud bo'lgan UART TTL (5V) seriyali aloqani ta'minlaydi. Bortdagi ATmega16U2 ushbu ketma-ket aloqani USB orqali uzatadi va kompyuterdagi dasturiy ta'minotga virtual aloqa porti sifatida ko'rinadi. 16U2 proshivka standart USB COM drayverlaridan foydalanadi va tashqi drayverga ehtiyoj yo'q. Biroq, Windows-da .inf fayli talab qilinadi. Arduino dasturiy ta'minoti (IDE) oddiy matnli ma'lumotlarni doskaga va undan yuborish imkonini beruvchi ketma-ket monitorni o'z ichiga oladi. Ma'lumotlar USB-seriyali chip va kompyuterga USB ulanishi orqali uzatilayotganda platadagi RX va TX LEDlari yonib-o'chib turadi (lekin 0 va 1 pinlarida ketma-ket aloqa uchun emas). SoftwareSerial kutubxonasi Uno ning istalgan raqamli pinlarida ketma-ket ulanish imkonini beradi.

Avtomatik (dasturiy ta'minot) tiklash 
Arduino/Genuino Uno platasi yuklashdan oldin tiklash tugmachasini jismoniy bosishni talab qilish o'rniga, ulangan kompyuterda ishlaydigan dasturiy ta'minot orqali uni qayta o'rnatishga imkon beradigan tarzda ishlab chiqilgan. ATmega8U2/16U2 ning apparat oqimini boshqarish liniyalaridan biri (DTR) 100 nanofaradli kondansatör orqali ATmega328 ning qayta o'rnatish liniyasiga ulangan. Bu chiziq tasdiqlansa (past olingan), qayta o'rnatish chizig'i chipni qayta o'rnatish uchun etarlicha uzoqqa tushadi.

Ushbu sozlash boshqa ta'sirlarga ega. Uno Mac OS X yoki Linux operatsion tizimida ishlaydigan kompyuterga ulanganda, har safar unga dasturiy ta'minotdan (USB orqali) ulanish o'rnatilganda u qayta tiklanadi. Keyingi yarim soniya yoki undan ko'proq vaqt davomida yuklash moslamasi Uno'da ishlaydi. U noto'g'ri shakllangan ma'lumotlarni (ya'ni, yangi kodni yuklashdan tashqari) e'tiborsiz qoldirish uchun dasturlashtirilgan bo'lsa-da, ulanish ochilgandan so'ng plataga yuborilgan ma'lumotlarning dastlabki bir necha baytlarini ushlab oladi.

Yana qarang 

 AVR mikrokontrollerlari
 Atmel AVR ko'rsatmalar to'plami
 Tizim ichidagi dasturlash

Manbalar 
Atribut:

 This article incorporates text available under the CC BY-SA 3.0 license.

Havolalar 

 
 Uno Rev3 Schematic
 Board comparisons:
 Differences Between Official Arduino Uno Board Revisions (R1/R2/R3)
 Comparison of Various Arduino Boards
 Arduino Software Cheat Sheet

 Pinout diagrammalar

 Arduino Uno kengashi
 ATmega328 DIP
 ATmega328 SMD