Чудово, якщо ви вже вмієте програмувати, починаючи з освоєння мікроконтролерів. Це означає, що вам залишиться лише розібратись з дрібницями роботи мікроконтролера. Але навіть якщо ви не маєте особливих навичок у програмуванні – не варто засмучуватись – просто візьміться і спробуйте їх здобути! У нашій статті ви зможете прочитати деякі непрості, але нескладні рекомендації, як це зробити швидко і просто.
З чого найкраще почати програмування?:
Ця стаття присвячена тим, хто ще не вміє програмувати і не оволодів мікроконтролерами, але хоче це зробити. Тому що основним фактором є бажання. Якщо з’явилось бажання, залишається лише належно організувати свій “процес самоосвіти”.
І так, приближаємось до суті! Перш за все, перед тим, як перейти до “прошивки” мікроконтролера, вам потрібно написати й налагодити програму його роботи. На цьому етапі багато людей починають копіювати чужі програми і відчайдушно намагаються зрозуміти, що ж там написано – це абсолютно неправильний підхід – не робіть так. Насправді, програму легше написати самостійно, ніж розібратись в чужій, але програма починається не з команд, величезної кількості символів і терабайтів тексту. Будь-яка програма починається з алгоритму!
Рекомендації для початківців щодо написання алгоритму:
Алгоритм роботи програми (так само, як і роботи будь-чого іншого) – це її графічне представлення у вигляді послідовності спеціальних блоків, пов’язаних між собою логічним ланцюжком, який визначає “що і в якій послідовності виконується”. Кожен з блоків має своє особливе призначення й виконує конкретну функцію. І перед тим, як навіть написати найпростішу програму для мікроконтролера (наприклад, блимаючи світлодіодом), вам потрібно, принаймні для себе, скласти алгоритм роботи програми.
Щоб скласти алгоритм роботи програми, вам потрібно знати функції та правила позначення кожного окремого блоку алгоритму, причому вам не варто запам’ятовувати все це, а лише потрібно переглянути у будь-якому посібнику з програмування!
Приклад складання алгоритму:
Коли ви, нарешті, розібралися, як правильно розташовуються блоки на схемі алгоритму, можна приступати до його створення. І якщо ви пишете програму для себе, то важливо керуватись кількома простими правилами:
Наглядність – не лінуйтеся розписати свій алгоритм, додати необхідні коментарі, але не навантажуйте непотрібною інформацією (будьте максимально зрозумілими та лаконічними).
Системність – намагайтеся сформувати звичку розкладати все по поличках. Хороший алгоритм – це не кількість різних блоків, а продумана структура зі строгою системою.
Оптимізація – “простота – ознака генія”. Одну й ту ж задачу можна вирішити багатьма способами, обирайте для себе способи, які передусім зрозумілі й прості (з найменшою кількістю операцій для отримання кінцевого результату), принаймні до тих пір, поки ви не навчитеся оптимізувати програми.
Звичайно, на початку вам буде дуже важко – будьте готові до того, що ваші перші алгоритми будуть нелаконічними, не простими і не оптимальними – головне не засмучуватись і продовжувати розбиратись і спробовувати.
Приклад розробки простого алгоритму:
Перш ніж розпочати розробку, важливо чітко сформулювати свою мету! Рекомендую конкретно записати те, що ви хочете зробити або який результат виконання програми вас задовольнить. Наприклад:
“При включенні живлення до схеми, запалити світлодіод, підключений до порту PD6 мікроконтролера Attiny2313 (див. малюнок №1), зачекати 5 секунд і почати миготіти ним.”
І, як ви вже здогадалися, вашим першим кроком після постановки та опису завдання не є збірка схеми або написання програми – а розумно скласти алгоритм роботи програми, що реалізує ваше завдання (див. малюнок №2).
Можливо, алгоритм, зображений на малюнку №2, не є ідеальним і був намальований без особливого дотримання стандартів та правил складання блок-схем або алгоритмів. Але для мене він зрозумілий і ясний – що є дуже важливим, щоб я міг скласти програму для його реалізації. У мене є таке бачення розв’язання задачі, а у вас, звичайно ж, може бути інше – тому спробуйте самі щось вигадати і скласти алгоритм для реалізації вашого пристрою на мікроконтролері. А про те, як його втілити у вигляді програми, ми описуватимемо в наступних статтях на нашому веб-сайті https://bip-mip.com/.