- Важливі фактори, які слід враховувати при виборі мікроконтролера
- 1. Застосування
- 2. Виберіть Архітектура мікроконтролера
- 3. Розмір біта
- 4. Інтерфейси для спілкування
- 5. Робоча напруга
- 6. Кількість штифтів вводу-виводу
- 7. Вимоги до пам'яті
- 8. Розмір упаковки
- 9. Споживання енергії
- 10. Підтримка мікроконтролера
Мікроконтролер - це, по суті, невеликий комп’ютер на мікросхемі, як і будь-який комп’ютер, він має пам’ять і зазвичай запрограмований у вбудованих системах для прийому вхідних даних, виконання обчислень та отримання вихідних даних. На відміну від процесора, він включає пам'ять, центральний процесор, введення / виведення та інші периферійні пристрої на одному чіпі, як показано на схемі нижче.
Вибір правильного мікроконтролера для проекту - це завжди складне рішення, оскільки це суть проекту, і від цього залежить успіх або невдача системи.
Існує тисяча мікроконтролерів різного типу, кожен з яких має унікальну функцію або конкурентну перевагу від форм-фактора до розміру упаковки, до обсягу оперативної пам'яті та ПЗУ, що робить їх придатними для певних програм та непридатними для певних програм. Тому часто, щоб уникнути головного болю, який виникає при виборі правильного, дизайнери роблять вибір на користь мікроконтролерів, яких вони знають, і часом, навіть вони насправді не відповідають вимогам проекту. Сьогоднішня стаття розгляне деякі важливі фактори, на які слід звернути увагу при виборі мікроконтролера, включаючи архітектуру, пам’ять, інтерфейси та нерухомість вводу-виводу серед інших.
Важливі фактори, які слід враховувати при виборі мікроконтролера
Нижче наведено деякі важливі фактори, на які слід звернути увагу при виборі мікроконтролера, включаючи архітектуру, пам’ять, інтерфейси та нерухомість вводу-виводу серед інших.
1. Застосування
Перше, що потрібно зробити перед тим, як вибрати мікроконтролер для будь-якого проекту, - це розробити глибоке розуміння завдання, для якого має бути розгорнуте рішення на основі мікроконтролера. Під час цього процесу завжди розробляється технічна специфікація, яка допоможе визначити конкретні особливості мікроконтролера, який буде використовуватися для проекту. Хороший приклад того, як застосування / використання пристрою визначає мікроконтролер, який буде використовуватися, демонструється, коли мікроконтролер з блоком із плаваючою комою приймається для проектування пристрою, який буде використовуватися для виконання операцій, що включають велику кількість десяткових чисел.
2. Виберіть Архітектура мікроконтролера
Архітектура мікроконтролера стосується внутрішньої структури мікроконтролера. Існує дві основні архітектури, що використовуються для проектування мікроконтролерів;
- Архітектура фон Неймана
- Гарвардська архітектура
Архітектура фон Неймана характеризується використанням тієї самої шини для передачі даних та отримання наборів команд з пам'яті. Тому передача даних та отримання інструкцій не можуть виконуватися одночасно, і зазвичай це заплановано. З іншого боку, Гарвардська архітектура передбачає використання окремих шин для передачі даних та отримання інструкцій.
Кожна з цих архітектур має свої переваги та недоліки. Наприклад, архітектура Гарварда - це комп'ютери RISC (зменшений набір інструкцій), і, отже, вони можуть виконувати більше інструкцій з меншими циклами, ніж комп'ютери CISC (Комплекс наборів інструкцій), які базуються на архітектурі фон Неймана. Однією з важливих переваг мікроконтролерів, заснованих на Гарварді (RISC), є той факт, що існування різних шин для набору даних та команд дозволяє розділити доступ до пам'яті та операцій арифметичного та логічного блоку (ALU). Це зменшує обчислювальну потужність, необхідну мікроконтролеру, і це призводить до зниження вартості, низького споживання енергії та розсіювання тепла, що робить їх ідеальними для проектування пристроїв, що працюють від батареї. Багато ARM,Мікроконтролери AVR та PIC засновані на архітектурі Гарварду. Прикладом мікроконтролерів, які використовують архітектуру Von Neumann, є 8051, zilog Z80 серед інших.
3. Розмір біта
Мікроконтролер може бути 8 біт, 16 біт, 32 біт і 64 біт, що є поточним максимальним бітовим розміром, яким володіє мікроконтролер. Бітовий розмір мікроконтролера представляє розмір "слова", що використовується в наборі інструкцій мікроконтролера. Це означає, що у 8-бітному мікроконтролері представлення кожної команди, адреси, змінної чи реєстру займає 8-біт. Одним із ключових наслідків розміру бітів є ємність пам'яті мікроконтролера. Наприклад, у 8-бітному мікроконтролері є 255 унікальних місць пам'яті, що визначається розміром бітів, тоді як у 32-бітному мікроконтролері є 4 294 967 295 унікальних місць пам'яті, що означає, що чим більший біт, тим більше число унікальних місця пам'яті, доступні для використання на мікроконтролері. Однак виробники в наші дні,розробляють способи забезпечити доступ до більшої кількості пам’яті мікроконтролерам менших розрядів за допомогою пейджингового керування та адресації, так що 8-бітний мікроконтролер стає 16-бітовим адресованим, але це, як правило, ускладнює програмування для розробника вбудованого програмного забезпечення.
Ефект розміру бітів, мабуть, відчутніше відчувається при розробці мікропрограми для мікроконтролера, особливо для арифметичних операцій. Різні типи даних мають різний обсяг пам’яті для різних бітових розмірів мікроконтролера. Наприклад, використання змінної, оголошеної як ціле без знака, для якої через тип даних буде потрібно 16 біт пам’яті, в кодах, що виконуються на 8-бітному мікроконтролері, це призведе до втрати найважливішого байта в даних, який часом може дуже важливий для досягнення завдання, для якого був розроблений пристрій, на якому повинен бути використаний мікроконтролер.
Таким чином, важливо вибрати мікроконтролер з бітовим розміром, який відповідає розміру даних, що обробляються.
Напевно, важливо зазначити, що сьогодні більшість програм застосовуються між 32-бітними та 16-бітними мікроконтролерами завдяки технологічним досягненням, що містяться в цих мікросхемах.
4. Інтерфейси для спілкування
Зв'язок між мікроконтролером та деякими датчиками та виконавчими механізмами, які будуть використовуватися для проекту, може вимагати використання інтерфейсу між мікроконтролером та датчиком або виконавчим механізмом для полегшення зв'язку. Візьмемо, наприклад, для підключення аналогового датчика до мікроконтролера буде потрібно, щоб мікроконтролер мав достатньо АЦП (аналого-цифрових перетворювачів), або, як я вже згадував раніше, для зміни швидкості двигуна постійного струму може знадобитися використання ШІМ-інтерфейсу на мікроконтролері. Тому буде важливо підтвердити, що вибраний мікроконтролер має достатньо необхідних інтерфейсів, включаючи UART, SPI, I2C серед інших.
5. Робоча напруга
Робоча напруга - це рівень напруги, при якому система призначена для роботи. Це також рівень напруги, з яким пов’язані певні характеристики системи. В апаратній конструкції робоча напруга часом визначає логічний рівень, на якому мікроконтролер взаємодіє з іншими компонентами, що складають систему.
Рівень напруги 5 В і 3,3 В є найпопулярнішою робочою напругою, що використовується для мікроконтролерів, і слід прийняти рішення щодо того, який із цих рівнів напруги буде використовуватися під час розробки технічної специфікації пристрою. Використання мікроконтролера з робочою напругою 3,3 В у конструкції пристрою, де більшість зовнішніх компонентів, датчиків та виконавчих механізмів буде працювати на рівні напруги 5 В, буде не надто розумним рішенням, оскільки виникне потреба в реалізації логічного рівня перемикачів або перетворювачів, щоб забезпечити обмін даними між мікроконтролером та іншими компонентами, і це призведе до невиправданих витрат на виготовлення та загальної вартості пристрою.
6. Кількість штифтів вводу-виводу
Кількість портів введення / виводу загального або спеціального призначення та (або) контактів, якими володіє мікроконтролер, є одним з найважливіших факторів, що впливає на вибір мікроконтролера.
Якщо мікроконтролер повинен мати усі інші функції, згадані в цій статті, але не має достатньої кількості IO-штифтів, як того вимагає проект, його не можна використовувати. Важливо, щоб мікроконтролер мав достатньо ШІМ-контактів, наприклад, для контролю кількості двигунів постійного струму, швидкість яких буде змінюватися приладом. Хоча кількість портів вводу-виводу на мікроконтролері може бути збільшена за допомогою регістрів зсуву, він не може бути використаний для всіх типів додатків і збільшує вартість пристроїв, в яких він використовується. Тому краще переконатися, що мікроконтролер, який буде обраний для проектування, має необхідну кількість портів вводу-виводу загального та спеціального призначення для проекту.
Ще одне ключове, що слід мати на увазі при визначенні кількості контактів вводу-виводу загального або спеціального призначення, необхідних для проекту, - це майбутні вдосконалення, які можуть бути зроблені на пристрої, і те, як ці вдосконалення можуть вплинути на кількість виводів вводу-виводу вимагається.
7. Вимоги до пам'яті
Існує кілька типів пам'яті, пов’язаних з мікроконтролером, на дизайнер яких слід звернути увагу при виборі. Найважливіші з них - це оперативна пам’ять, ПЗУ та EEPROM. Обсяг кожного з цих необхідних спогадів може бути важко оцінити, поки він не буде використаний, але судячи з обсягу роботи, необхідної мікроконтролеру, можна робити прогнози. Зазначені вище пристрої пам'яті формують дані та програмну пам’ять мікроконтролера.
У програмній пам’яті мікроконтролера зберігається мікропрограма мікроконтролера, тому при відключенні живлення від мікроконтролера мікропрограмне забезпечення не втрачається. Обсяг програмної пам’яті залежить від обсягу даних, таких як бібліотеки, таблиці, двійкові файли для зображень тощо, необхідні для коректної роботи прошивки.
Пам'ять даних, з іншого боку, використовується під час роботи. Усі змінні та дані, що генеруються в результаті обробки серед інших видів діяльності під час виконання, зберігаються в цій пам'яті. Таким чином, складність обчислень, яка відбуватиметься під час виконання, може бути використана для оцінки обсягу пам'яті даних, необхідного для мікроконтролера.
8. Розмір упаковки
Розмір упаковки стосується форм-фактора мікроконтролера. Мікроконтролери, як правило, поставляються в упаковках від QFP, TSSOP, SOIC до SSOP та звичайного пакета DIP, що полегшує кріплення на макетній панелі для створення прототипів. Важливо спланувати заздалегідь виробництво та передбачити, яка упаковка буде найкращою.
9. Споживання енергії
Це один з найважливіших факторів, який слід враховувати при виборі мікроконтролера, особливо коли він повинен бути розгорнутий у додатку, що працює від акумулятора, наприклад пристроях IoT, де бажано, щоб мікроконтролер мав якомога меншу потужність. Таблиця даних більшості мікроконтролерів містить інформацію про декілька апаратних та (або) програмних методів, які можна використовувати для мінімізації кількості енергії, споживаної мікроконтролером у різних режимах. Переконайтеся, що обраний вами мікроконтролер відповідає потребі енергії s для вашого проекту.
10. Підтримка мікроконтролера
Важливо, щоб мікроконтролер, з яким ви вирішили працювати, мав достатню підтримку, зокрема; зразки коду, довідкові конструкції та, якщо можливо, велика спільнота в Інтернеті. Перша робота з мікроконтролером може спричинити різні проблеми, і доступ до цих ресурсів допоможе вам швидко їх подолати. Хоча використання найновіших мікроконтролерів через ці цікаві нові функції, які він поставив, це добре, бажано переконатися, що мікроконтролер існує принаймні 3-4 місяці, щоб забезпечити більшість ранніх проблем, які можуть бути пов'язані з мікроконтролером було б вирішено, оскільки різні замовники провели б багато тестувань мікроконтролера з різними додатками.
Також важливо вибрати мікроконтролер з хорошим набором для оцінки, щоб ви могли швидко розпочати створення прототипу та легко випробувати функції. Набори для оцінки - це хороший спосіб набути досвіду, ознайомитися з ланцюжком інструментів, що використовується для розробки, та заощадити час під час розробки пристрою.
Вибір правильного мікроконтролера для проекту і надалі залишатиметься проблемою, вирішувати його повинен кожен дизайнер апаратного забезпечення, і хоча існує ще декілька факторів, які можуть вплинути на вибір мікроконтролера, ці фактори, згадані вище, є найбільш важливими.