CH341A Mini Flash Προγραμματιστής
Οδηγίες
CH341A Mini Flash Προγραμματιστής
Περιεχόμενα: [Τυχαία μη δομημένα πράγματα της Dobrica PavlinuÅ¡iÄ]
Αυτή είναι συσκευή 5V χωρίς τροποποίηση! Λειτουργεί για μένα (tm) αλλά έχετε προειδοποιηθεί http://www.eevblog.com/forum/repair/ch341a-serial-memory-programmer-power-supply-fix/Απλώς σηκώστε τον πείρο 28 και βάλτε λίγη ταινία κάτω από αυτόν για να αποφύγετε τυχόν βραχυκύκλωμα. Στη συνέχεια, κολλήστε ένα καλώδιο από αυτόν τον πείρο στον πείρο 2 του AMS1117 και επίσης στο C4. Η πλευρά του C4 προς σύνδεση είναι αυτή που συνδέεται στον ακροδέκτη 341 CH9A.
CHM341A-3V3-fix.jpg
άλτης σε καρφίτσες
Λειτουργία προγραμματιστή φλας 1-2 SPI
2-3 TTL σειριακή λειτουργία
υποστηρίζεται out-of-box από flashrom, ίσως καλύτερη επιλογή, αλλά ούτως ή άλλως:
https://github.com/setarcos/ch341prog
dpavlin@nuc:/nuc/ch341a$ git κλώνος https://github.com/setarcos/ch341prog
Κλωνοποίηση στο 'ch341prog'…
τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 104, έγινε.
τηλεχειριστήριο: Σύνολο 104 (δέλτα 0), επαναχρησιμοποιημένο 0 (δέλτα 0), συσκευασία-επαναχρησιμοποίηση 104
Λήψη αντικειμένων: 100% (104/104), 34.79 KiB | 0 byte/s, ολοκληρώθηκε.
Επίλυση δέλτα: 100% (61/61), έχει ολοκληρωθεί.
Έλεγχος συνδεσιμότητας… ολοκληρώθηκε.
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
Χρήση:
-h, –βοηθήστε να εμφανιστεί αυτό το μήνυμα
-i, -πληροφορίες διαβάστε τις πληροφορίες ταυτότητας τσιπ
-e, -σβήσε διαγράψτε ολόκληρο το τσιπ
-l, –μήκος ρυθμίστε το μήκος με το χέρι
-w, –γράψτεfileόνομα> εγγραφή τσιπ με δεδομένα από fileόνομα
-r, –διαβάζωfileόνομα> ανάγνωση τσιπ και αποθήκευση δεδομένων σε fileόνομα
-t, -turbo αυξάνουν την ταχύτητα του διαύλου i2c (-tt για χρήση πολύ μεγαλύτερης ταχύτητας)
-d, –διπλασιάστε την ταχύτητα του spi bus
I2C στον χώρο χρηστών
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 – ένα εργαλείο προγραμματισμού i2c EEPROM για το IC WCH CH341a
Έκδοση 0.5 πνευματικά δικαιώματα (γ) 2011 asbokid
Αυτό το πρόγραμμα έρχεται με καμία απολύτως εγγύηση. Αυτό είναι δωρεάν λογισμικό,
και είστε ευπρόσδεκτοι να το αναδιανείμετε υπό ορισμένες προϋποθέσεις:
Άδεια GNU GPL v3: http://www.gnu.org/licenses/gpl.html
Χρήση:
-h, –βοηθήστε στην εμφάνιση αυτού του κειμένου
-v, –verbose verbose output
-d, –debug έξοδος εντοπισμού σφαλμάτων
-s, –μέγεθος μεγέθους EEPROM {24c32|24c64}
-e, -διαγραφή διαγραφής EEPROM (συμπλήρωση με 0xff)
-w, –γράψτεfileόνομα> γράψτε EEPROM με εικόνα από fileόνομα
-r, –διαβάζωfileόνομα> διαβάστε το EEPROM και αποθηκεύστε την εικόνα σε fileόνομα
Example: ch341eeprom -v -s 24c64 -w bootrom.bin
flashrom SPI
Δεν χρειάζεται πλέον, περιλαμβάνεται στο mainline flashrom
git κλώνος https://github.com/urjaman/flashrom/
git checkout -b origin/ch341a origin/ch341a
dpavlin@nuc:/nuc/flashrom$ sudo apt-get install pciutils-dev
μονάδα spi kernel linux
dpavlin@nuc:/nuc$ git κλώνος https://github.com/gschorcht/spi-ch341-usb.git
Κλωνοποίηση σε «spi-ch341-usb»…
τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 63, έγινε.
τηλεχειριστήριο: Σύνολο 63 (δέλτα 0), επαναχρησιμοποιημένο 0 (δέλτα 0), συσκευασία-επαναχρησιμοποίηση 63
Αποσυσκευασία αντικειμένων: 100% (63/63), έχει ολοκληρωθεί.
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]: Εισαγωγή καταλόγου '/usr/src/linux-headers-4.14.0-3-amd64'
CC [M] /nuc/spi-ch341-usb/spi-ch341-usb.o
Κτιριακές ενότητες, stagκαι 2.
Ενότητες MODPOST 1
CC /nuc/spi-ch341-usb/spi-ch341-usb.mod.o
LD [M] /nuc/spi-ch341-usb/spi-ch341-usb.ko
make[1]: Έξοδος από τον κατάλογο '/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] για 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: έξοδος cs0 SPI slave με cs=0
[525021.048285] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: έξοδος cs1 SPI slave με cs=1
[525021.048287] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: έξοδος cs2 SPI slave με cs=2
[525021.048290] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio4 gpio=0 irq=0 (hwirq)
[525021.048292] spi-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio5 gpio=1 irq=1
[525021.048296] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: SPI master συνδεδεμένο με SPI bus 0
[525021.048426] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: Δημιουργήθηκε συσκευή SPI /dev/spidev0.0
[525021.048516] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: Δημιουργήθηκε συσκευή SPI /dev/spidev0.1
[525021.048596] spi-ch341-usb 2-2.1.4:1.0: ch341_spi_probe: Δημιουργήθηκε συσκευή SPI /dev/spidev0.2
[525021.049147] spi-ch341-usb 2-2.1.4:1.0: ch341_usb_probe: συνδεδεμένο
[525021.049194] usbcore: εγγεγραμμένο νέο πρόγραμμα οδήγησης διεπαφής spi-ch341-usb
Μονάδα πυρήνα linux i2c
https://github.com/gschorcht/i2c-ch341-usb
root@nuc:/nuc# git clone https://github.com/gschorcht/i2c-ch341-usb.git
Κλωνοποίηση σε «i2c-ch341-usb»…
τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 39, έγινε.
τηλεχειριστήριο: Σύνολο 39 (δέλτα 0), επαναχρησιμοποιημένο 0 (δέλτα 0), συσκευασία-επαναχρησιμοποίηση 39
Αποσυσκευασία αντικειμένων: 100% (39/39), έχει ολοκληρωθεί.
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]: Εισαγωγή καταλόγου '/usr/src/linux-headers-4.14.0-3-amd64'
CC [M] /nuc/i2c-ch341-usb/i2c-ch341-usb.o
Κτιριακές ενότητες, stagκαι 2.
Ενότητες MODPOST 1
CC /nuc/i2c-ch341-usb/i2c-ch341-usb.mod.o
LD [M] /nuc/i2c-ch341-usb/i2c-ch341-usb.ko
make[1]: Έξοδος από τον κατάλογο '/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
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: έξοδος gpio1 gpio=1 irq=1
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: έξοδος gpio2 gpio=2 irq=2
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: έξοδος gpio3 gpio=3 irq=3
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio4 gpio=4 irq=4 (hwirq)
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio5 gpio=5 irq=5
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio6 gpio=6 irq=6
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_cfg_probe: είσοδος gpio7 gpio=7 irq=7
[Τετ 7 Φεβρουαρίου 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_i2c_probe: δημιουργήθηκε συσκευή i2c /dev/i2c-8
[Τετ Φεβ 7 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_i2c_set_speed: Αλλαγή της ταχύτητας διαύλου i2c σε 100 kbps
[Τετ. 7 Φεβρουαρίου 16:37:00 2018] i2c-ch341-usb 2-2.1.4:1.0: ch341_usb_probe: συνδεδεμένο
[Τετ 7 Φεβρουαρίου 16:37:00 2018] usbcore: εγγεγραμμένο νέο πρόγραμμα οδήγησης διεπαφής i2c-ch341-usb
σχηματικά και πληροφορίες
http://onetransistor.blogspot.hr/2017/08/ch341a-mini-programmer-schematic.html
http://www.zoobab.com/ch341-usb-spi-i2c-uart-isp-dongle
Πρόσθεσα το pinout soic 8 πάνω από την υποδοχή zif, επειδή η θέση της ακίδας 1 δεν είναι εμφανής (ή δεν επισημαίνεται σαφώς οπουδήποτε στην κορυφή). Σας προτείνω να το διορθώσετε με ασημί αιχμηρό.
εναλλακτικά σχηματικά
https://github.com/Upcycle-Electronics/CH341A-Pro
ch341Apro_schematicV01.pdf
Έγγραφα / Πόροι
![]() |
Saturn CH341A Mini Flash Programmer [pdf] Οδηγίες CH341A Mini Flash Programmer, CH341A, Mini Flash Programmer, Flash Programmer, Programmer |