USB Toolstick, або програмування мікроконтролерів «для найменших»

Долучаючись до описаного вище напрямку постів, пропоную вашій увазі ряд девайсів, що дозволяють абсолютно безболісно розпочати процес вивчення та програмування реальних чіпів.
Компанія Silicon Laboratories пропонує цілу лінійку налагоджувальних засобів для розробників-початківців (для більшості моделей кристалів). Слід окремо відзначити, що у мікроконтролерів Silabs є цілий набір відмінних особливостей, що вигідно виділяють їх на тлі «народних» Atmel-ів і PIC-ів. Серед них:
- Прецизійні аналогові блоки (до 32 каналів АЦП з розрядністю до 24 біт та до 2 каналів ЦАП з розрядністю до 12 біт)
- Найвищі показники продуктивності серед 8-розрядних мікроконтролерів (до 100 MIPS)
- Мале енергоспоживання (0,3-0,6 мА/MIPS)
- Малі габарити (до 3х3 мм)
- Гнучкий та потужний блок цифрового введення/виводу (до 64 ліній)
Отже, найменш досвідченим в галузі електроніки неофітам як засіб для найшвидшого старту поспішу відрекомендувати Silabs Toolstiсk Evaluation Kit, що коштує 14.80 доларів, наприклад, у пітерському «Електроснабі».

Зовні пристрій дуже нагадує звичайну USB-флешку. Все що потрібно для роботи з девайсом: підключити його до комп'ютера і встановити драйвери, що знаходяться на доданому диску, і інтегроване середовище розробки.

У схему пристрою включені два мікроконтролери: допоміжний С8051F321 (чіп з інтегрованим usb-інтерфейсом), що здійснює програмування і внутрішньосхемне налагодження за інтерфейсом USB другого мікроконтролера - С8051F300, одного з найдешевших чіпів фірми Silabs,що володіє, проте, достатньою функціональністю для багатьох стандартних мікроконтролерних рішень.
Крім того, на платі розміщено 4 світлодіоди: світлодіод PWR, що відображає наявність живлення по USB; світлодіод RUN/STOP, що відображає активність процесу внутрішньосхемного налагодження; два користувача світлодіоди, підключених у цифрових портів введення-виведення загального призначення мікроконтролера C8051F300. Власне з ними і пропонується «пограти» розробнику-початківцю.
Зауважу, що Silabs пропонує досить докладний (для функціоналу даного пристрою) посібник.

Після встановлення софту користувач отримує можливість створювати в середовищі проекти і прямо з середовища програмувати встановлений на платі мікроконтролер C8051F300 на ассемблері та С, а також здійснювати його внутрішньосхемне налагодження (зупиняти роботу програми, ставити breakpoint-и, вивчати стан пам'яті, регістрів та окремих змінних та тощо)
Крім того, доступні готові вихідні засоби C в Application note's на сайті Silabs, які можна розбирати для прискорення процесу навчання.
Загалом, за допомогою подібного девайсу можна відразу вирішити цілий спектр самоосвітніх завдань та закріпити знання на практиці:
- вивчити інтегроване середовище розробки фірми Silicon Laboratories
- вивчити типовий набір команд мікропроцесорів C8051Fxxx c 8051-архітектурою
- написати програми для C8051F300 на асемблері та C
- вивчити принцип роботи вбудованого комутатора ресурсів Crossbar
- вивчити роботу конфігураційного майстра для автоматичної ініціалізації мікроконтролерної периферії
- розібратися з налаштуванням цифрових портів загального призначення та принципами роботи з ними
- вивчити систему переривань
- вивчитипринципи роботи та поекспериментувати із вбудованими таймерами
- розібратися з широтно-імпульсною модуляцією та реалізувати її на базі вбудованих таймерів
У своїй організації студентам-старшокурсникам з технічних ВНЗ, спрямованим до нас на проходження практики, я часто видавав на тиждень такий девайс. Зазвичай результати не змушували довго чекати.
Однак функціональності цього пристрою недостатньо для більш просунутих завдань. Вивчивши вздовж і впоперек Silabs Toolstick Evaluation Kit, настав час переходити на Silabs Toolstick Base adapter і Silabs Toolstick Daughter card з вибраним Вами мікроконтролером. Повний список налагоджувальних пристроїв - на сайті виробника.

Базовий адаптер реалізує функції USB-програматора/внутрішньосхемного налагоджувача, а також містить індикацію живлення та процесу налагодження.

На дочірній платі мікроконтролера C8051F311 надано доступ до всіх висновків мікроконтролера (зона Full Pin Access на платі). Це дозволяє підключати до чіпа будь-які додаткові електричні кола. (Можна, наприклад, покерувати електромотором або навантаженням "поклацувати" через реле, тільки бажано через гальванічну розв'язку.)На платі встановлена кнопка, підключена до одного з висновків мікроконтролера. Крім того, на платі є потенціометр, підключений до входу аналого-цифрового перетворювача. За допомогою такого рішення можна легко та невимушено вивчити весь функціонал обраного Вами кристала.

Дочірні плати різних мікроконтролерів можуть різнитися між собою. Наприклад, дочірня плата чіпа C8051F321, що містить інтерфейс USB, містить роз'єм microUSB.

Описаний налагоджувальний комплект дозволяє швидко перетворити будь-який комп'ютер на лабораторію з вивчення мікроконтролерів. Використання usb-подовжувача дозволить зробити цей процес ще комфортнішим.

Зазначу, що Silicon Laboratories – не єдиний виробник таких налагоджувальних засобів. Вище наведено зображення налагоджувального пристрою компанії Texas Instruments EZ430-F2013, що містить мікроконтролер популярного сімейства MSP430.
Насамкінець, бажаю всім великих успіхів у галузі вивчення та програмування нових мікроконтролерів зокрема та проектування якісної радіоелектронної апаратури в цілому!
Хардкорна конфа за С++. Ми запрошуємо лише профі.