• Доработка USB-стека в микроконтроллерах STM32 и TivaC

      Наличие USB порта в современных микроконтроллерах открывает широкие возможности для самостоятельного изготовления разнообразных управляемых с компьютера устройств. На практике, однако, выясняется, что поставляемые производителем библиотеки для работы с USB нуждаются в доработке. Если вам интересен опыт подобной доработки для двух популярных семейств МК — добро пожаловать под кат.
      Читать дальше →
    • Эмуляция носителя FAT32 на stm32f4



      Недавно возникла данная задача — эмуляция носителя FAT32 на stm32f4.

      Её необычность заключается в том, что среди обвязки микроконтроллера вовсе может не быть накопителя.

      В моём случае накопитель был, но правила работы с ним не позволяли разместить файловую систему. В ТЗ, тем не менее, присутствовало требование организовать Mass Storage интерфейс для доступа к данным.

      Результатом работы явился модуль, который я озаглавил «emfat», состоящий из одноимённого .h и .c файла.

      Модуль независим от платформы. В прилагаемом примере он работает на плате stm32f4discovery.

      Функция модуля — отдавать куски файловой системы, которые запросит usb-host, подставляя пользовательские данные, если тот пытается считать некоторый файл.
      Читать дальше →
    • Микро БД для конфигурации на микроконтроллере

      Многие разработчики программ для микроконтроллеров сталкивались с проблемой хранения конфигурационных данных. Это могут быть калибровочные коэффициенты измерительного алгоритма или просто последний выбранный пользователем пункт меню. Для микроконтроллера, имеющего возможность записывать в собственную flash-память, решение кажется простым — стираем сегмент и пишем туда все, что нужно. Однако, если необходимо еще и обеспечить отказоустойчивость по отношению к выключению питания в произвольный момент, задача становится нетривиальной, — по сути необходимо реализовать маленькую базу данных с механизмом обеспечения атомарности операций записи и восстановлением после сбоев. Решение этой задачи для микроконтроллеров семейства MSP430 — под катом. По количеству используемых ресурсов оно подходит даже для самых младших членов этого семейства — с размером RAM от 256 байт и falsh-памяти от 8Kb. В качестве бонуса — интерфейс командной строки (через UART) для чтения и записи конфигурации.
      Читать дальше →
      • +24
      • 17,4k
      • 3
    • Графический «велосипед» по мотивам Turbo Vision (дела давно минувших дней)

      Относительно недавно, прочитав местную статью "Демо, которых никто никогда не видел", решил, что тоже стоит пролить свет на некоторые плоды своей программистской молодости.

      Начиналось с этого:
      image

      Под 'катом' 500Кб картинок!!!
    • Использование процедур и функций в Delphi

      Рано или поздно любому программисту потребляется использовать процедуры и функции. Все мы помним еще с паскаля, что там ничего нет сложного, но некоторые вещи обычно в книжках не описываются, хотя для грамотного составления программы требуется знать.
      Читать дальше →
    • Обнаружение объектов методом Оцу

      Здравствуйте, уважаемые хабрачитатели и хабракритики. Этот пост я хотел бы посвятить такой актуальной на сегодняшний день теме, как обнаружение объектов на изображениях.
      В качестве одного из алгоритмов такого обнаружения рассмотрим выбор порога быстрым и эффективным методом Оцу.
      Читать дальше →
    • Vogue-Tec News #0



        Ежечекпоинтовый обзор нововведений, интересностей и общих событий вокруг плеера из журнала Vogue

        Содержание


        • Linux? Linux!
        • Ковыряем софт
        • uCOS & miniOS
        • PS/2 интерфейс
        • Сайт, мануалы, Downloads и Credits

        Читать дальше →
      • Внутри MP3. А как оно всё устроено?



          Однажды мне понадобилось решить простенькую (как мне тогда казалось) задачу – в PHP-скрипте узнать длительность mp3-файла. Я слышал о ID3 тегах и сразу подумал, что информация о длительности хранится либо в тегах, либо в заголовках mp3-файла. Поверхностные поиски в интернете показали что за пару-тройку минут решить эту задачу не получится. Поскольку от природы я довольно любопытен а время не поджимало — решил не использовать сторонние инструменты а разобраться в одном из самых популярных форматов самостоятельно.

          Если Вам интересно, что там внутри – добро пожаловать под кат (трафик).
          Читать дальше →
        • Обратная польская запись

            Два плюс два, умножить на два?

            Не знаю как вы, но я в школе долго мучился, пытаясь разобраться с приоритетом операций и скобками. Потом, как и каждый начинающий программист, я мучился с приоритетом операций и скобками, когда писал собственный калькулятор. А оказалось, что все эти мучения были напрасны. Ведь существует прекрасный механизм, известный, как обратная польская запись. О том, что это такое и как с этим работать я и хочу вам рассказать.
            Читать дальше →