Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Модератор: KopylovSergey
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Для желающих добавить поддержку бОльшего числа чипов вот исходные коды программы CH341DP.EXE для работы программатора CH341A с микроконтроллерами семейства AVR
- Вложения
-
- CH341DPS.ZIP
- (98.9 КБ) 2008 скачиваний
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Можно подробнее для тех кто в танке?maxxproff писал(а):ЕСЛИ у кого есть желание потестировать,
собрал для винды версию AVRDUDE ("дудка") с поддержкой этого программатора ch341a
(патч http://savannah.nongnu.org/patch/?9127" target="_blank )
Выложил на яндекс-диск https://yadi.sk/d/4LPdfum_33dAuQ" target="_blank
Вместо официальных драйверов для CH341a ставить драйвера LibUSBK вот отсюда
https://yadi.sk/d/B1hf4aPr32ezz6" target="_blank
или с официального сайта LibusbK (можно и просто libUSB)
Видит только "быстрые" микросхемы, то есть те, у которых ранее были выставлены фьюзы на высокую частоту работы (например, с помощью нее в качестве подопытного успешно был перепрошит китайский клон USBASP на Atmega8L, разогнанный до 12Мгц),
опции SLOW CLK пока нет, буду допиливать...
P.S: ch341a заработал почти сразу, а китайский клон USBASP заработал с этой версией v6.3 дудки только после смены драйверов libusb -> libusbk,
Нашел советы тут avrdude 6.3.0-arduino2 incompatible with USBasp using libusb-win32 driver
причем сначала ставил из Zadig для WinXP - битая dll'шка libusb0.dll какая-то там,
нормально заработало из офф.источника libusbk
https://sourceforge.net/projects/libusb ... =directory" target="_blank
P.P.S: для восстановления взаимодействия ch341a с другими программами нужно будет вернуть ему родной драйвер ch341wdm.sys (например CH341PAR.ZIP с официального сайта WinChipHead http://www.winchiphead.com/download/index.htm" target="_blank )
![Псих :ps_ih:](./images/smilies/bm.gif)
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
0. На программаторе должна быть выставлена перемычка параллельного режима (EPP/MEM/I2C/...)xrz писал(а): Можно подробнее для тех кто в танке?
В системе он при этом устройство VID_1A86 PID_5512
1. Ставите для ch341a вот эти драйвера CH341A_libusbK_driver.zip
или из офф.источника libusbk:
https://sourceforge.net/projects/libusb ... =directory
(но там более универсальный инсталятор, "как в танке" с ним не получится.)
Другие программы перестанут находить программатор ch341a до момента возврата к драйверам от производителя.
1а. Удостоверяетесь собственноручно, что в Диспетчере Устройств для ch341a стоит именно драйвер libusbk.sys. Если нет, но есть желание -ищите инструкции как ставить драйвера принудительно вручную.
2. Качаете сборку avrdude http://yourdevice.net/forum/viewtopic.p ... 3732#p3731
3. Запускаете из коммандной строки с параметром "-c ch341a" для SPI на максимальной скорости,
либо с параметром "-c ch341a_bitbang" для медленного SPI,
остальные параметры смотрите для программируемого чипа и ваших задач.
maxxproff писал(а): ...
для восстановления взаимодействия ch341a с другими программами нужно будет вернуть ему родной драйвер ch341wdm.sys (например CH341PAR.ZIP с официального сайта WinChipHead http://www.winchiphead.com/download/index.htm )
- Вложения
-
- CH341A_libusbK_driver.zip
- (3.52 МБ) 1622 скачивания
Последний раз редактировалось maxxproff 18 июл 2017, 05:55, всего редактировалось 1 раз.
- skameykin22
- Сообщения: 1
- Зарегистрирован: 10 май 2017, 09:56
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Вот теперь стало понятней.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Отпишитесь, как работает.skameykin22 писал(а):Вот теперь стало понятней.
Отдельную тему создавать не спешу, т.к пока нет времени развивать и пытаться улучшать работу.
Но пока не было информации, что у кого-то ещё работает, кроме меня и автора патча.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Добрый день.
Есть программатор CH341a, захотел перешить им PRO micro на atmel32u.
Перемычка на IIC/SPi, в диспетчере задач определился как надо USB\VID_1A86&PID_5512\5&EA588C7&1&2, драйвера LibUSBK.
со SPi забираю CND, VDD, SCK,Miso,Mosi подключаю на про микру.
При попытке считать фьюз c:\"avrdude_ok"\avrdude.exe -patmega32u4 -cch341a -Pusb -U hfuse:r:hfuse.txt:b
выдает такую ошибку
avrdude.exe: initialization failed, rc=-2
Double check connections and try again, or use -F to override
this check.
Есть программатор CH341a, захотел перешить им PRO micro на atmel32u.
Перемычка на IIC/SPi, в диспетчере задач определился как надо USB\VID_1A86&PID_5512\5&EA588C7&1&2, драйвера LibUSBK.
со SPi забираю CND, VDD, SCK,Miso,Mosi подключаю на про микру.
При попытке считать фьюз c:\"avrdude_ok"\avrdude.exe -patmega32u4 -cch341a -Pusb -U hfuse:r:hfuse.txt:b
выдает такую ошибку
avrdude.exe: initialization failed, rc=-2
Double check connections and try again, or use -F to override
this check.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Доброго времени суток!mitrich писал(а):Добрый день.
Есть программатор CH341a, захотел перешить им PRO micro на atmel32u.
Перемычка на IIC/SPi, в диспетчере задач определился как надо USB\VID_1A86&PID_5512\5&EA588C7&1&2, драйвера LibUSBK.
со SPi забираю CND, VDD, SCK,Miso,Mosi подключаю на про микру.
При попытке считать фьюз c:\"avrdude_ok"\avrdude.exe -patmega32u4 -cch341a -Pusb -U hfuse:r:hfuse.txt:b
выдает такую ошибку
avrdude.exe: initialization failed, rc=-2
Double check connections and try again, or use -F to override
this check.
-Pusb я не использовал, но по идее не должно влиять.
А если добавить ключ -v , что пишет?
Хотя, если честно, я мало чем помогу, ибо не программист, а "сборщик" чужого кода с некоторой подгонкой напильником...
Напишите, что выводит, может будет какая зацепка.
У меня получалось инициализировать только Atmega8L, разогнанный заранее до 12 мгц, с внешним кварцем (клон USBASP был подопытным).
Пришел лог.анализатор Saleae logic (клон), я все собирался им откатать "обратную связь" -посмотреть, что творится непосредственно на выходе, когда чип не детектится, но пока не добрался.
На днях наткнулся еще на китайскую прогу про ch341,
работоспособность ее сомнительна, но ближайшее время выложу
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
GND первое, я правильно понял?mitrich писал(а):...со SPi забираю CND, VDD, SCK,Miso,Mosi подключаю на про микру...
А как же CS, он должен быть напрямую на Reset чипа, иначе программатором чип не подхватится.
Я не гуглил схемотехнику вашей платы, но очень желательно, чтобы при прошивке на Reset кроме программатора больше ничего не было подключено
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Первое да GND(неправильно напечатал).
-Pusb ни как не влияет).
если с ключом -v, то следующее:
avrdude.exe: Version 6.3, compiled on Dec 14 2016 at 08:22:00
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/" target="_blank
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "c:\avrdude_ok\avrdude.conf"
Using Port : usb
Using Programmer : ch341a
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page
Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW
MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ -----
----- ---------
eeprom 65 20 4 0 no 1024 4 0 9000
9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500
4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0
0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0
0 0x00 0x00
Programmer Type : ch341a
Description : ch341a programmer
avrdude.exe: initialization failed, rc=-2
Double check connections and try again, or use -F to override
this check.
avrdude.exe done. Thank you.
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
-Pusb ни как не влияет).
если с ключом -v, то следующее:
avrdude.exe: Version 6.3, compiled on Dec 14 2016 at 08:22:00
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/" target="_blank
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "c:\avrdude_ok\avrdude.conf"
Using Port : usb
Using Programmer : ch341a
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page
Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW
MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ -----
----- ---------
eeprom 65 20 4 0 no 1024 4 0 9000
9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500
4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000
9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0
0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0
0 0x00 0x00
Programmer Type : ch341a
Description : ch341a programmer
avrdude.exe: initialization failed, rc=-2
Double check connections and try again, or use -F to override
this check.
avrdude.exe done. Thank you.
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
По поводу CS, на разводке Spi interface есть CS0, CS1, CS2.
Добавил перемычку с CS0 на reset.
Результат;
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.03s
avrdude.exe: Device signature = 0x1e9587 (probably m32u4)
avrdude.exe: reading hfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "hfuse.txt"
avrdude.exe: safemode: Fuses OK (E:CB, H:D8, L:FF)
avrdude.exe done. Thank you.
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
C:\avrdude_OK>
Добавил перемычку с CS0 на reset.
Результат;
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.03s
avrdude.exe: Device signature = 0x1e9587 (probably m32u4)
avrdude.exe: reading hfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "hfuse.txt"
avrdude.exe: safemode: Fuses OK (E:CB, H:D8, L:FF)
avrdude.exe done. Thank you.
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
C:\avrdude_OK>
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Огромное спасибо за помощь и подсказку!
Получилось считать и flash и eeprom, записал blink на про микру)
Буду пробовать перешивать бутлоадер.
Получилось считать и flash и eeprom, записал blink на про микру)
Буду пробовать перешивать бутлоадер.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Вам спасибо за тестирование!mitrich писал(а):Огромное спасибо за помощь и подсказку!
Получилось считать и flash и eeprom, записал blink на про микру)
Буду пробовать перешивать бутлоадер.
От раза к разу на досуге курю программирование, однажды доберусь работоспособность медленных чипов попробовать доделать.
Надо отдельную тему создать, единомышленников поискать.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Если не трудно, попробуйте вот эту программу.mitrich писал(а):...
У меня на том же разогнанном Atmega8L в первом приближении работает (ОС WinXP).
Сохраняет дампы только в RAW-binary виде, если я все правильно понял, то есть
chavrprog.exe -d mega8 -r f dump.bin
аналогично
avrdude.exe -pm8 -cch341a -Uflash:r:dump.bin:r
У меня дампы двумя прогами разные:
толи сборка Avrdude кривая, толи эта программа,
но при сравнении дампов по адресу 0x04ED лишнее "слово".
Надо будет для контроля USBASP'ом проверить.
Исходный код программы chavrprog взят отсюда
https://github.com/Trel725/chavrprog" target="_blank
По ссылке у автора также выложен готовый exe-файл, но для его запуска требуется Cygwin.
В прилагаемом здесь exe-шнике я грубо забил в авторский исходный код пару "костылей" и пересобрал под Windows без привязки к cygwin.
Также работает только с драйверами libusb или libusbK
(НАПРИМЕР, вот с этими viewtopic.php?f=26&t=1812&p=3584#p3569)
.
Всем интересующимся также просьба пробовать, отписываться о результатах.
UPD: программа была с ошибкой, исправленную выложил ниже
Последний раз редактировалось maxxproff 15 июн 2017, 18:16, всего редактировалось 1 раз.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Доброго всем дня!
Считал дампы двумя прогами, во вложении.
Надеюсь вам поможет.
С уважением.
Считал дампы двумя прогами, во вложении.
Надеюсь вам поможет.
С уважением.
- Вложения
-
- dump.rar
- (22.97 КБ) 552 скачивания
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Спасибо за отклик!mitrich писал(а):Доброго всем дня!
Считал дампы двумя прогами, во вложении.
Надеюсь вам поможет.
С уважением.
Ваши дампы отличаются еще более заметно.
По всей видимости, chavrprog работает некорректно: при дампе везде заменяет (0x0A) -> (0x0D, 0x0A).
Буду разбираться
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Собрал авторский код без модификаций под линуксом -сливает дамп корректно!maxxproff писал(а):...По всей видимости, chavrprog работает некорректно: при дампе везде заменяет (0x0A) -> (0x0D, 0x0A)...
Нашел и исправил ошибку, дело было в том, что в Windows...
...Функция fopen используется для открытия файла. Первый параметр задаёт имя файла. Второй параметр mode задаёт требуемый тип доступа к файлу.
Кроме того, к параметру mode могут быть добавлены символы t и b для задания текстового и двоичного режимов соответственно. По умолчанию используется текстовый режим...
fp = fopen(argv[optind], "w"); -> fp = fopen(argv[optind], "wb"); в main.c решило проблему
Прикрепляю более корректную версию, сравнивал с avrdude-ch341a: дампят одинаково (0xFF в конце не в счёт).
Всем заинтересованным просьба отписаться о результатах тестирования!
Не имею пока АВР-доктор, поэтому работу с фьюзами пока не рискнул опробовать.
Если у кого есть АВР-доктор или параллельный программатор для восстановления ВДРУГ некорректно записанных фьюзов, тем просьба просто ОГРОМУЩЩАЯ: протестировать работу с фьюзами
- Вложения
-
- chavrprog_OK.zip
- (110.65 КБ) 660 скачиваний
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Собрал консольные утилиты ch341prog и ch341eeprom под Windows -одни из первых open-source программ для прошивки SPI-флеш и I2C-eeprom этим программатором.
https://github.com/setarcos/ch341prog" target="_blank
и
https://sourceforge.net/projects/ch341eepromtool/" target="_blank
Подробности тут
http://forum.easyelectronics.ru/viewtop ... 64#p503664" target="_blank
Все инструкции аналогично предыдущим программам
https://github.com/setarcos/ch341prog" target="_blank
и
https://sourceforge.net/projects/ch341eepromtool/" target="_blank
Подробности тут
http://forum.easyelectronics.ru/viewtop ... 64#p503664" target="_blank
Все инструкции аналогично предыдущим программам
- Вложения
-
- ch341eeprom.zip
- (105.96 КБ) 689 скачиваний
-
- ch341prog.zip
- (103.47 КБ) 741 скачивание
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Дорогие гуру.
Подскажите пожалуйста по сабжу.
Есть CH341A в вот таком исполнении:
![Изображение](https://habrastorage.org/files/d03/09a/014/d0309a0146644845acab04718e2dfb13.JPG)
Есть китайский USBASP на ATMEGA8A с устаревшей прошивкой.
Хочу попробовать с помощью первого обновить прошивку у второго.
Подскажите, какие пины куда подключать?
У CH341A есть:
5v
3.3v
GND
MISO
MOSI
CS
CLK
Собственно, все понятно, кроме 2х последних пинов. Правильно ли я понимаю, что CS надо на Reset, а CLK на SCK? Или как-то по другому? Подскажите кто делал.
Подскажите пожалуйста по сабжу.
Есть CH341A в вот таком исполнении:
Есть китайский USBASP на ATMEGA8A с устаревшей прошивкой.
Хочу попробовать с помощью первого обновить прошивку у второго.
Подскажите, какие пины куда подключать?
У CH341A есть:
5v
3.3v
GND
MISO
MOSI
CS
CLK
Собственно, все понятно, кроме 2х последних пинов. Правильно ли я понимаю, что CS надо на Reset, а CLK на SCK? Или как-то по другому? Подскажите кто делал.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Да, именно так.AKSU78 писал(а):… Правильно ли я понимаю, что CS надо на Reset, а CLK на SCK? …
Ещё на USBASP'е перемычку поставить в режим прошивки, а также проверить соответствие напряжения питания:
ведь USBASP при прошивке будет запитан от ch341,
а т.к USBASP бывает 3,3в и 5в на разъёме, то лучше выставить нужное напряжение.
Попробуйте для начала avrdude с поддержкой ch341,
только фьюзы не трогайте для перестраховки.
Если USBASP не увидится, то скорее всего дело в подключениях,
вариант неподдерживаемой скорости/частоты отпадает, т.к Атмега8 юсбаспа уже выставлена на высокую частоту для работоспособности юсб.
(ch341 видит только "быстрые" чипы:
сам лично в качестве эксперимента несколько раз шил юсбасп на разогнанной китайцами до 12мгц атмега8L,
но атмегу8а с частотой по умолчанию (1МГц?) у меня ch341 не увидел)
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Огромное спасибо! USBASP успешно прошит, avrdude на него более не ругается!
Оказывается, старая версия прошивки на USBASP не умела переключать скорость программирования! Из-за этого я уже неделю морочу голову и себе, и людям!
Уже даже собрался второй программатор покупать, но ждать его - нет времени. Да и жаба давит покупать лишнюю железяку, чтоб потом валялась...
Хорошо что у меня давно лежит CH341A - брал его в прошлом году чипы в картриджах "обнулять"...
Еще раз огромное спасибо, вы меня очень выручили!
Оказывается, старая версия прошивки на USBASP не умела переключать скорость программирования! Из-за этого я уже неделю морочу голову и себе, и людям!
Уже даже собрался второй программатор покупать, но ждать его - нет времени. Да и жаба давит покупать лишнюю железяку, чтоб потом валялась...
Хорошо что у меня давно лежит CH341A - брал его в прошлом году чипы в картриджах "обнулять"...
Еще раз огромное спасибо, вы меня очень выручили!
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Огромное пожалуйста!AKSU78 писал(а):Огромное спасибо! …
Еще раз огромное спасибо, вы меня очень выручили!
Вам спасибо за тестирование!
И Садкову Алексею за патч ch341a к avrdude, с которого эти все мои эксперименты с компиляциями и портированием под windows начались
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
ДЛЯ тех у кого не работает CH341DP.EXE (утилита от производителя для прошивки AVR c помощью CH341A), поковырял ее исходники:
для работоспособности китайского экземпляра программы вывод CS (Reset AVR) нужно подключать не на D0 (пин 15), а на D1 (пин 16)!
Сам пока не пробовал перепаивать,
но пересобрал из исходников эту программу, чтобы она работала с CS на D0, как это распаяно в большинстве программаторов на CH341A,
(для любителей переспрашивать: при использовании этой перекомпилированной программы ничего перепаивать теперь не нужно, при использовании оригинальной китайской -нужно).
бегло проверил на Atmega8 -фьюзы читает!
Заодно перевел на английский и установил по умолчанию системный шрифт.
За залоченные AVR чипы ответственности не несу!
Сборка модифицированной программы тестовая, пробуйте, пишите, может где-что не доглядел, пересоберу...
UPD: народ пишет, косячит эта программа.
Т.к кнопка чтения в ней изначально не предусмотрена, тратить на нее время не интересно, пользуйтесь AVRDUDE_CH341A
для работоспособности китайского экземпляра программы вывод CS (Reset AVR) нужно подключать не на D0 (пин 15), а на D1 (пин 16)!
Сам пока не пробовал перепаивать,
но пересобрал из исходников эту программу, чтобы она работала с CS на D0, как это распаяно в большинстве программаторов на CH341A,
(для любителей переспрашивать: при использовании этой перекомпилированной программы ничего перепаивать теперь не нужно, при использовании оригинальной китайской -нужно).
бегло проверил на Atmega8 -фьюзы читает!
Заодно перевел на английский и установил по умолчанию системный шрифт.
За залоченные AVR чипы ответственности не несу!
Сборка модифицированной программы тестовая, пробуйте, пишите, может где-что не доглядел, пересоберу...
UPD: народ пишет, косячит эта программа.
Т.к кнопка чтения в ней изначально не предусмотрена, тратить на нее время не интересно, пользуйтесь AVRDUDE_CH341A
- Вложения
-
- CH341DP_mod_D0_ENG.zip
- (17.08 КБ) 923 скачивания
Последний раз редактировалось maxxproff 23 авг 2017, 12:52, всего редактировалось 1 раз.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Всем привет! Надо прошить ATTiny45, есть CH341A, и руки растут вроде откуда надо. Но прочитав форум все еще не отдупляю, чяднт??
Распиновку микрухи отсюда беру http://electronut.in/images/2014/04/attiny85-pinout.png" target="_blank
Как подключать ее к CH341A беру отсюда https://raw.githubusercontent.com/Trel7 ... matics.jpg" target="_blank
Драйвера установленны (LibusbK)
Ни дудка, ни chavprog не видят мируху, дудка пишет
Вычитал где-то тут, что надо какой-то CS0 на RESET перевкнуть, но ведь на программаторе нет CS0, есть просто CS, ее корочу на RESET, результат 0.
И еще, нужно ли VDD с SPI замыкать с Vcc на микрухе?![Псих :ps_ih:](./images/smilies/bm.gif)
Программатор точно такой же как на фото http://www.sector.biz.ua/docs/CH341A_US ... 341a_1.jpg" target="_blank
Распиновку микрухи отсюда беру http://electronut.in/images/2014/04/attiny85-pinout.png" target="_blank
Как подключать ее к CH341A беру отсюда https://raw.githubusercontent.com/Trel7 ... matics.jpg" target="_blank
Драйвера установленны (LibusbK)
Ни дудка, ни chavprog не видят мируху, дудка пишет
Код: Выделить всё
avrdude: initialization failed, rc=-2
И еще, нужно ли VDD с SPI замыкать с Vcc на микрухе?
![Псих :ps_ih:](./images/smilies/bm.gif)
Программатор точно такой же как на фото http://www.sector.biz.ua/docs/CH341A_US ... 341a_1.jpg" target="_blank
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Наверно дело в том, что ATTiny выставлен на низкую частоту.Volgowood писал(а):...Надо прошить ATTiny45, есть CH341A, и руки растут вроде откуда надо. Но прочитав форум все еще не отдупляю, чяднт??...
Ни дудка, ни chavprog не видят мируху...
Вы вероятно все правильно делали, но там для тех двух программ была оговорка про работоспособность только на "быстрых" чипах.
Попробуйте вот эту версию с дополнительным режимом.
.
Собрал очередную тестовую сборку avrdude c поддержкой CH341A с двумя вариантами:
- быстрый SPI (ключ -c ch341a)
- медленный bitbang-SPi (ключ -c ch341a_bitbang)
maxxproff писал(а):....
Видит программатор CH341A только при установке для него альтернативных драйверов libusb или libusbk.
Подробности, инструкции, альтернативные драйверы и ссылки на источники исходных кодов программ смотрите в теме по ссылке, начиная с поста #3524 и до конца:
http://www.yourdevice.net/forum/viewtop ... 1812#p3524" target="_blank
Последний раз редактировалось maxxproff 12 авг 2017, 17:12, всего редактировалось 2 раза.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
CS0. он же D0 -контакт непосредственно на чипе CH341.Volgowood писал(а):...
Вычитал где-то тут, что надо какой-то CS0 на RESET перевкнуть, но ведь на программаторе нет CS0, есть просто CS...
На программаторах, которые мне встречались, CS как раз распаян на CS0 (D0).
Если подключаете линии на ATTiny как тут http://electronut.in/images/2014/04/attiny85-pinout.png" target="_blank
т.е ATTINY -> программатор CH341A:
Код: Выделить всё
1 -> CS (CS0, D0)
4 -> GND
5 -> MOSI
6 -> MISO
7 -> SCK (CLK)
8 -> +3,3V/+5V
Естественно запитывать программируемый чип нужно, удостоверившись в соответствии напряжения питания, само собой.Volgowood писал(а):...И еще, нужно ли VDD с SPI замыкать с Vcc на микрухе?
Версия avrdude c медленным bitbang-SPi скорее всего у вас сработает как надо.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
О да, она увидела микруху!maxxproff писал(а):Наверно дело в том, что ATTiny выставлен на низкую частоту.Volgowood писал(а):...Надо прошить ATTiny45, есть CH341A, и руки растут вроде откуда надо. Но прочитав форум все еще не отдупляю, чяднт??...
Ни дудка, ни chavprog не видят мируху...
Вы вероятно все правильно делали, но там для тех двух программ была оговорка про работоспособность только на "быстрых" чипах.
Попробуйте вот эту версию с дополнительным режимом.
.
Собрал очередную тестовую сборку avrdude c поддержкой CH341A с двумя вариантами:
- быстрый SPI (ключ -c ch341a)
- медленный bitbang-SPi (ключ -c ch341a_bitbang)maxxproff писал(а):....
Видит программатор CH341A только при установке для него альтернативных драйверов libusb или libusbk.
Подробности, инструкции, альтернативные драйверы и ссылки на источники исходных кодов программ смотрите в теме по ссылке, начиная с поста #3524 и до конца:
http://www.yourdevice.net/forum/viewtop ... 1812#p3524" target="_blank
Код: Выделить всё
avrdude_spi_and_bitbang_OK: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.03s
avrdude_spi_and_bitbang_OK: Device signature = 0x1e9206 (probably t45)
avrdude_spi_and_bitbang_OK: safemode: Fuses OK (E:FF, H:DF, L:62)
avrdude_spi_and_bitbang_OK done. Thank you.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Вот и здорово!Volgowood писал(а):...
О да, она увидела микруху!Код: Выделить всё
avrdude_spi_and_bitbang_OK: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.03s avrdude_spi_and_bitbang_OK: Device signature = 0x1e9206 (probably t45) avrdude_spi_and_bitbang_OK: safemode: Fuses OK (E:FF, H:DF, L:62) avrdude_spi_and_bitbang_OK done. Thank you.
Вы первый, кто опробовал эту версию, т.к программирование для меня новое хобби, а эта модификация программы avrdude - некоторая проба своих сил.
Планирую в обозримом будущем реализовать версию avrdude, работающую через официальные драйверы: судя по коду, это сделать даже легче, просто раньше не получалось -было мало практики.
"Дудка", работающая через официальный драйвер ch341wdm.sys, будет более удобна и востребована по идее.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Еше бы реализовать возможность шить прямо через SPI, но понимаю что это электрически невозможно)maxxproff писал(а): "Дудка", работающая через официальный драйвер ch341wdm.sys, будет более удобна и востребована по идее.
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Эээ, ну так мы и шьем AVR прямо через SPI.Volgowood писал(а):....Еше бы реализовать возможность шить прямо через SPI, но понимаю что это электрически невозможно)
Или вы про что именно?
Re: Программатор CH341A. USBASP USBISP/AT89S52/AVR/STC/24CXX/ATMEGA STC Programmer Support USB To TTL
Добавил третий вариант:
- медленный bitbang-SPi с обращением через драйвер производителя (CH341WDM.SYS) (ключ -c ch341a_bitbang_wch)
При этом все три варианта ключа запуска рабочие: два первых требуют установки альтернативного драйвера libusb, третий работает через стандартный драйвер от WinChipHead.
По поводу остальных ключей запуска -гуглите на тему "параметры запуска avrdude".
Несмотря на то, что сборка очень сырая, дорабатывать пока особо не буду (например, быстрый SPI также через драйвер производителя добавлю как-нибудь потом...).
Меня все устраивает, у меня все работает.
Если у кого появятся какие замечания по работе, то пишите, предварительно прикладывайте под спойлер лог работы этой сборки, запущенной с ключом -vvv,
буду дорабатывать по возможности/настроению.
P.S: программа также поддерживает кучу других программаторов, т.к собрана из официальных исходников avrdude v6.3,
но лично я на других программаторах эту сборку не тестировал, отзывы о работе приветствуются!
UPD: пересобрал с определением индекса устройства в системе
UPD2: Пересобрал для более корректной работы с USBASP и автодетекта чипа в Avrdudess.
- медленный bitbang-SPi с обращением через драйвер производителя (CH341WDM.SYS) (ключ -c ch341a_bitbang_wch)
При этом все три варианта ключа запуска рабочие: два первых требуют установки альтернативного драйвера libusb, третий работает через стандартный драйвер от WinChipHead.
По поводу остальных ключей запуска -гуглите на тему "параметры запуска avrdude".
Несмотря на то, что сборка очень сырая, дорабатывать пока особо не буду (например, быстрый SPI также через драйвер производителя добавлю как-нибудь потом...).
Меня все устраивает, у меня все работает.
Если у кого появятся какие замечания по работе, то пишите, предварительно прикладывайте под спойлер лог работы этой сборки, запущенной с ключом -vvv,
буду дорабатывать по возможности/настроению.
P.S: программа также поддерживает кучу других программаторов, т.к собрана из официальных исходников avrdude v6.3,
но лично я на других программаторах эту сборку не тестировал, отзывы о работе приветствуются!
UPD: пересобрал с определением индекса устройства в системе
UPD2: Пересобрал для более корректной работы с USBASP и автодетекта чипа в Avrdudess.
- Вложения
-
- avrdude_ch341a_26.08.2017.rar
- (285.26 КБ) 1496 скачиваний