Блокнот: размещение файлов в памяти.

Если проект выдаёт что-либо наружу сложнее нескольких светодиодов, то надо это как-то хранить. И для этого придумали понятие файл: это именованная область данных на носителе информации. Самый простой способ — разместить в памяти. Но даже тут возможны варианты.

Читать дальше

Эмуляция носителя FAT32 на stm32f4


Некоторое время назад возникла данная задача — эмуляция носителя FAT32 на stm32f4.
Её необычность заключается в том, что среди обвязки микроконтроллера вовсе может не быть накопителя, вроде FLASH-контроллера или SD-карты.
В моём случае накопитель был, но правила работы с ним не позволяли разместить файловую систему. В ТЗ, тем не менее, присутствовало требование организовать Mass Storage интерфейс для доступа к данным.
Результатом работы явился модуль, который я озаглавил «emfat», состоящий из одноимённого .h и .c файла.
Модуль независим от платформы. В прилагаемом примере он работает на плате stm32f4discovery.
Функция модуля — отдавать куски файловой системы, которые запросит usb-host, подставляя пользовательские данные, если тот пытается считать некоторый файл.
Итак, кому это может быть полезно и как это работает — читайте далее.


Читать дальше

UT.6.02.x: Embedded Systems - Shape The World улучшенная версия

В прошлом году был курс Embedded Systems — Shape The World, многие о нём знают. Мне курс очень понравился, получил сертификат (правда бесплатную версию).


Теперь они запустили новую улучшенную версию и добавили несколько новых вещей.


Читать дальше
  • +4
  • 15 января 2015, 13:11
  • Nemo

TDD для Embedded.

На своей работе занимаюсь написанием кода для разных микроконтроллером. Но потом приходиться всё тестировать, и тестировать приходиться каждый раз когда идут даже самые простые изменения в прошивке, например смена значения константы и т.д. К примеру изменения в прошивке и компиляцию можно сделать меньше чем за 5 минут, а тестировать нужно примерно часа 5 или больше ( всё завысит от тестплана). Хочу автоматизировать процесс тестирования, так как например делают наши высокоуровневые коллеги — пишут автоматизирование тесты (TDD). Хочется чтобы запустил тестирование и через некоторое время увидел результ — тест такой — pass/fail.

Начал читать книгу: Test Driven Development for Embedded C пока понимаю не много…
Также понемного разбираюсь с библиотекойPySerial — очень просто работать с ком портом.

Само тестирование вижу так:
запустил скрипт или программу на компе, программа конектиться с МК по UART и обмениваеться данными. Программа (скрипт) на компе шлёт данные в МК, а сама знает заведомо правильный результат. МК обрабатывает принятый результат и посылает обратно на комп, программа сравнивает — если сошлось — pass, не сошлось — fail.

Кто нибудь делал подобное?
  • 0
  • 18 августа 2013, 20:53
  • Nemo

QT Creator как IDE для “C-Embedded-проектов”

QT Creator как IDE для «C-Embedded-проектов»

Хочу с вами поделиться еще одним удобным инструментом, помогающим в нашем любимом Embedded деле.
Этот инструмент — это IDE для Embedded-разработчика. В статье хочу затронуть лишь вторую сторону Эмбэдеда, программирование.
То есть, тут не будет ни слова о микросхемах и микроконтроллерах.
Так сложилось, что я по мере нужды занялся поиском, и нужно было найти графический, легкий, удобный, полнофункциональный IDE для Embedded и к тому же под Linux, а самое главное – бесплатный, или в идеале под GPL лицензией.
Альтернативы типа Eclipse и NetBeans меня не впечатлили, тяжелые и очень неудобные. Мега любимый SlickEdit (который я считаю просто самым лучшим IDE) стоит дорого, а его демо-версия попросту не способна слелать то что умеет полнофункциональная версия (я это проверял).
Был сделан поиск, и после выбора среди вариантов был найден ответ. Ответ был QTCreator. Разумеется что это не панацея, и кое чего он не может(или я не нашел как это сделать), но также может много, тоесть золотая середина.
В любом случае, думаю что если нужно удобно и быстро работать с кодом на языке C, то это можно сделать весьма комфортно используя IDE, выше озвученный QTCreator. Ну и также если у вас Java-проект, то QTCreator тоже справится, просто потому что он по синтаксису очень похож на C++, который поддерживается.

Qt Creator IDE




Читать дальше