CH341A Mini Programator Flash
Instrucţiuni
CH341A Mini Programator Flash

Conținut: [lucruri aleatorii nestructurate ale lui Dobrica PavlinuÅ¡iÄ]
Acesta este un dispozitiv de 5V fără modificări! Funcționează pentru mine (tm) dar ai fost avertizat http://www.eevblog.com/forum/repair/ch341a-serial-memory-programmer-power-supply-fix/Doar ridicați pinul 28 și puneți niște bandă sub el pentru a preveni orice scurtcircuit. Apoi lipiți un fir de la acest pin la pinul 2 al AMS1117 și, de asemenea, la C4. Partea C4 de conectat este cea conectată la pinul 341 CH9A.
CHM341A-3V3-fix.jpg
jumper pe ace
1-2 Mod programator flash SPI
2-3 Mod serial TTL
suportat out-of-box de flashrom, probabil opțiune mai bună, dar oricum:
https://github.com/setarcos/ch341prog
dpavlin@nuc:/nuc/ch341a$ git clone https://github.com/setarcos/ch341prog
Se clonează în „ch341prog”…
la distanță: Numărarea obiectelor: 104, gata.
telecomandă: total 104 (delta 0), reutilizat 0 (delta 0), pachet reutilizat 104
Recepție obiecte: 100% (104/104), 34.79 KiB | 0 octeți/s, gata.
Rezolvarea deltelor: 100% (61/61), gata.
Verificarea conectivității... gata.
dpavlin@nuc:/nuc/ch341a$ cd ch341prog/
dpavlin@nuc:/nuc/ch341a/ch341prog$ make
gcc -std=gnu99 -Wall ch341a.c main.c -o ch341prog -lusb-1.0
dpavlin@nuc:/nuc/ch341a/ch341prog$ ./ch341prog
Utilizare:
-h, – ajută la afișarea acestui mesaj
-i, –info citește informațiile despre ID-ul cipului
-e, –erase șterge întregul cip
-l, –length setați manual lungimea
-w, –scrie <filenume> scrie cip cu date de la filenume
-r, –citește <filenume> citește cip și salvează datele în filenume
-t, –turbo mărește viteza magistralei i2c (-tt pentru a utiliza o viteză mult mai mare)
-d, –dublează viteza magistralei spi
I2C în spațiul utilizatorului
https://sourceforge.net/projects/ch341eepromtool/
dpavlin@nuc:/nuc/ch341a/ch341eepromtool_0.5$ gcc -o ch341eeprom ch341eeprom.c ch341funcs.c -lusb-1.0
dpavlin@nuc:/nuc/ch341a/ch341eepromtool_0.5$
dpavlin@nuc:/nuc/ch341a/ch341eepromtool_0.5$ ./ch341eeprom
ch341eeprom – un instrument de programare EEPROM i2c pentru IC WCH CH341a
Versiunea 0.5 drepturi de autor (c) 2011 asbokid
Acest program vine cu absolut nicio garanție; Acesta este software gratuit,
și sunteți binevenit să-l redistribuiți în anumite condiții:
Licență GNU GPL v3: http://www.gnu.org/licenses/gpl.html
Utilizare:
-h, – ajută la afișarea acestui text
-v, –ieșire verbosă
-d, –debug ieșire de depanare
-s, –size dimensiunea EEPROM {24c32|24c64}
-e, –erase erase EEPROM (se completează cu 0xff)
-w, –scrie <filenume> scrie EEPROM cu imaginea din filenume
-r, –citește <filenume> citește EEPROM și salvează imaginea în filenume
Example: ch341eeprom -v -s 24c64 -w bootrom.bin
flashrom SPI
Nu mai este necesar, inclus în flashrom principal
clona git https://github.com/urjaman/flashrom/
git checkout -b origin/ch341a origin/ch341a
dpavlin@nuc:/nuc/flashrom$ sudo apt-get install pciutils-dev
modulul linux kernel spi
dpavlin@nuc:/nuc$ git clone https://github.com/gschorcht/spi-ch341-usb.git
Se clonează în „spi-ch341-usb”…
la distanță: Numărarea obiectelor: 63, gata.
telecomandă: total 63 (delta 0), reutilizat 0 (delta 0), pachet reutilizat 63
Despachetarea obiectelor: 100% (63/63), gata.
dpavlin@nuc:/nuc$ cd spi-ch341-usb
dpavlin@nuc:/nuc/spi-ch341-usb$ make
make -C /usr/src/linux-headers-4.14.0-3-amd64/ M=/nuc/spi-ch341-usb modules
make[1]: se introduce în directorul „/usr/src/linux-headers-4.14.0-3-amd64”
CC [M] /nuc/spi-ch341-usb/spi-ch341-usb.o
Module de constructii, stagși 2.
Modulele MODPOST 1
CC /nuc/spi-ch341-usb/spi-ch341-usb.mod.o
LD [M] /nuc/spi-ch341-usb/spi-ch341-usb.ko
make[1]: Ieșim din directorul „/usr/src/linux-headers-4.14.0-3-amd64”
dpavlin@nuc:/nuc/spi-ch341-usb$
dpavlin@nuc:/nuc/spi-ch341-usb$ sudo make install
[sudo] parola pentru dpavlin:
dpavlin@nuc:/nuc/spi-ch341-usb$ sudo modprobe spi-ch341-usb
[525021.048281] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: ieșire cs0 slave SPI cu cs=0
[525021.048285] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: ieșire cs1 slave SPI cu cs=1
[525021.048287] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: ieșire cs2 slave SPI cu cs=2
[525021.048290] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio4 gpio=0 irq=0 (hwirq)
[525021.048292] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio5 gpio=1 irq=1
[525021.048296] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: SPI master conectat la magistrala SPI 0
[525021.048426] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: dispozitiv SPI /dev/spidev0.0 creat
[525021.048516] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: dispozitiv SPI /dev/spidev0.1 creat
[525021.048596] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: dispozitiv SPI /dev/spidev0.2 creat
[525021.049147] spi-ch341-usb 2-2.1.4:1.0: ch341_usb_probe: conectat
[525021.049194] usbcore: driver de interfață nou înregistrat spi-ch341-usb
modulul i2c kernel linux
https://github.com/gschorcht/i2c-ch341-usb
root@nuc:/nuc# git clone https://github.com/gschorcht/i2c-ch341-usb.git
Se clonează în „i2c-ch341-usb”…
la distanță: Numărarea obiectelor: 39, gata.
telecomandă: total 39 (delta 0), reutilizat 0 (delta 0), pachet reutilizat 39
Despachetarea obiectelor: 100% (39/39), gata.
root@nuc:/nuc# cd i2c-ch341-usb
root@nuc:/nuc/i2c-ch341-usb# make
make -C /usr/src/linux-headers-4.14.0-3-amd64/ M=/nuc/i2c-ch341-usb modules
make[1]: se introduce în directorul „/usr/src/linux-headers-4.14.0-3-amd64”
CC [M] /nuc/i2c-ch341-usb/i2c-ch341-usb.o
Module de constructii, stagși 2.
Modulele MODPOST 1
CC /nuc/i2c-ch341-usb/i2c-ch341-usb.mod.o
LD [M] /nuc/i2c-ch341-usb/i2c-ch341-usb.ko
make[1]: Ieșim din directorul „/usr/src/linux-headers-4.14.0-3-amd64”
root@nuc:/nuc/i2c-ch341-usb#
root@nuc:/nuc/i2c-ch341-usb# sudo make install
root@nuc:/nuc/i2c-ch341-usb# modprobe i2c-ch341-usb
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: output gpio1 gpio=1 irq=1
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: output gpio2 gpio=2 irq=2
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: output gpio3 gpio=3 irq=3
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio4 gpio=4 irq=4 (hwirq)
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio5 gpio=5 irq=5
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio6 gpio=6 irq=6
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: input gpio7 gpio=7 irq=7
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_i2c_probe: creat dispozitiv i2c /dev/i2c-8
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_i2c_set_speed: Schimbați viteza magistralei i2c la 100 kbps
[Miercuri, 7 februarie 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_usb_probe: conectat
[Miercuri, 7 februarie 16:37:00 2018] usbcore: a înregistrat un nou driver de interfață i2c-ch341-usb
scheme si informatii
http://onetransistor.blogspot.hr/2017/08/ch341a-mini-programmer-schematic.html
http://www.zoobab.com/ch341-usb-spi-i2c-uart-isp-dongle
Am adăugat pinout soic 8 peste soclu zif, deoarece poziția pinului 1 nu este evidentă (sau marcată clar oriunde în partea de sus). Îți sugerez să rezolvi asta cu argint ascuțit.

scheme alternative
https://github.com/Upcycle-Electronics/CH341A-Pro
ch341Apro_schematicV01.pdf
Documente/Resurse
![]() |
Saturn CH341A Mini Programator Flash [pdfInstrucțiuni CH341A Mini Programator Flash, CH341A, Mini Programator Flash, Programator Flash, Programator |
