Arduino UNO

Arduino UNO

Arduino UNO спецификация, документация и основни приложения.

Arduino UNO е хардуерна платформа за създаване на различни проекти свързани с електроникатата. Платформата е базирана на микроконтролерът Atmega328p-PU, върху него е записан първоначално bootloader на ардуино който при статриране или рестартиране на платформата се зарежда автоматично, неговото основно действие е да изчака софтуерът на Ардуино(Arduino IDE) на вашият компютър да изпрати новата програма за вашата развойна платформа(Arduino UNO) посредством серийна комуникация и да я запише в паметта на контролерът (Atmega328p), това е добре защото в противен случай се нуждаете от външен програматор като (“TL866” или “USBasp”).За повече информация за предназначението последвайте линкът: MiniBootloader. Останалата част от хардуерът покрай контролера е кварцовия резонатор (за задаване на честотата на работа на контролера),захранваща част базирана на :AMS1117,MC33269 параметрични стабилизатори(аз използвам LM7805) и интерфейсна част(USB-RS/TTL) за качване на софтуерът и комуникация с платформата,тя е базирана(според производителя) на интерфейсен чип CH340(китайските платформи) или Atmega16U2(за OEM ардуино платформите). Кратки характеристики са описани отдолу:

Описание на платформата:

  • Общ брой дигитални пинове – (14).
  • Дигитални пинове I/O(Up/Down) – (6).
  • Дигитални пинове PWM(ШИМ) – (6).
  • Сериина комуникация Serial-TTL – (2)
  • Логическо ниво на дигиталните пинове 0-5v.
  • Аналогови пинове ADC-10bit – (6).
  • Интерфейсни портове – I2C , SPI , Serial-TTL.
  • Тактова честота на контролера – 16Mhz.
  • Флаш памет (32kb) от които (0.5kb) за заети от Bootloader.
  • Sram – 2kb (Atmega328p).
  • Вътрешен EEPROM 1k (1024) байта.
  • Захранващо напрежение през захранващия жак: 6-20V.
  • Оптимално напрежение – 12V.
  • Захранващо напрежение през USB или пин(Vin) – 5V.
  • Консумиран ток – ~50ma.
  • LED индикация за включено напрежение – ДА.
  • LED индикация на серийната комуникация – ДА.
  • LED индикация пин(13) – ДА.
  • Дължина – 68.6мм.
  • Широчина – 53.4мм.

Arduino UNO разполага с четири рейки върху които са разположени всичките входно/изходни портове на микроконтролерът(дигитални I/O, аналогови(ADC), комуникационни (RS, SPI, I2C), захранващи: входни(Vin,GND), изходни(+5v, +3.3v , GND) както и за рестартиране(reset).Може да разгледате снимката:

Arduino Uno ОЕМ

Или във вариант където контролерът е в (SMD) корпус.

Платформата е базирана на микроконтролерът Atmega328p-PU, която както виждате по горе е във вариант с (DIP-28) и (SMD) корпуси, което няма значение защото работата на платформите на теория е еднаква. От практическа гледна точка обаче за развойни дейности и конструиране на изделия (особено от начинаещи) вариантът на контролера с (DIP) корпус е значително по удобен с оглед на изчертаването и направата на PCB(платки) както и тяхното насищане.В другите раздели на този сайт ще се “запознаем” и с това. За повече и по добро описание на контролерът съм прикачил снимка с краката и описанието им в DIP корпус, а по надолу и официалната документация на чипът пусната от компанията “ATMEL”:

За по добро описание на краката на контролера(Atmega328p) разгледайте диаграмата:

Atmega328 pinоut

Пълна спецификация на контролера може да свалите от тук:

ATmega328p

Пълното описание на на пиновете на Arduino UNO може да разгледате тук:

Arduino UNO pinout

Официална схема на развойната платформа Arduino-UNO може да разгледате тук:

Arduino_UNO_Rev3e_scheme

Схемата е свалена от официалния сайт на ардуино. Линк към схемата: Схема.

За да направите собствена платформа или изделие базирано на ардуино, трябва да качите върху закупеният от вас микроконтролер буутлоудъра на ардуино което става посредством< програматорите които споменах по горе(“TL866” или “USBasp”).Ако имате програматор USBasp качването на буутлоудъра става посредством софтуерната платформа за програмиране на ардуино. Arduino-IDE.Първо свързваме програматора къл SPI интерфейсът на контролера, задавате от Tools->Board->Arduino/Genuino UNO след което от се задава типът програматор от Tools->Programmer->USBasp и тогава качваме буутлоудъра от Tools->Burn Bootloader. По този начин може да се качва и програмата написана от вас директно върху чипът от Sketch->Upload Using Programmer. Ако използвате програматор (TL866-CS) записването на буутлоудъра става по различно, на първо място трябва да се сдобием и софтуерът в (BIN или HEX) вариант след което избираме чипът който искате да запишете(в този случай Atmega328p-PU), избираме таб FUSES и задаваме следните Fuses:

Arduino UNO R3 bootloader fuses

След което програмирате чипът. Буутлодъра в (.BIN) формат може да свалите от тук:

В заключение ще обобщя че платформата е подходяща както за начинаещи така и за напреднали, може да се използва за самостоятелна работа и/или за интерфейсна система за комуникация както и за изчитане на резултати от сензори и изпращане на резултатите към линукс(и други) платформи. Практическото и приложение ще осъществим в раздел: “Arduino Проекти“. Също така може да се запознаете с основите в програмирането с Arduino в раздела ни “Arduino basics“.