И снова всем привет, не ждали? :-)

В предыдущих статьях (статья-1 и статья-2) я описал почти всё что можно было описать, но самую важную часть упустил из виду. Мало того - я эту часть упустил в целом, за всё время работы над проектом :-(

Даже не думал делать никаких сравнительных таблиц, но вот сегодня наткнулся на готовую таблицу от автора программы для 341 под линукс — IMSProg.

Немного подумав, решил, что сравнительная таблица всё‑таки нужна, и сделал на её основе свой вариант.

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

Огромная благодарность автору таблицы за проведенные тесты и готовый материал!

Часть первая - скорость работы.

В конце первой таблицы для наглядности так-же приведена скорость некоторых программаторов высокого класса. Но те приборы дают совсем другие возможности и за другой ценник. Поэтому в других таблицах они отсутствуют.

Hi-End programmers - Программаторы относятся к высшему классу, и приводить сравнение с ними некорректно. Добавлены для только фона и только в эту таблицу.
Hi-End programmers - Программаторы относятся к высшему классу, и приводить сравнение с ними некорректно. Добавлены для только фона и только в эту таблицу.

Внезапно оказалось, что даже упрощённая моя версия является достаточно быстрой, чтобы тягаться с ch347 на равных — а разница замечу у них в железе приличная.

У Свободного Енота USB1.1 12Mbps при частоте шины SPI в 6МГц, а у ch347 USB2.0 480Mbps при частоте шины в 60МГц!!!

Причина же в том, что хоть чтение и довольно быстрое, но данные чипы памяти по своей природе не могут быть быстро записаны, и сверху накладывается халатность разработчиков софта по части оптимизации (а может и косяки микросхемы/драйвера, этого я не знаю).
С увел��чением объёма памяти чипа разрыв естественно будет пропорционально увеличиваться.

Часть вторая — аппаратные возможности.

Здесь комментарии излишни, думаю что и так всё понятно.
Остаётся уточнить только некоторые тонкости.

Первая — в открытую версию поддержку 1,8-вольтовых чипов действительно легко добавить дополнительным стабилизатором на 1,8в с переключателем. А если собрать по оригинальной схеме — все нужные цепи там уже есть, отсутствует только управление этими цепями из прошивки.
Схема и конфигурация ножек МК в прошивке позволяют работать при любом питании сигнальных цепей от 1,8в до 5в без применения внешних адаптеров. Управление питанием из прошивки частично вырезано, а если точнее — оставлено включение и выключение, но переключение 1.8/3.3 отсутствует.
При желании и переключение легко добавить в прошивку, или вынести на кнопку.

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

У ch347 есть версии как с 1,8в стабилизатором так и без него, потому и обозначено +/‑.
Но при внутрисхемной работе его большая скорость в неумелых руках сыграет с ним очень злую шу��ку, и сделает внутрисхемную работу ещё более сложной, чем с медленным 341, несмотря на увеличенную с 5mA до 8mA нагрузочную способность (указано в даташите).
Почему только в неумелых руках? Умелые руки знают как и зачем настроить частоту, но в основном имеют более серьезные программаторы.

Проблема же 341 при внутрисхемной работе — малая нагрузочная способность в 5mA из даташита.

По ezp2019/2023 — у них те же самые проблемы с нагрузочной способностью,
Current Source = 8mA, Current Sink = 12mA.

В еноте же Current Sink = 20+mA, а Currrent Source в 5–10mA обеспечивается только подтяжками, и может быть при необходимости увеличен до 30+mA включением пушпула.
Кроме этого есть несколько слаботочных ступеней, но они не используются за ненадобностью.

Часть третья и последняя — сравнение возможностей.

Здесь я поразвлекался и убрал малозначимые для обычного юзера пункты, и сверху добавил пару новых, чтобы было более корректно с учётом специфики работы с этими инструментами, операционными системами, типичными юзерами, их задачами и навыками с учётом используемой операционной системы.

Подробно остановлюсь пожалуй только на одном моменте — автор IMSProg ввёл пункт «отображение содержимого SFDP» и поставил там себе красивую галочку, а я это заменил на свой пункт, и забрал его галочку себе:D

А причина этого такова: содержимое регистра SFDP не нужно юзеру показывать, это не имеет для юзера никакого значения.
SFDP нужно разбирать на кирпичики, и подсовывать эти кирпичики из него как параметры в программатор, чтобы программатор нормально скушал микросхему даже при отсутствии оной в базе поддерживаемых микросхем. И я ранее честно предлагал автору свой вариант обработчика, но он меня почему‑то проигнорировал ¯\_(ツ)_/¯

Это ни в коем случае не значит что я выделываюсь и что мой софт лучше.
Скорее наоборот, шаг в сторону от стандарта — и полосатый уже не увидит чип вообще.
Возможность ручного выбора конкретной микросхемы у меня до сих пор не сделана, хоть и планировалась. При работе с 95% современных чипов это не мешает (примерно все что применяются в компьютерах и ноутбуках для хранения BIOS), но с остальными 5% устаревших или нестандартных работать он сейчас не умеет.

Поэтому он полностью единственным программатором в наборе быть пока не может.
Но наличие запасного 341 полностью перекрывает этот недостаток.

Я считаю это уместной сейчас ценой за простоту использования и скорость. А со временем и детские болезни все исправятся:‑)

Ещё забыл добавить, что стоимость готовых плат для изготовления открытой версии находится на уровне цены ch341, и прилично дешевле 347.

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

И напоследок предоставлю ссылки на эти таблицы.

Всем спасибо за внимание, надеюсь вам было интересно :-)