Обновить
  • по релевантности
  • по времени
  • по рейтингу

Разработчики открыли исходный код языка программирования Toit

Программирование микроконтроллеров *

Разработчики языка программирования Toit заявили о том, что теперь технология доступна на GitHub под лицензией LGPL-2.1. Сам же язык появился благодаря одноименной компании, основателям которой не нравился подход к написанию кода для IoT-устройств.

Читать далее
Всего голосов 13: ↑9 и ↓4 +5
Просмотры 5.9K
Комментарии 4

Программирование микроконтроллеров PIC16/PIC18 на языке C. Статья вводная

Программирование микроконтроллеров *
Доброго тебе времени суток, хороший человек.

Это вводная статья из небольшого цикла о программировании МК PIC16/18 на языке C.

Необходимый минимум:
ПО:
— MPLAB;
— собственно компилятор C;
— Proteus ISIS;
Железо:
— отладочная плата;
— программатор.

MPLAB — среда разработки от Microchip. Скачать можно на офсайте. Полностью бесплатна.
Содержит компилятор с языка ассемблера, позволяет провести полный цикл разработки в том числе и прошивку(при наличии соответствующего программатора).
Большинство компиляторов языка C имеют механизмы встраивания в эту среду.
Качаем обязательно.

Компилятор C.
Здесь уже немного сложнее с выбором.
Список того, на что я советую обратить внимание:
— CCS PICC;
— Micro-C;
— IAR C;
— HT-PICC;
— Microchip C18;

Читать дальше →
Всего голосов 67: ↑60 и ↓7 +53
Просмотры 51K
Комментарии 32

Программирование микроконтроллеров PIC16/PIC18 на языке C. Статья вторая. Базовые сведения о платформе. Первая программа

Программирование микроконтроллеров *
Если в первой статье все получилось хорошо — мы получили базовую программную обстановку для продолжения обучения.

Едем дальше.

Как я говорил ранее, пока что объяснять буду на базе МК PIC16F628A.
Обязательно качаем документацию на него. Рекомендую для поиска — alldatasheet.com
DataSheet — главный документ при разработке на базе МК.
Рекомендую распечатывать основные таблицы и разделы для удобства пользования.

Открываем ДШ.

Наиболее важные сведения о кристалле:
— максимальная рабочая частота — 20МГц;
— 2048х14 бит флеш-ПЗУ;
— 224 байта статической ОЗУ;
— 128 байт энергонезависимой ПЗУ;
— 16 доступных выводов;
— модуль приемо-передатчика;
— 3 таймера.

Данный кристалл — представитель так называемого среднего (Mid-range) семейства МК PIC.

Вкратце расскажу о том, что обязательно нужно понимать.

Читать дальше →
Всего голосов 54: ↑48 и ↓6 +42
Просмотры 81K
Комментарии 16

Программирование микроконтроллеров PIC16/PIC18 на языке C. Статья третья. Немного о железе

Программирование микроконтроллеров *
Все то оно хорошо, когда мигает в симуляторе светодиод, но неплохо бы посмотреть на это действо вживую.
Расскажу коротко об аппаратной части сего процесса.
Читать дальше →
Всего голосов 26: ↑25 и ↓1 +24
Просмотры 19K
Комментарии 27

ARM-микроконтроллеры STM32F. Быстрый старт c STM32-Discovery

Программирование микроконтроллеров *
Из песочницы
При изучении image любого незнакомого дела, особенно когда речь идет о микроконтроллерах, возникает вопрос — «С чего начать». Ведутся поиски статей по ключевым словам «Getting Started», неизбежно появляется дилема выбора среды разработки и программатора-отладчика. Чтобы помочь вам определиться с ответами на возникшие вопросы, я поделюсь своим опытом в освоении 32-битных контроллеров семейства STM32F от ST Microelectronics.

Выбор контроллера


Вариантов по сути дела было два — STM32F или NXP (LPC1xxx). На микроконтроллеры STM32F мой выбор пал по нескольким причинам.
Читать дальше →
Всего голосов 54: ↑51 и ↓3 +48
Просмотры 256K
Комментарии 64

Внешние прерывания у 8-bit avr, использование кнопок

Программирование микроконтроллеров *
Из песочницы
Здравствуйте, на днях решил поэкспериментировать с внешними прерываниями на attiny2313A. Думаю тем кто занимался программированием микроконтроллеров известно, что МК не всегда быстро может реагировать на нажатие кнопки, т.к. проверка PINа стандартно осуществляется в бесконечном цикле и если программа достаточно большая — это может затормозить опрос ножки.
Код ниже написан для WinAVR.

image

Стандартный опрос:


  • DDRxy&=~(1<<y); PORTxy&=~(1<<y);
    с одной стороны кнопка подключена к плюсу (VCC), а с другой стороны к ножке.
    В таком случае провод который подключен к ножке выступает в роли антенны и любое возмущение электромагнитного поля вокруг проводка вызывает срабатывание кнопки, что неприемлемо.

  • DDRxy&=~(1<<y); PORTxy|=(1<<y);
    С одной стороны кнопка подключена к минусу (GND), а с другой стороны к ножке.
    Это наиболее приемлемый вариант, наводок не возникает и кнопка срабатывает стабильно.

Читать дальше →
Всего голосов 26: ↑22 и ↓4 +18
Просмотры 65K
Комментарии 22

ПИД-регулятор своими руками

Assembler *Алгоритмы *
Tutorial

I. Постановка задачи


Нужно держать температуру на заданном неком уровне и менять задание. Есть микроконтроллер, к которому прицеплены измеритель температуры, и симистор для управления мощностью. Не будем греть голову на ТАУ, ни разностными схемами, просто возьмём и сделаем «в лоб» ПИД-регулятор.
Читать дальше →
Всего голосов 36: ↑32 и ↓4 +28
Просмотры 259K
Комментарии 45

Создание ходячего робота

DIY или Сделай сам
После активной учёбы в универе: лаб, курсовых, экзаменов — летом испытываю ломку чего-нибудь поделать такого интересного, мозги размять, себя порадовать.
Вот и в этот раз не обошлось — решил сделать какого-нибудь прикольного робота. Всякие машинки мне уже надоели, до мультироторных систем я еще не дорос. Решил сделать гуманоида:) Гуманоида не получилось…
Но, конечно, зажегся идеей, вспомнил детские просмотры «Терминатора» и «Звездных воин» и начал работу.

И вот что получилось:

image

В посте опишу процесс создания этой штуковины по прозвищу Тимми(иногда называю его Хромой Вася — в конце в видео будет понятно почему)
Читать дальше →
Всего голосов 41: ↑33 и ↓8 +25
Просмотры 15K
Комментарии 26

W.Script языки программирования, или как мы развлекаемся в нашей компании

Ненормальное программирование *Программирование *
Из песочницы
Tutorial
Наша компания (Австралия, Сидней) существует уже 2 года. Так вот — решили мы год назад сделать для разработки свои языки программирования. Точнее сама основа уже была — закрытые языки программирование нашей компании-предшественницы.

В итоге мы получили три языка программирования — R.Script (микропроцессоры, вычислительные программы), L.Script (GUI, Web приложения) и главный — W.Script (этот язык — основа двух предыдущих и с ним можно делать все, что хочешь).

В этой статье я впервые в интернете расскажу о этих мозгоубивающих увлекательных языках программирования.
Читать дальше →
Всего голосов 27: ↑9 и ↓18 -9
Просмотры 4.4K
Комментарии 36

Управляем роботом-пылесосом iRobot Roomba через ИК

DIY или Сделай сам

Перед новым годом у меня появился полезный питомец — iRobot Roomba 630. Это самая простоя модель Roomba без функций планировщика. В общем-то мне эти функции не нужны, больше хотелось управлять роботом с ПК, тогда бы можно было его запускать удалённо. Для управления робототом фирма iRobot производит ИК-пульт, «Вот оно!» — подумал я и решил попробовать смастерить ИК передатчик для управления Roomb-ой. Всех заинтересовавшихся прошу под кат!

Читать дальше →
Всего голосов 40: ↑34 и ↓6 +28
Просмотры 24K
Комментарии 16

Программирование Arduino из консоли, gentoo-way, ничего лишнего

Настройка Linux *
Условия задачи с одной стороны сложны, с другой стороны очень просто формулируются. Есть сервер очень-очень далеко, к нему через FTDI конвертер подключена Arduino. Доступ у серверу – SSH. А надо исправлять, компилировать и заливать прошивки в плату. Классический пример — оклейка обоями запертой комнаты через замочную скважину. Очевидно ни о какой Arduino IDE, Eclipse и прочих красивых средах программирования речи быть не может.

С другой стороны — что нам стоит дом построить, нарисуем, будем жить.
Читать дальше →
Всего голосов 35: ↑31 и ↓4 +27
Просмотры 27K
Комментарии 7

Программирование ARM-контроллеров в Eclipse на Ubuntu: как это делается

Eclipse *
Из песочницы
По работе столкнулся с программированием контроллера AT91SA7A3, для этого используется IAR. Но поскольку держать вторую систему мне лень, была принята попытка обеспечить возможность программирования, отладки и прошивки под любимой Ubuntu. И вот, после двух недель общения со стенкой посредством обсценной лексики(аж обои начинали шевелиться), таки удалось всё это хозяйство настроить. А поскольку, возможно, я не один такой буду, напишу как это делается.
Читать дальше →
Всего голосов 13: ↑10 и ↓3 +7
Просмотры 9.3K
Комментарии 4

Создаем ELF-файл с отладочной информацией (DWARF) вручную (для микроконтроллеров ARM)

Программирование *Компиляторы *Отладка *
Из песочницы

Введение


С недавнего времени я увлекся микроконтроллерами. Сначала AVR, затем ARM. Для программирования микроконтроллеров существует два основных варианта: ассемблер и С. Однако, я фанат языка программирования Форт и занялся портированием его на эти микроконтроллеры. Конечно, существуют и готовые решения, но ни в одном из них не было того, что я хотел: отладки с помощью gdb. И я задался целью заполнить этот пробел (пока только для ARM). В моем распоряжении была плата stm32vldiscovery с 32-битным процессором ARM Cortex-M3, 128кБ flash и 8 кБ RAM, поэтому я и начал с нее.
Писал я кросс-транслятор Форта конечно на Форте, и кода в статье не будет, так как этот язык считается экзотическим. Ограничусь достаточно подробными рекомендациями. Документации и примеров в сети по предмету почти нет, некоторые параметры подбирались мной путем проб и ошибок, некоторые — путем анализа выходных файлов компилятора gcc. Кроме того, я использовал только необходимый минимум отладочной информации, не касаясь, например, relocation-ов и множества других вещей. Тема очень обширна и, признаюсь, разобрался я с ней только процентов на 30, что оказалось для меня достаточным.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры 25K
Комментарии 3

Змейка на ПЛК. Наш ответ Сименсу

Ненормальное программирование *Программирование *
Из песочницы
Здравствуйте.

Недавно мне прислали ссылку на статью, где был показан пример реализации простой и в то же время культовой игры «Змейка» в контроллере семейства Siemens s7-300. И я подумал: все знают о таких монстрах, как Siemens, ABB и т.д. Но современные отечественные разработки остаются в тени.

В этой статье я покажу, как за полчаса реализовать алгоритм игры «Змейка» на российской АСУ ТП «КВИНТ 7», разработанной в НИИТеплоприборе. И для большего интереса игра будет целиком реализована на языке технологического программирования FBD, которому уделяется незаслуженно мало внимания.

Итак, начнем:
Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Просмотры 18K
Комментарии 24

Радиоуправляемый выключатель своими руками. Часть 2 — Тестирование и подготовка

DIY или Сделай сам
Tutorial
Этот пост — продолжение серии рассказов о том, как можно сделать своими руками выключатель полезной нагрузки.

В первой части была описана «железячная» составляющая: особенности ее проектирования и производства.

Сегодняшний пост описывает шаги по подготовке среды разработки Arduino и полное тестирование изготовленного модуля.
Подробные инструкции внутри
Всего голосов 33: ↑30 и ↓3 +27
Просмотры 43K
Комментарии 19

Новая жизнь старого синтезатора. Часть 1

Настройка Linux *
Внешний вид синтезатора
Несколько лет тому назад умер смертью храбрых мой старый синтезатор Yamaha PSR-GX76. Случилось это из-за того, что я по ошибке подключил к нему блок питания 24 В вместо положенных 12 В. В таком режиме синтезатор героически проработал несколько минут, после чего случился «пук», сопровождаемый аудиовизуальными спецэффектами и специфическим запахом и синтезатор больше не включался. С тех пор он пылился в коробке и ждал своего часа, который для него, наконец, настал. В нескольких статьях я расскажу как проходило движение от идеи вдохнуть в него новую жизнь до реализации и демонстрации полученных результатов.
Перейти ко вскрытию пациента
Всего голосов 109: ↑105 и ↓4 +101
Просмотры 79K
Комментарии 57

Радиоуправляемый выключатель своими руками. Часть 3 — Софт выключателя

DIY или Сделай сам
Tutorial
В предыдущих постах мы спроектировали, сделали и всесторонне протестировали блок двухканального радиоуправляемого выключателя.



Но до сих пор это была «бездушная железка», которая несмотря на всю свою потенциальную мощь, заложенную в МК, — ничего не умеет.
Вдохнем в нее жизнь.
Всего голосов 35: ↑32 и ↓3 +29
Просмотры 50K
Комментарии 21

Микроконтроллеры семейств AVR, MSP430, STM32 и мои субъективные впечатления

Программирование микроконтроллеров *
Из песочницы

Микроконтроллеры семейств AVR, MSP430, STM32 и мои субъективные впечатления


Здравствуйте, обитатели Хабра. В этой статье хочу поделится своими впечатлениями об опыте программирования микроконтроллеров семейств AVR, MSP430, STM32.

Введение

В бытность мою студентом занимался я прикладным программированием на Delphi и горя не знал, но и счастья не ведал. Пока как-то раз не посетил меня на четвертом курсе предмет «Микропроцессорные контроллеры». Ну и пошло-поехало.
Читать дальше →
Всего голосов 29: ↑23 и ↓6 +17
Просмотры 40K
Комментарии 78

24-битные I2C датчики давления HP203B и HP206C от Hope Microelectronics

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

image

С лева на право: HP206C, HP203B и BMP085 от Bosch для сравнения (в тестах также участвует).
Много картинок..
Всего голосов 62: ↑60 и ↓2 +58
Просмотры 29K
Комментарии 34

Светодиодное сердце на микроконтроллере Atmega16 или программирование AVR на языке Pascal

Программирование микроконтроллеров *DIY или Сделай сам

Светодиодное сердце на микроконтроллере Atmega16, или программирование AVR на языке Pascal


Однажды я решил сделать подарок своей любимой девушке. Для этого вооружился я паяльником, программатором и компьютером. И, как художник, сотворил светодиодное сердце. Чтобы сердце было особенным, я постарался реализовать всевозможные режимы мигания светодиодами.



Читать дальше →
Всего голосов 21: ↑14 и ↓7 +7
Просмотры 18K
Комментарии 19