Продам в хорошие руки пару BLE112

Продано! *Стучит молоточком по столу*

Пара породистых BLE-модулей ищет своего нового хозяина.
Я их купил для одного заказа, а потом заказчик слился. Каждый раз когда я вижу их в куче хлама, вспоминаю, что вместе с заказчиком слились многие тыщи денег, и мне становится грустно.


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

Сиськи!

Проголосовало: 166 | Воздержалось: 25

А теперь, когда вы обратили внимание: Я недавно нашел адский учебник по ардуино (в твердой обложке!), и понял что все хуже чем казалось. Отсюда опрос.

8L-Курс, Часть 5 - Таймеры: начало

← Часть 4 — Тактирование Содержание Часть 6 — Таймеры, внешние каналы →

Таймеры — один из самых важных элементов МК. Ни одна более-менее сложная программа не обходится без них. Все, что так или иначе связано с временными интервалами или подсчетом каких-нибудь событий, реализуется на таймерах.

В STM8L есть несколько таймеров разной сложности. Их можно поделить на три группы:
TIM1 — Это самый сложный и функциональный таймер. 16и разрядный счетчик (максимальное значение — 65535), предделитель, принимающий любые значения от 1 до 65536. Три внешних канала с комплементарными выводами для каждого… и прочие плюшки.
TIM2, TIM3, TIM5(последнего в нашем МК нет) — Чуть по-проще. Внешних каналов всего два. Делитель принимает уже не любое значение, а только степени двойки в диапазоне от 1 до 128. Счетчик по-прежнему 16и разрядный.
TIM4 — Самый простой. 8и разрядный счетчик, делитель — (тоже степени двойки) от 1 до 32768. Внешних каналов нету.

Вот сводная табличка из reference manual, которая рассказывает о характеристиках всех таймеров:


Начнем с TIM1. Он конечно сложнее, чем все остальные, но зато после него работа с другими таймерами не будет вызывать непоняток.


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

Почта России, заграничные посылки и отчество (расслабьтесь, не будет)

Почта России неожиданно серьезно осложнила и без того нелегкую жизнь получателем международных обьявлений. Оказывается, с февраля на всех без исключения почтовых отправлениях, получаемых россиянами, должно присутствовать полное ФИО, включая отчество. Проще говоря — если в паспорте у вас есть отчество, то и на посылке оно должно присутствовать, иначе получить его вы не сможете.
Такая практика уже около года действует для отправлений, отправляемых внутри страны — без указания полного ФИО отправление не принимали к пересылке, но сейчас такие правила стали действовать и в отношении международных малых пакетов.

Украдено у BoxOverview
habrahabr.ru/company/boxowerview/blog/171093/

UPD

8L-Курс, Часть 4 - Тактирование

← Часть 3 — Прерывания Содержание Часть 5 — Таймеры, начало →

Раньше мы как-то не задумывались над тем, на какой частоте работает МК и от чего тактируется — работает и славно. Задержки выбирали на глаз, не зная о тактовой частоте. Пора положить этому конец и разобраться с организацией тактирования в STM8.


Читать дальше
  • +13
  • 21 февраля 2013, 17:03
  • dcoder
  • 1

Пруф оф концепт - прием и передача ИК сигнала одним светодиодом

Just for fun...

Решил сделать девайс, записывающий сигналы с ПДУ (от ТВ, DVD, кофеварок… :)), а затем воспроизводящий их. Вообще ничего необычного в этом нету, но возможно кому-то понравится решение: устройство состоит из МК (STM8L), резистора и ИК-диода… ну и питание еще :) А никаких дополнительных фильтров и усилителей нету.

Сия заметка исключительно «proof of concept» и код который я к ней прицепил не умеет ничего кроме записи и воспроизведения одной команды. Но функционал легко можно расширить.


Читать дальше
  • +17
  • 13 февраля 2013, 21:23
  • dcoder
  • 1

Эмулятор DS18b20 на ATTiny2313

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

Коробочка снабжена индикатором на три разряда, который показывает установленную температуру, двумя кнопками для установки нужного значения и портом 1-wire. Температуру можно выставлять в диапазоне от -55 до +99 градусов. Внутре у ней ATTiny2313.

Так-как задачка полной эмуляции всех фич градусника передо мной не стояла, коробочка обделена многими крутыми штуками. Проще сказать, что она умеет:
— Команду пропуска адреса (Skip ROM)
— Команду чтения адреса (Read ROM)
— … сравнения адреса (Match ROM)
— Чтение памяти (той, где температура)

Иначе говоря, эмулятор покрывает базовый функционал датчика. А вот работать с порогами температуры, командой поиска (Search ROM) и сохранением настроек, он не умеет.

Серийный номер (он-же адрес 1-wire) выставляется при прошивке, и без программатора сменить его нельзя. Это конечно большой минус, но для устройств, в которых всего один термометр, адрес не важен.

Исходники (AVR Studio 4 + WinAVR)
Схема
А под катом, небольшой спич о том, как это работает


Читать дальше
  • +14
  • 12 февраля 2013, 01:23
  • dcoder
  • 2

Интересный баг с AVRDUDE+FTDI+PB2

Делал недавно одну штуку на ATTiny2313 и нарвался на занятный баг
Вкратце, дело выглядит так:
При прошивке AVR через PINBOARD2+AVRDUDE (программатор 2ftbb) в буфер FT2232 может попасть лишний байт, который вызовет сдвиг всего остального массива и неправильное чтение данных — короче, работать нихера не будет. Такое несчастье случается, если за 7 миллисекунд (плюс-минус километр) до фактического начала прошивки (сброса МК) линия MOSI (которая соединена с пином RX на FT2232) находится в низком уровне. При переключении из BitBang режима в UART FT2232 заглатывает байт 0x00.

По ссылке мой серый уютный бложек с более подробным описанием и фоткой творческого беспорядка на рабочем месте :)

P.S. Да, мне лень перепостить текст сюда
P.P.S. Топик-ссылка — преунылейшая вещь. Как им вообще пользоваться можно? DIHALT включи хоть теги и нормальное форматирование там…
  • -1
  • 09 февраля 2013, 15:18
  • dcoder

8L-Курс, Часть 3 - Прерывания, EXTI

← Часть 2 — GPIO Содержание Часть 4 — Тактирование →

Мы уже умеем работать с GPIO. Выставлять нужные уровни и читать состояния ножек, настроенных на вход. Но что, если нужно не просто прочитать состояние ножки, а быстро отреагировать на смену уровня? А если таких ножек несколько? Тут нам на помощь приходит система внешних прерываний — EXTI (EXTernal Interrupts). Она довольно гибко настраивается и позволяет получить прерывание с любой ножки МК, что дико удобно — не нужно подстраивать разводку платы под пару специальных ножек INT, как это было в большинстве AVR.


Читать дальше
  • +11
  • 09 февраля 2013, 14:35
  • dcoder
  • 1

8L-Курс, Часть 2 - GPIO

← Часть 1 — Hello светодиод! Содержание Часть 3 — Прерывания →
В прошлой части мы запустили мигалку светодиодом. Теперь пришла пора разобраться с тем, как она работает и как устроен модуль GPIO в STM8.



Читать дальше
  • +4
  • 16 декабря 2012, 18:34
  • dcoder
  • 1