Всех приветствую.
Чего-то я последнее время как-то заскучал в связи с чем появилась идея маленькой движухи.
Регулярно появляются задачи по управлению чем либо через i2c/spi. При этом какого-то готового коробочного решения нет. Все время приходится выдумывать велосипед. С другой стороны есть готовые проприетарные решения в виде коробочки подключаемой по usb и набору библиотек и утилит. При этом такая комбинация как правило имеет весьма простую аппаратную часть и весьма изощренное ПО.
Вот и подумалось мне, а не запилить ли небольшой проект по реверсу такой простой железки, чтобы ее можно было ЛУТ-ом на коленке реплицировать и использовать фирмачное ПО.
Прямая аналогия с saleae логическим анализатором, который легко делается из отладки для «кипариса» и 7 байт в eeprom, при этом получаешь мощное ПО по анализу и декодированию обмена на цифровых шинах.
Это была присказка.
Теперь сказочка.
Есть у меня на время (но довольно не ограниченное) такая штука как aardvark i2c/spi: https://www.totalphase.com/products/aardvark-i2cspi/
Overview
I2C master and slave up to 800 kHz†
I2C multi-master support
SPI master up to 8 MHz
SPI slave up to 4 MHz
GPIO with selectable pins
† Actual system bus speed may vary as a function of capacitance.
What is Included
Aardvark I2C/SPI Host Adapter Unit
6 foot USB A->B cable
Software (downloadable from website):
Windows USB Drivers
Linux USB Hot Plug Configuration files
Control Center Serial Software
Flash Center Software
Aardvark LabVIEW Driver
Aardvark Firmware Update Utility
Aardvark Software API
Rosetta Language Bindings: C/C++, C#, .NET, Python, Visual Basic
Examples
Datasheet
Documentation
User Manual
Quick Start Guide
One-Year Warranty
Внутри там mega16 и ft245, ну и немного обвязки для всякой защиты от дурака и КЗ. Платка выглядит весьма простой, можно даже схемотехнику перерисовать без особых напрягов.
Соответственно, есть мысль эту коробочку клонировать на современном уровне с открытыми спеками и при этом сделать совместимой с официальным ПО. Соответственно ищутся желающие для участия в реализации «джастфолулз».
Я бы может и сам все запилил, но у меня к сожалению не очень со временем и есть вероятность, что рано или поздно коробочку заберут и не получится.
В целом задачу я вижу как легкую для схемотехника уровня ардуины и соответствующего программиста.
Свою задачу я вижу только как поставщик картинок платы и подробные дампы обмена между ПК и МК в различных вариантах. Ну и здоровая критика процесса и результат, а так же активного потребителя результата.
Я делал тут управлялку на ней для одного устройства весьма быстро и успешно. Аналогичная хрень на ft232h получилась немного кривой и не до конца понятой (хотя со своими задачами тоже справлялась).