Мікропрограмне забезпечення попередньо встановлено у флеш-пам’яті перед виготовленням друкованої плати, підтримуючи високу пропускну здатність. Тим не менш, є переваги в програмуванні флеш-пам’яті вже після її випуску, тобто до того, як вона була припаяна до плати. Програматор Spi Flash (SF) з дискретною флеш-пам’яттю має суттєві переваги перед звичайними SD. Його ціна зазвичай не перевищує 1/10 вартості флешки, використовує набагато менший форм-фактор і вимагає невеликої кількості спеціального обладнання.
Вибір: SF & SD
Існує безліч причин для вибору дискретної флеш-мікросхеми замість підсистеми SD або, навпаки, тому користувачеві необхідно вибирати компроміси перед придбанням пристрою. Наведений нижче список містить кілька аргументів, які потрібно знати, перед вибором DIP-чіпа або повноцінного SD-рішення:
Флеш-пам’ять SPI
Флеш-пам’ять SPI – це тип енергонезалежної пам’яті, заснований на технології MOSFET. Енергонезалежне означає, що пристрій зберігає всі дані, в тому числі, коли не включено. Флеш-пам’ять працює, переносячи групу носіїв заряду на діелектрик. Це називається програмуванням і зазвичай виконується з більш високою напругою. Процес не нешкідливий, він насправді пошкоджує матеріал, і після 100 тис. циклів пристрій виходить з ладу. Щоб зняти носії заряду з діелектрика, при однаковому високій напрузі на зворотному потенціал знімають носії з затвора. Це називається стиранням.
Запрограмований флеш-біт має значення 0, а стертий біт має значення 1, стертий флеш-байт дорівнює 0xFF в шістнадцятковому форматі. В даний час флеш-пам’ять може зберігати декілька біт на комірці, з використанням рівнів напруги. З урахуванням зростання вимог до об’єму пам’яті це стає все більш складним виконати конструкційно.
Перевага Spi Flash програматорів USB полягає в простоті програмного забезпечення, код в основному зрушує дані висновків DI і DO, відповідно по передньому фронту тактової частоти. Годинник контролюються хостом, для них не потрібно химерна схема синхронізації: фази можуть бути настільки асиметричними, наскільки потрібно, за умови дотримання мінімальних вимог до ширини циклу пристрою.
Утиліта для ідентифікації
Flashrom – це утиліта для ідентифікації, читання, запису, перевірки і видалення флеш-чіпів. Вона призначена для прошивання образів BIOS/EFI/coreboot/firmware/optionROM на материнських платах, картах контролера мережі/графіки/зберігання і на різних пристроях програмування. Функціональні можливості:
DIY: універсальні програми створення
Це кращий для мікроконтролерів PIC і AVR програматор Spi Flash, своїми руками, може бути, його створити не вийде, але пристрій не дороге, коштує менше 10 $ і виконується з легко доступних компонентів.
Переваги:
Мікроконтролер PIC18F2550
Основні три послідовних заголовка (J1, J2 і J3) використовуються для зв’язку з веденим пристроєм мікроконтролера. Використання висновків по-різному в різних мікроконтролерах. Перемикач скидання доданий до блока контролера для установки скидання програматора. PIC18F2550 блимає за допомогою шістнадцяткового коду прошивки, можна використовувати інші послідовні або паралельні програматори Spi Flash PIC.
Він перевіряє зв’язок між мікроконтролером і комп’ютером. Потрібно провести тестування HID-виявлення (Human Interface Device), яке усуне багато помилок, таких як проблеми з мікроконтролером, кристалами і USB. Перед початком використання програми переконуються, що блимає світлодіод LED, який потім уповільнює процес миготіння. Якщо програматор не виявлено, перевіряють перехресні з’єднання та інструкції. Якщо він виявлений, переходять до наступного кроку.
Програмування через OpenProg
Встановлюють програму OpenProg на ПК, запускають і перевіряють підключений пристрій. Послідовність прошивки програматора Spi Flash:
Дизайн друкованої плати
Ця друкована плата розроблена в Eagle 7.2. Розмір пластини 7,5 х 7 см, вона виконана на автоматичному травильном верстаті. Друкована плата також може бути виготовлена з допомогою хімічного травлення в домашніх умовах.
Компоненти JA, JB, JC є перемичками. За схемою ретельно перевіряють це і спочатку, під час складання компонентів, встановлюють перемички. Для забезпечення безпеки PIC18F2550 під час пайки використовують 28-контактна підстава IC.
Плата розширення пов’язує програматор з мікроконтролером. Різні серії мікроконтролерів мають різні контакти і конфігурацію для програмування. Це дає користувачам перевага в простоті програмування мікроконтролера.
Плата розширення може бути легко зроблена з використанням перфорованої дошки або в спеціальних заготовок для плат, придбані в торговельній мережі. Для серій мікроконтролерів використовується різні плати розширень. Для LVICP від 5 до 3,3 В необхідний регулятор напруги, такої як LM1117 або аналогічний йому.
Пристрій 3.3 повинно бути запрограмовано тільки з використанням плати розширення 3.3 В, в іншому випадку може статися необоротне ушкодження. Деякі з плат мають варіант 5 Ст. Якщо потрібно запрограмувати на 5 В, можна вибрати опцію «Не вимагати плати низької напруги». Також не рекомендується розміщувати 24F-33F у гніздо 30F, яке працює при 5 Ст.
Завершення процесу створення
Після виготовлення частині контролера і плати розширення, можна відразу перейти до програмування пристрої:
Послідовна SPI AT45DB161D
Простий Spi Flash програматор SPI (AT45DB161D) являє собою 16-мегабитную (2 МБайт) 2,5 або 2,7 флеш-пам’ять з послідовним інтерфейсом, ідеально підходить для широкого спектру додатків, призначених для зберігання програмного коду і даних.
Всього 2097152 байта (0x1FFFFF) організовані в 4096 сторінок з 512 байтами на сторінку. Незважаючи на те, що чіп пропонує різні варіанти стирання, бібліотека програмного забезпечення підтримує стирання блоків, причому один блок містить 4 Кбайт.
Щоб перезаписати існуючі дані, спочатку необхідно видалити відповідний блок. Читання і запис даних здійснюється досить простим способом, в основному шляхом надання адреси читання/запису (від 0 до 0x1FFFFF) та інформації про довжину даних. Використовуючи існуючі базові функції, можна розширити код для підтримки великої системи доступу до файлів.
USB – накопичувач EEPROM
Програматор Spi Flash EEPROM серії 25 з програмним забезпеченням і підтримкою драйверів і 25-SPI флеш-пам’ять 8-контактний/16-контактний має наступні функціональні можливості:
Усунення збоїв роботи мікроконтролерів
Коли користувач починає працювати з мікроконтролерами, він, ймовірно, зіткнеться з проблемами при програмуванні, на вирішення яких потрібні години або дні, а іноді вони просто нерозв’язні. Досвідчені програмісти поділилися своїми напрацюваннями усунення різних порушень, ось деякі з них:
Після виконання своїми руками USB-програматора Spi Flash користувач отримає SF, виконану власноруч для системного програмування. Вона буде легко управлятися комп’ютером через шину USB завдяки зручному інтерфейсу і потужним функціями.