Программы

IDE для разработки на AVR (GCC и Rat)

TrolStudio IDE, AVR Rat. C--

Раньше для разработки на Си вообще, и под микроконтроллеры AVR в частности я использовал IDE NetBeans, относительно уникальной фичей которой была поддержка С/С++ и GCC-ассемблера из коробки, с подсветкой синтаксис, возможностью сборки проекта и рефакторинга. Но, увы, после того как Oracle передали NetBeans в Apache, те превратили эту некогда неплохую IDE в унылое говно, выпилив оттуда поддержку С/С++ и заменив её на непонятное нечно, которое как бы есть (в меню создать С/++ проект все ещё можно), но по факту уже много лет как абсолютно неработоспособно.

Тестер микросхем: софт

chip tester ctc utility

Первоначально софт тестера микросхем был написан на языке Java и для его запуска требуется JRE. Со временем это стало вызывать проблемы при запуске под Windows, связанные с тем, что библиотека поддержки последовательного порта перестала работать под 64-битной версии Windows. Из-за чего приходилось использовать 32-битную версию JRE, поиск и установка которой периодически вызывали проблемы у пользователей. В результате было принято решение полностью переписать софт без использования JVM.

The Rat - компилятор C-- для AVR

The Rat AVR

При написании ассемблерного кода возникает желание иметь более удобный синтаксис, похожий на синтаксис Си, где вместо мнемоник ассемблера можно использовать привычные и более читаемые конструкции. Подобно тому, как это делается в языке C--. Это желание и побудило на создания компилятора подобного языка для AVR, позволяющего писать компактный и шустрый код, и названного Rat.

Текущая версия: 0.2

Расширенный ассемблер (C--) для AVR

Никакой язык программирования не сравнится а ассемблером по возможности писать самый компактный и быстрый код. На сегодняшний день, каким бы продвинутым не был компилятор, и какие бы хитрые оптимизации он не творил с кодом, результат всё равно не будет идеален. А иногда он будет совсем сильно не идеален. По крайней мере, это точно свойственно компилятору AVR GCC.

Графическая оболочка для avrdude под MacOS

avrfuses

Программа avrdude поддерживает все актуальные программаторы микроконтроллеров AVR и является кроссплатформенной (Linux, Windows, MacOS). Это консольная утилита и её удобно вызывать из shell/bat-скриптов. Единожды написав такой файлик и положив его в директорию с проектом, получаем возможность быстро прошить и проверить фьюзы, flash и eeprom микроконтроллера. Проблема только в том, чтобы написать этот скрипт. И тут основную головную боль вызывают fuse-биты, т.к. надо правильно сформировать их значения нигде не ошибившись. Иначе, устройство, в лучшем случае, может не заработать совсем или работать неправильно. Ну а в худшем случае можно "окипрпичить" микроконтроллер.

Для avrdue написано много разных графических оболочек под Windows, но среди всего этого многообразия не так просто найти удобный и не сильно глючный софт. Основное требование к оболочке - возможность работать с fuse-битами не как с числами или набором непонятных чекбоксов, а в нормальном человекочитаемом формате. Под MacOS вариантов оболочек совсем не много, но, к счастью, есть open-source проект AVRFuses и с фьюзами там всё относительно неплохо. Плюс открытый исходный код даёт возможность неограниченно затачивать этот инструмент под себя.

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

В поисках альтернативы Atmel Studio

Atmel Studio and avr builder

Недавно вышла новая Atmel Studio версии 7.0. Как и все предыдущие IDE от Atmel, она не лишена ряда существенных недостатков, основной из которых - отсутствие кроссплатформенности.

Для сборки проекта студия использует утилиту make и генерит makefile. В принципе, makefile можно писать руками, но это не совсем удобно и очень громоздко. Попытки использования разных известные аналогов make (cmake, scons и прочее) желаемого результата также не дали. Хотелось своего велосипеда - чего-то предельно простого, гибкого и удобного. В качестве основы был выбран Python, т.к. его легко использовать не только в качестве языка для написания системы сборки, но и в качестве удобного языка для написания сценариев компиляции.

Индикатор температуры процессора для Mac

Mac OS CPU thermometer

Иногда Мак греется, иногда он греется очень сильно, что начинаешь задумываться о причинах нагрева и способах борьбы с ним. Для этого мне хотелось, чтобы температура процессора всегда отображалась на экране в системном меню. Но найти какого-то готового решения для этого не получилось. Поэтому набросал примитивную программу, единственное назначение которой - отображение текущей температуры процессора для компьютеров на Mac OS X.

Tags:

Файловый менеджер trolCommander

файловый менеджер trolCommander

trolCommander - это форк бесплатного кроссплатформенного файлового менеджера с открытым исходным кодом (GPL) muCommander. Это двухпанельный файловый менеджер с поддержкой архивов и удалённых серверов (FTP/SFTP, HTTP, SMB и проч.), Android-устройств и множеством других возможностей. При разработке данного приложения акцент делается в первую очередь на работу в Mac OS X, но Windows и Linux также поддерживаются.

По сравнению с оригиналом, в trolCommander было введено множество улучшений - исправлены баги, улучшена производительность, уменьшено потребление памяти и добавлено множество новых фич. В частности, возможность поиска файлов по маске и содержимому, работа с файловой системой Android-устройств, текстовый редактор с подсветкой синтаксиса, шестнадцатиричный файловый вьювер, встроенный терминал, режимы отображения в две или три колонки, иконки высокого разрешения для Retina-экранов, добавлена поддержка разных архивов, и т.д., и т.п.

Для работы приложения необходимо иметь установленную среду Java версии не ниже 1.8.

Текущая версия: 0.9.9

Объединение мелких изображений в атлас

Объединение мелких изображений в атлас

При разработке графических приложений (например, игр или web-приложений) часто возникает ситуация, когда есть множество файлов рисунков небольших размеров, либо файлы спрайтов анимации, которые было бы целесообразно поместить в один большой графический файл, так называемый "атлас". Атлас - это большое изображение, содержащее некоторое множество изображений меньшего размера, которые можно выбирать методом клиппинга прямоугольного региона. Какие преимущества дает использования атласов? Во-первых, сокращение количества файлов рисунков

Словозубр - программа для заучивания иностранных слов

Словозубр - программа изучения английских слов

Описание

Программа "Словозубр" предназначена для эффективного запоминания иностранных слов и достижения обязательных результатов при приложении минимальных усилий со стороны обучающемого. Т.е., разумеется, результат будет максимальным при приложении максимальных усилий, но он гарантированно будет в любом случае. Программа позволяет запоминать иностранные слова где бы вы не находились:

Страницы

Подписка на Программы