Урок 21. BASCOM-AVR та Arduino
Не так давно я зацікавилась популярною платформою для розробки електронних пристроїв, це – Arduino. Спочатку ця платформа мені дуже сподобалась через її простоту, універсальність і зручність. Свою написану програму можна оперативно завантажити в мікроконтролер по COM або USB порту, не вдаючись до допомоги програматора. Я зібрала собі клон Arduino під назвою FreeduinoMax232. І почала вивчати для себе невідому середу програмування Processing, почала писати на ній простенькі програмки для мігання світлодіодами та іншими речами. Але моя радість була недовгою. По-перше, тому що для мене Processing жахливо незручна середа, а мова програмування C в ній мені не до душі. По-друге, розмір програм (скетчів), написаних у Processing , жахливо великий, наприклад, програма, яка просто мігає світлодіодом, займає 890 байт Flash пам'яті мікроконтролера. Це багато, і з цим можна одразу забути про маленькі мікроконтролери серії Attiny. В результаті, приємні враження у мене залишились тільки від самої плати.
Моя саморобна плата Arduino:
Для програмування мікроконтролерів мені дуже подобається середа BASCOM-AVR, оскільки вона досить швидка, зручна і має безліч приємних речей. І я задумалась, а як би подружити плату Arduino і BASCOM-AVR. Саме про це я і розповім у цій статті.
Починаючи з версії 2.0, у BASCOM-AVR включена підтримка Arduino, для використання його як програматора, який програмує сам себе. Давайте розберемося, як нам програмувати Arduino з BASCOM-AVR. Для початку запустимо BASCOM-AVR і пройдемо в меню налаштувань за ланцюгом Options – Programmer, ось так:
Далі побачимо наступну картину:
Тут, у випадаючому списку зверху, де “Programmer” потрібно вибрати “ARDUINO”. Також у випадаючому списку “COM-port” виберіть порт, до якого у вас підключена плата Arduino. У полі “BAUD” виберіть “19200”. Усе це вже показано на скріні вище. Після встановлення всіх цих налаштувань натисніть кнопку “Ok”. Тепер можна писати програму і прошивати її в плату! Для тестування, давайте напишемо класичну “мігалку” світлодіода, підключеного до PORTB.5 мікроконтролера (на платах Arduino там вже є світлодіод під назвою L).
Вихідний код програми:
$regfile = "m8def.dat" $crystal = 16000000 Config Portb.5 = Output Do Portb.5 = 1 Wait 1 Portb.5 = 0 Wait 1 Loop End
Після написання програми скомпілюємо її, для цього пройдемо по ланцюгу Program – Compile або просто натиснемо клавішу F7. Після компіляції програми можна прошивати її в нашу Arduino, пройдемо по ланцюгу Program – Send to chip – Program.
І побачимо вікно програми програматора:
Тепер, щоб прошити нашу програму, залишився один крок, це пройти по ланцюгу Chip – Write buffer into chip, або натиснути на наступну кнопку:
Після цього почнеться прошивка Arduino, при цьому світлодіоди TX і RX на платі будуть швидко мігати. Після прошивки, внизу вікна, де технічна інформація, з'являться повідомлення:
Вітаю! Ми успішно прошили плату Arduino з BASCOM-AVR, ми їх подружили!
Світлодіод L на платі повинен весело мигати:
До речі, розмір програми “мігалки”, написаної в BASCOM-AVR, склав всього лише 192 байти, набагато менше і краще, ніж у Processing, правда?
Цей метод прошивки можна використовувати на всіх платах Arduino та їх клонах. Але пам'ятайте про розпиновку виводів, BASCOM-AVR знає лише “справжні” порти та піни мікроконтролерів, не “Ардуїнівські”! У файлах до статті ви можете знайти вихідний код і файл прошивки програми "мігалки".
Прикреплені файли:
- ARDBAS.rar (8 Кб)