Рейтинг
24.63
голосов: 17

О блоге

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



А то комплектухи сейчас столько, что даже не знаешь что в природе есть. Подробные описания и qick start'ы постить не обязательно. Главное точное название, основные характеристики и то чем она оказалась замечательна именно для вас. Настоятельно рекомендую аттачить к файлу даташит или давать ссылку на даташит.

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

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

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

Читатели (152)

dcoder Melted_Metal vvzvlad WildCat hexanaft Vga Alatar mzw dievgen Gornist Deer kvm citizen neiver nightmare tituszx Athom Bass Sicorski Me1

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

W801 - бюджетный контроллер с Wi-Fi

Как говаривал Карлсон, «продолжаем разговор».

И разговор этот, если кто не в курсе, о китайских микроконтроллерах серии W80x. После того, как я помучил младшую модель, W806 и залил в нее интерпретатор LUA, мой взгляд упал на более вкусную W801, которая, кстати по цене практически идентична первой, при том что имеет вдвое больше флэша, а главное — встроенный BT/BLE и Wi-Fi.
w801
Взглянем на нашего «пациента». Форм-фактор — тот же, что и у младшего собрата, но плата на полсантиметра длиннее из-за вытравленной антенки. Также в районе USB-разъема есть шесть дополнительных пинов: земля, +3.3, и даже +5 напрямую с USB, чего не было у W806. Светодиодов на плате аж целых семь, что можно использовать при отладке, включая определенный диод при входе в нужную процедуру или модуль и выключая — при выходе. А вот к ШИМ-линиям подключены только два диода из семи, поэтому запрограммировать красивый эффект «переливания света» тут не получится. Но мы же не ради этой демки плату покупали?)


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

LuatOS и опыты над W806

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

Дальнейшее углубление в тему вывело меня на другой девайс — Air103, распространенный среди китайских радиолюбителей. Уж не знаю, то ли его ядро на 100% идентично ядру W806, то ли только на 95%. Но факт есть факт — софт, наработанный китайцами для Air103 идет и на 806-м.
Air103 pinout
Следом за Air103 нагуглилось еще одно ключевое слово — LuatOS. Как несложно догадаться, это интерпретатор языка Lua, зашиваемый в микроконтроллер.
Был найден интересный сайт — wiki.luatos.com/ (сайт на китайском, но с помощью Хрома легко и без артефактов переводится на инглиш (можно и на русский, но я уже привык к технической литературе на высше-эльфийском).

Вот здесь можно скачать скомпилированный LuatOS для Air103 (в архиве — три варианта прошивки, но нам понадобится самая скромная, без сетевых приблуд, которых нет. А также там неплохой набор примеров на языке Lua — чего в нем только нет! И работа с криптографией, и многозадачность… В общем, намного больше, чем в сишном SDK.

Но я зашел с другого бока: выкачал с гита два проекта, сам LuatOS и файлы для сборки под Air101. У этой платы немного другой проц — он меньше по габаритам, имеет меньше выводов но зато содержит на борту в два раза больше флэша!

git clone https://gitee.com/openLuat/LuatOS.git
git clone https://gitee.com/openLuat/luatos-soc-air101.git

Далее установил xmake (https://github.com/xmake-io/xmake/releases), ну а 7-zip и так был установлен.
Залез в файл app/port/luat_conf_bsp.h второго проекта и поменял там значение air101 на air103.
Запустил сборку проекта из xmake (компилятор выкачался и установился автоматом), и через некоторое время получил ошибку — образ не влезает в имеющуюся в устройстве память! Аж 700+ кб перебор…
Стал разглядывать luat_conf_bsp.h пристальнее, вернул настройку на air101. Проект собрался и занял почти 1800 Кб. Нда…
Оказалось, что весь этот конфиг состоит из опций, и каждую можно отключить, закомментировав. Что я и сделал: накой мне, спрашивается, куча китайских шрифтов в прошивке или либка lvgl, предназначенная для рисования на пиксельных ЖК-дисплейчиках?
В общем, в несколько итераций удалось упихать интертрепатор в вожделенный мегабайт.
Собранная прошивка обнаружилась в папке build/out.

Следующим шагом надо выкачать прошивальщик: luatos.com/luatools/download/last
Он, как водится, полукитайский. Можно в опчиях выбрать английский язык, но все равно половина кнопок останется с иероглифами. Подозреваю, что хитрые азиаты делают это спецом, чтобы меньше бледнолицых составляло им конкуренцию на их собственном поле)
lua tool
Тут надо подоткнуть нашу плату, убедиться что порт определился, выбрать его, поставить нестандартное значение скорости — 921600, установить средний чекбокс с иегорлифами (как на картинке) и можно прошивать. Первая кнопка со стрелкой открывает окно прошивки только бинарника. Для прошивки бинарника необходимо нажать на кнопку сброса.

Вторая — окно прошивки бинарника и/или lua-кода. А вот скрипты заливаются уже без нажатия на сброс…

В верхнем поле — добавляется бинарник. В центре — добавляются скрипты верхней иероглифической кнопкой.
Ну а «Download only script» понятно и без перевода.
Зашил скрипт pwm/air101/main.lua — и вот плата медленно-медленно заморгала синим светодиодиком)

Winner Micro W806 - I2C.


Продолжаем трогать за регистры китайский микроконтроллер W806. В этой заметке найдем еще одну неточность в RM и разберемся с работой модуля I2C.


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

W806 - GPIO и таймеры. часть 2.

В этом эпизоде рассмотрим работу внешних прерываний, прикрутим к процессору инфракрасный приемник, а также попробуем изобразить извращенский софтовый ШИМ на таймерах.
Прикинув, как на практике изобразить работу внешних прерываний, решил подружить W806 с инфракрасным приемником TSOP и помигать светодиодиками при помощи пульта ДУ. Т.к. абсолютное большинство пультов в моем доме работают по протоколу NEC, то его декодирование и будем реализовывать. Вернее, портировать алгоритм, который отлично себя показал в работе на контроллерах STM8. Интересности — под катом.


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

W806 - GPIO и таймеры. часть 1.

Продолжаем знакомство с китайским микроконтроллером Winner Micro W806. А с чего обычно эмбеддер начинает осваивать новый для него микроконтроллер? Правильно, мигает светодиодиком. Не будем нарушать эту славную традицию. На отладочной плате распаяны три синих светодиода, подключенные к выводам PB0 — PB2. Писать будем без использования HAL, напрямую в регистры.
Кому интересно — приглашаю под кат.


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

Winner Micro W806 - краткий обзор.

С недавних пор на одной интернет-барахолке начали появляться в продаже отладочные платы на микроконтролллере W806, от компании Winner Micro. В заголовке и описании товара иногда указано «W806 микроконтроллер 240 МГц 5-8Bit STM32 макетная плата CH340 IoT MCU чип CDK окружающая среда низкая мощность IOT». Но все мы знаем хитрых продавцов на Али — напишут что угодно, лишь бы продать. Вот и я заинтересовался этой платой, и как только она была доставлена, с головой окунулся в reference manual (RM) на этот продукт. Давайте же разбираться, что в этом чипе интересного, каким боком тут STM32, и станет ли он «убийцей blue pill» или же его судбьа — немногие любительские самоделки.


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

Аудио-DSP из говна и палок: MSP34x0G, 34x1G, 34x5G

Предисловие
Досталась на днях плата от старого телевизора. Моё внимание привлекла микросхема в корпусе SDIP52, под которой на
шелкографии были надписи связанные со звуком.
Странно, но по запросу «MSP3410G AVR» результата не было. А
значит, прийдется разбираться самому.

Характеристики:

MSP34x0G:

  • 2 цифровых I2S входа(16/32 бит 32 КГц)
  • 1 I2S выход, 3 или 4 стерео входа с программируемым предусилением (зависит от корпуса)
  • 1 моно вход
  • 2 выхода, позиционирующихся для наушников и динамиков
  • У обоих есть:
    • настройка громкости в дб(-114 — +12)
    • настройка баланса в линейном и логарифмическом режиме
    • настройки НЧ/ВЧ(в канале динамиков можно использовать пятиполосный эквалайзер)
  • Программируемый выход для сабвуфера
  • Детектор quasi-peak с помощью которого можно сделать индикатор уровня громкости
MSP34x1G отличается также наличием режима dolby prologic.
MSP34x5G теряет один стерео выход и эквалайзер на канале динамиков(настройка НЧ/ВЧ остается). Выхода для
сабвуфера также нет.


Подключение и управление
Управляется процессор по интерфейсу I2C с максимальной скоростью 1 МГц. Управление стандартное для подобных
микросхем:
адрес устройства, бит R/W, субадрес, два байта адреса и два байта данных. Но есть одна заминка, которая не
страшна если использовать в качестве управляющего какой-нибудь AVR с аппаратным I2C. Дело в том, что после получения
адреса микросхема на 1-1.5мс прижимает SCL и только потом выдает ACK. При использовании софтверного мастера это надо
учитывать.

Монтаж
Так как плату делать не хотелось, собрал схему навесным монтажом и подключил к arduino, чтобы проверить возможности
и работоспособность(готовый проект будет на atmega8).


Особенности
После сборки заметил несколько интересных особенностей:
  1. Если не дернуть RESET микросхемы, на I2C она не определяется и ACK не дает.
  2. Вместо 8 вольт можно подавать 5, возможно только снизится громкость.

  3. Усилитель на TDA7255 начинает свистеть, при уменьшении громкости свистит меньше, при этом дешевый на PAM8403
    играет без сильных шумов.
  4. Нагрев микросхемы не страшен.

Послесловие
Статья, конечно, получилась маленькой, зато я рассказал о том, что можно найти в старом ТВ и куда-нибудь применить.
Если будет интересно, могу выложить свою библиотеку для данных серий.

RFID модуль PN532: как я домофонный ключ скопировал

Водная часть
Понадобился тут еще один ключ для домофона. Казалось бы, чего проще: идем в правление, покупаем ключик… а ключиков-то и нету! И не будет. Ну может будет, но потом. Возможно, следующим летом. Но это не точно.

Ладно, мы люди не гордые, идем в ближайший «Дом быта», просим сделать копию. Там берут, прикладывают к своей шайтан-машине и возвращают. Правда без копии. Потому что копию сделать нельзя. Потому что безопасность должна быть безопасной и ключик зашифрован. Не унываем, идем в другую мастерскую… в третью… после пятой приходит понимание, что мы в жопе и спасение утопающих — дело рук самих утопающих. Беглое сканирование показало, что мы имеем дело с ключом стандарта Mifare Classic.

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

Макетная плата N76E003 и ее программирование

  Обзор и схема неофициальной макетной платы для тестирования/разработки микроконтроллера N76E003. По системе команд этот микроконтроллер относится к семейству MCS-51. Контроллер однотактный (1Т) в отличии от 12-тактного прародителя (i8051, 12T), кол-во тактов исполнения команды равно числу байт этой команды.





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

Программатор SPI и I2C микросхем памяти Minpro I V1.3 на CH552G

  Микросхемы памяти серий 24хх (EEPROM), 25хх (Serial Flash) широко используются в электронике. Такие чипы присутствуют в составе практически любой конструкции современной бытовой и промышленной аппаратуры, где есть процессоры и/или микроконтроллеры. Данный программатор имеет возможность работы с обоими типами памяти.





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