Arduino Uno - це пристрій побудований на основі мікроконтролера ATmega328. Для початку роботи досить підключити його до комп'ютера за допомогою USB-кабелю або подати зовнішнє живлення. В якості зовнішнього джерела живлення (не USB) може використовуватися мережевий AC / DC-адаптер або акумулятор. Штекер адаптера (діаметр - 2.1мм, центральний контакт - позитивний) підключається у відповідний роз'єм живлення на платі. У разі живлення від акумулятора, його під'єднують до контактів Gnd і Vin роз'єму POWER.
Програмується за допомогою програмного забезпечення Arduino IDE.
Характеристики:
Мікроконтролер- ATmega328
Робоча напруга - 5В
Напруга живлення (рекомендовано) - 7-12В
Напруга живлення (межова) - 6-20В
Цифрові входи-виходи - 14 (з них 6 можуть використовуватись в якості ШІМ-виходів)
Аналогові входи - 6
Максимальний ток одного виходу - 40 мА
Максимальний вихідний ток виходу 3.3V - 50 мА
Flash-пам’ять 32 КБ (ATmega328) з них 0.5 КБ використовується завантажувачем
SRAM - 2 КБ (ATmega328)
EEPROM - 1 КБ (ATmega328)
Тактова частота - 16 МГц
Входи і виходи
VIN - за необхідності, через цей контакт подається зовнішнє живлення.
5V На цей контакт подається напруга 5В від стабілізатора на платі, не залежно від того, як живиться пристрій: від адаптера (7 - 12В), від USB (5В) або через контакт VIN (7 - 12В). Подавати напругу на контакти 5V або 3V3 не рекомендується, оскільки в цьому випадку не використовується внутрішній стабілізатор напруги, що може привести до виходу плати з ладу.
3V3 На цей контакт подається з плати 3.3В з внутрішнього стабілізатора. Максимальний струм через цей контакт становить 50 мА.
IOREF Цей контакт надає платам розширення інформацію про робочу напругу мікроконтролера Ардуіно. Залежно від неї, плата розширення може переключитися на відповідне джерело живлення або задіяти перетворювачі рівнів, що дозволить їй працювати як з 5В, так і з 3.3В-пристроями.
За допомогою функцій pinMode (), digitalWrite () і digitalRead () кожен з 14 цифрових контактів може працювати в якості входу або виходу. Рівень напруги на виходах становить 5В. Максимальний струм, який може віддавати або споживати один контакт, становить 40 мА. Всі контакти пов'язані з внутрішніми «підтягуючи ми» резисторами (за замовчуванням відключеними) номіналом 20-50 кОм.
Крім цього, деякі контакти Ардуіно можуть виконувати додаткові функції:
Контакти 0 (RX) і 1 (TX) - послідовний інтерфейс. Використовуються для отримання (RX) і передачі (TX) даних по послідовному інтерфейсу.
Контакти 2 і 3 - зовнішні переривання; за допомогою функції attachInterrupt ()по фронту, спаду або при низькому рівні сигналу на цих контактах генеруються зовнішні переривання.
Контакти 3, 5, 6, 9, 10 і 11 - ШІМ; за допомогою функції analogWrite () можна генерувати 8-бітний аналоговий ШІМ сигнал.
Контакти 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) використовуються для здійснення зв'язку по інтерфейсу SPI.
Контакт A4 (SDA) і контакт A5 (SCL) використовуються для здійснення зв'язку по інтерфейсу TWI.
AREF - опорна напруга для аналогових входів.
До 13 контакту приєднаний вбудований світлодіод. При встановленні рівня HIGH світлодіод включається, при відправці LOW - вимикається.
В Arduino Uno є 6 10-бітних (1024) аналогових входів (A0 - A5). За замовчуванням, вимір напруги здійснюється щодо діапазону від 0 до 5 В. Проте, верхню межу цього діапазону можна змінити, використовуючи контакт AREF і функцію analogReference ().
Reset - формування низького рівня (LOW) на цьому контакті призведе до перезавантаження мікроконтролера.
Більш детальну інформацію можна отримати на спеціалізованому форумі.
PS. В архіві DATASHEET ATmega328P.
Загальна інформація по Arduino UNO
Re: Загальна інформація по Arduino UNO
Не полюбляю я ці Ардуіни за скетчи. Навіщо було вигадувати нову мову програмування, якщо є звичайний та зрозумілий Сі, а бо той самий асм, якого достатньо для початкової ланки мк Атмел.
- radioman
- Site Admin
- Повідомлень: 134
- З нами з: 28 вересня 2020, 12:01
- Звідки: Тернопіль
- Дякував (ла): 8 разів
- Подякували: 6 разів
Re: Загальна інформація по Arduino UNO
Програмування дуже подібне до С/С++; зроблено для залучення більш широкого кола користувачів.
Для цього потрібно більш грунтовно вавчити архітектуру МК; що значно звужує коло користувачів.
Програмне забезпечення для Ардуіно є безкоштовним; для програмування не потрібно додаткових пристроїв; наявність плат розширення спрощує виготовлення тестових зразків. Це як конструктор - дуже зручно.
Re: Загальна інформація по Arduino UNO
Так ардуіно це конструктор, але я за те щоб освоювати поширену, загальновизнану і універсальну мову програмування таку як Сі, тим більше така можливість нічим не обмежена.
Для ардуіно була розроблена "мова бібліотек", так саме є бібліотеки у мові Сі. Бувають випадки що бібліотеку треба відредагувати, щоб підлагодити якусь функцію, або переробити на свою. Знаючи мову "оригіналу" зробити це буде не важко.
Що до мови асемблеру - то знання архітектури мк потрібні не більш ніж для програмування на Сі.
Для ардуіно була розроблена "мова бібліотек", так саме є бібліотеки у мові Сі. Бувають випадки що бібліотеку треба відредагувати, щоб підлагодити якусь функцію, або переробити на свою. Знаючи мову "оригіналу" зробити це буде не важко.
Що до мови асемблеру - то знання архітектури мк потрібні не більш ніж для програмування на Сі.
- radioman
- Site Admin
- Повідомлень: 134
- З нами з: 28 вересня 2020, 12:01
- Звідки: Тернопіль
- Дякував (ла): 8 разів
- Подякували: 6 разів
Re: Загальна інформація по Arduino UNO
Ті самі бібліотеки можна редагувати і при написанні скетчів для Arduino. Але краще мінімізувати їх використання, так як це сповільнює виконання програми через зайві операції. Але, для початківців це зручно, так як зовсім не вимагає знання архітектури МК.
- radioman
- Site Admin
- Повідомлень: 134
- З нами з: 28 вересня 2020, 12:01
- Звідки: Тернопіль
- Дякував (ла): 8 разів
- Подякували: 6 разів
Re: Загальна інформація по Arduino UNO
Простий скетч генератора меандру
Для перевірки підсилювача низьких частот за схемою металошукача Fisher 75 написав простенький скетч для генерації меандру. Вхід підсилювача підключений до 3 контакту, а земля до GND плати ARDUINO UNO:
Для перевірки підсилювача низьких частот за схемою металошукача Fisher 75 написав простенький скетч для генерації меандру. Вхід підсилювача підключений до 3 контакту, а земля до GND плати ARDUINO UNO:
Код: Виділити все
const int conTime = 2000; // константа для затримки переключення рівня (мкс)
void setup()
{
pinMode(3, OUTPUT); // визначаємо 3 пін як вихід
}
void loop()
{
digitalWrite(3, HIGH); // встановлюємо високий рівень на 3 контакті
delayMicroseconds(conTime); // чекаємо час, заданий константою
digitalWrite(3, LOW); // встановлюємо високий рівень на 3 контакті
delayMicroseconds(conTime); // чекаємо час, заданий константою
}