Створити власні бібліотеки досить просто. Їх документація специфікацій реєстру досить хороша, більшість, якщо не всі периферійні пристрої легко налаштувати. Мені набагато болючіше користуватися їх бібліотеками. але, мабуть, це тільки я. Це справедливо для st, nxp, ti, atmel, щоб назвати декілька (не стільки для Intel, і мікрочіпа).
Чому вони змінюють бібліотеки, це може бути з будь-якої кількості причин, якийсь новий начальник перейшов на посаду, якийсь відділ закрили, інший взяв на себе. Маркетинг хотів новий імідж продукту. Як зазначалося ElectronS, це може бути спробою відмовитися від апаратних засобів більше, щоб залучити користувачів, які не бажають чи не вміють робити голий метал. Я б пішов далі про це і сказав, що вони, ймовірно, намагаються конкурувати з явищем Ардуїно. Який mbed і всі інші завжди намагалися зробити і провалилися (ще до Ардуїно).
У будь-якому випадку, чим далі від апаратури він стає більш роздутим і повільнішим, тому більше вам доведеться витрачати на одиницю для рому, таран і мГц. Просто, щоб ви могли витратити стільки ж часу на програмування? Просто робити це по-іншому?
Ви кажете, що ви родом із світу PIC, тепер вони зробили гарну роботу з інструментами, хоча їхні чіп-документи були жахливими, хоча і найгіршими. вони компенсували бібліотеками та пісочницями.
Наприкінці дня спробуйте різні варіанти, спробуйте конкурентоспроможні продукти, щоб побачити, як їх інструменти порівнюють. Багато чого можна зробити безкоштовно, лише щоб побачити, чи є сенс і чи можна складати речі. Можливо, навіть використовувати тренажер набору інструкцій. Знайдіть той, який відповідає вам.
Зверніть увагу, що параметр без збережених бібліотек ЗАВЖДИ доступний для вас. Ви не обмежуєтесь тим, якою ланцюжком інструментів ви можете користуватися, якою операційною системою хосту, яким ідеєм, редактором і т. Д. Вони можуть дотримуватися вас при програмуванні деталей, якщо їхні можливості вкрай обмежені в цьому відношенні переходять на якусь іншу мікросхему або продавця, якщо можете.
Щоб продати такий чіп-продукт, вони повинні забезпечити середовище розробки, будь то їхнє чи безкоштовне, яке вони склеюють. І вони, як правило, збирають якусь бібліотеку. Він повинен виглядати достатньо добре, і моргнути приведений приклад працює достатньо добре, щоб або ваше керівництво, або ваша апаратна команда розробляли дизайн свого продукту, тоді коли ваш продукт на борту перекидається через стіну на програмне забезпечення, це коли біль прибуває чи не прибуває. Якщо це майже працює, але не зовсім, це великий виграш для постачальника чіпів, оскільки тепер ви заплатите за технічну підтримку за цей останній дрібницю. Тож їм в інтересах бути майже там, але не зовсім.
Постачальники чіпів повинні виглядати достатньо добре, щоб отримати дизайн. Вони повинні постійно вдосконалювати (змінювати) товар, щоб залучити нових та старих клієнтів. Таким чином, у них доведеться робити надмірні зміни, наскільки відстань і скільки попередніх бібліотек продовжують підтримувати, змінюється. Тож майже будь-яка бібліотека, до якої ти звик, з часом піде. Тому навчіться адаптуватися (або не використовуйте їхні речі та йдіть самостійно, які ви можете підтримувати нескінченно). Зрозуміло, в ідеалі вам потрібно розробити додаток лише один раз на продукт, зробити свою прошивку ідеальною (удача, якщо ви користуєтеся сторонніми бібліотеками), і вам не потрібно повернутися назад і знайти комп’ютер, який буде завантажувати їхню ланцюжок інструментів, якщо ви зможете знайти його копію та пам'ятайте, як користуватися цією старою бібліотекою. Пам’ятайте не тільки про збереження вихідного коду, але й про всі їх інструменти та документи.
Їх бібліотеки підтримуються лише на одній ланцюжку інструментів, під одним, можливо, двома IDE, а іноді лише в Windows та певних версіях. Знову ж таки, у вас немає жодних з цих обмежень, і, звичайно, не для ARM, якщо ви робите свою справу. Ви завжди можете прочитати будь-яку / всі їх бібліотеки, щоб побачити, як вони роблять справи. Але це часто дуже страшно, вони не використовують своїх розробників команди A для бібліотек, я вилучив декілька рядків коду, щоб запитати кандидатів на співбесіду, що з цим кодом не так.
щоб заощадити час і зусилля як на стороні кремнію, так і на стороні програмного забезпечення, вони дуже часто переробляють один і той же ip, тож коли ви бачите, як периферія працює на одній з своїх мікросхем, вона часто працює однаково на багатьох інших їхніх чіпах. Так, годинникові системи можуть бути складними з бібліотеками або без них. Висока ймовірність затримати чіп, саме там трапляється більшість моїх чіпів / дощок. Допомагає зрозуміти, як працюють їхні чіпи, наприклад, AVR, більшість, якщо не всі, можна перепрограмувати під час скидання чіпа, тому будь-який поганий код, який переплутує штифти, необхідні для перепрограмування, або висить логіку, необхідну для перепрограмування, не Має значення, ви можете перепрограмувати ці фішки. Деякі з цих постачальників (st - це один) мають внутрішній завантажувач, який ви можете вибрати за допомогою ремінця (наприклад, BOOT0 у світі),
Один розмір підходить всім підходить нікому добре. Особливо це стосується програмного забезпечення. Таким чином, будь-яка спроба абстрагувати обладнання, просто робить його повільним і роздутим. Ви також можете отримати більший чіп і запустити на ньому Linux, якщо ви це справді хочете. Багато цього відбувається в результаті розробників, хоча вони не хочуть забруднити руки, тому ми в основному просили цього, і вони намагаються його поставити.
Знову ж таки, не замикайтесь на новому або будь-якому постачальнику (якщо тільки не пізно, і менеджмент і, або команда апаратури приклеїли його до вас, зауважте, що продукти stm32 приємні та прості у використанні). Магазин навколо. TI кладе багато яєць у кошик cortex-m4. Ви можете зробити mbed річ на багатьох цих продуктах, а також на рішеннях, що підтримуються постачальником.
Одне, на що завжди можна покластися, це те, що вони час від часу змінюватимуть бібліотеки і з часом припинять підтримувати ту, до якої ти звик.