Рейтинг
12.57
голосов: 10

О блоге

Алгоритмические хитрости, типовые решения и заумные трюки. Все то, что можно воплотить программно на любом микроконтроллере или на компе (но применимо к электронике)

Администраторы (1)

Модераторы (0)

Модераторов здесь не замечено

Читатели (153)

dcoder Krieger Tabke XANDER marvin_yorke kest Vga Alatar mzw kalvenolt Reverb mist grand1987 Gornist Rom kvm labor neiver Leopoldius rumkin

Все читатели блога

Еще один makefile

MakefileДоброго времени суток!
Сколько уже про makefile говорено и писано — и все равно хочется отчебучить что-нибудь свое! Видят мои глаза отсутствие идеала, а пальцы стремятся это дело исправить.
Так что внесу и я свои 5 центов в это дело — опишу я идеальный makefile!
P. S. Все найденные ошибки, реализованные пожелания и изменения я буду здесь выкладывать. Так что здесь будет всегда актуальное состояние. Ну… так я планирую…


Читать дальше
  • +3
  • 25 марта 2014, 14:57
  • PICC
  • 1

Проект rusEfi и мысли о программировании МК вообще.

Я бы хотел рассказать о проекте автомобильного ЭБУ rusEfi и заодно озвучить некоторые мысли о программировании МК вообще.

Итак, по профессии я программист, по работе я делаю аналитику для биржевого терминала на java — там ничего гипер сложного, просто много данных которые нужно относительно быстро обработать. Значит нужно постоянно не забывать о производительности — при этом логики много, значит код должен должен читаться. Исходникам в этом году исполнится 10 лет — это даёт возможность окунуться в реалии работы со старым кодом, который уже никто не помнит, как почему и зачем вообще существует. Я рассказываю об этом, потому что именно этот мой опыт влияет на подход к программированию в rusEfi.




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

8 канальный ШИМ на attiny13

AVR attiny13 довольно популярный микроконтроллер (далее МК) и довольно дешевый (20 рублей на ebay). Но есть у него небольшой недостаток: 6 пинов I/O. А на деле вообще 5 (если не шаманить с reset). Если надо большое кол-во пинов на вывод чем может позволить микроконтроллер, то с легкостью используется микросхема регистра сдвига 74HC595, которая потребует 3-х пинов. Потратив 3 пина, можно получить 8*N пинов для вывода(где N — кол-во микросхем 74HC595).

Если со статическим выводом всё ясно, то что делать с ШИМ (PWM)?


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

Поменьше математики процессору, или оптимизация расчётов.

Досталась горстка дохлых ноутбучных батарей, тех самых, что на литиевых габарита 18650 собраны. По этому случаю делаю тут измеритель фактической ёмкости акумуляторов, чтобы хоть как то отбраковать их. Хочется видеть цифры по итогу в удобоваримом формате. А поскольку делаю на ATTiny26 (Не пинать! Ну, завалялся у меня.), то тащить вычисления с точкой накладно. Сел, помозговал — решаемо. Материал под катом может кому-то показаться очевидной истиной, может оказаться кому-то не востребованным, но надеюсь — большинство хоть что-нибудь подчерпнут для себя. Для нетерпеливых итог:
(1)(1)
Для тех, кто не боится формул — ниже.

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

Быстро делим на 3

Здравствуйте.

Часто читаю WE, так как интересуюсь программированием микроконтроллеров, и решил наконец-то зарегистрироваться, а заодно и запостить статеечку в личный блог.
Статья будет мало кому интересная по причине вопроса не шибко востребованного — а именно быстрого деления числа любой разрядности на 3.


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

2D Reed-Solomon Block Turbo Codes (RS BTC)

Речь идет о реализации а не описание алгоритмов. За описаниями алгоритмов в гугл. Они все открыты и очень хорошо расписаны.

Под реализацией понимается — реализация для микроконтроллеров. А не для DSP, PC, FPGA и прочих кодировщиков.



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

Каскадное кодирование Рида — Соломона\Витерби.

Речь идет о реализации а не описание алгоритмов. За описаниями алгоритмов в гугл. Они все открыты и очень хорошо расписаны.

Под реализацией понимается — реализация для микроконтроллеров. А не для DSP, PC, FPGA и прочих кодировщиков.


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

Криптография для эмбеддера. Введение в ассиметричные алгоритмы.



У меня в черновиках «завалялась» небольшая статья по ассиметричной криптографии. Статья коллеги a9d приводит пример использования «модульной арифметики», (правда в другом ключе) но не объясняет «как это работает». Т. к. коллега запретил комментарии к своей статье (ИМХО, зря, в комментариях самое вкусное), я позволю себе опубликовать данную недоработанную статью.


В последнее время в сообществе возрос интерес к вопросам криптографической защиты информации и я решил написать небольшую статью (вернее продолжить предыдущую).



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

Асимметричное шифрование. RSA это очень просто.

Раньше я уже искал либы для микроконтроллера с реализацией Асимметричное шифрования, но ничего путевого не нашел. Я делал главную ошибку. Я искал в рунете! Я постоянно натыкался на посты где трындели, что это очень сложно и микроконтроллер не потянет. Так вот, это П***шь и его потянет даже avr.

И бла бла бла. В общем первые же поиски на англоязычных сайтах увенчались успехом.


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

Преобразуем в строку. Часть 2. Числа с фиксированной и плавающей точкой.

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

В качестве чисел с плавающей точкой использован 32-х разрядный float.



Читать дальше
  • +14
  • 07 января 2013, 13:08
  • neiver
  • 1