蓝猫淘气

CH341A-nextProgrammer multi-voltage dual-mode programmer

 
Overview

CH341A nextProgrammer multi-voltage dual-mode programmer

          • It adopts the classic WCH CH341A main control and is fully compatible with existing host computers.
          • USB Type-C interface, A2C or C2C data cable can be easily extended without any constraints.
          • ZIF16 programming socket + 13Pin pin header, diversified interfaces support various target board needs.
          • Supports 1.8/3.3/5.0V target device voltage, low-voltage chips do not require a level conversion board.
          • Optional programming and serial port modes, online switching without plugging and unplugging USB.
          • Better current limiting protection function and improved on-board programming compatibility.
          • Lightweight design, U disk is quite large, easy to store and portable.

⚠ATTENTION ! ATTENTION!

 

          • This open source project is for DIY and learning purposes only. Any unauthorized sale, dissemination, or copying of this open source project for commercial purposes is prohibited.
          • Investigate all piracy and counterfeiting. Secondary creations based on this project must be open source and retain the signature of the original author.

CH341A nextProgrammer programmer functions and usage

 

 

        The CH341A nextProgrammer limited edition uses a purple immersion gold 2-layer PCB. The front provides an USB-Cinterface for connecting to the PC host computer, a set of 2.54 (100mil) pitch pin headers and a ZIF16 chip holder for connecting to the target device.

 

        The PCB arrows near the ZIF16 chip holder point to pin 1 of the corresponding chip holder for I²Cdevices that use the protocol (such as 24 series EEPROM) and SPIdevices that use the protocol (such as 25 series NOR FLASH). When placing the chip or DIP8 adapter board, only Just align pin 1 with the arrow, which greatly reduces the possibility of incorrect chip placement (the 93 series requires an adapter board). The 13Pin pin header provides 3 sets of 1.8/3.3/5.0V voltage output (each set of 300ma can be powered at the same time), SPIand I²C3 UARTsets of interfaces, LVTTL level. Supports the transfer of Dupont lines, test pins or ISP interfaces.

 

        An independent I²Cand SPIcommunication indicator light is provided, which will flash when reading and writing the corresponding interface, making it easy to observe the working status of the programmer.

         The two sets of switches on the back of CH341A nextProgrammer are used to switch the target device voltage and programmer mode respectively.

 

  • Target device voltage switching

        SW1 located on the edge of the PCB can switch the VCC voltage required by the target device. Just move the joystick to the corresponding voltage position. It should be noted that the host computer does not support adaptive voltage switching, so for low-voltage Flash (1.8V), manual operation is required. Switch to 1.8V and then recognize and read and write.

 

  • Programmer working mode switching

 

        SW2 located in the center of the PCB is used to switch the working mode of CH341A. The MODE indicator light is red in UART mode and the MODE indicator light is green in PROG mode . UART represents the asynchronous serial port mode. In this mode, the programmer interface in the PC host computer is the COM port. You can debug the serial port or program the 51 microcontroller through the serial port assistant or STC burning software; PROG represents the programmer mode. This mode The programmer interface in the PC host computer is EPP/parallel port. It is recommended to use NeoProgrammerthe programmer host computer software.

 

 

Technical specificationsTechnical specifications

Power supply USB power supply up to 300mA per channel USB powered 300 mA per rail USB interface USB host interface USB2.0 (Full-Speed ​​12Mbps) USB Type-C target device interface Target interface DIP16 chip test socket +13Pin 2.54mm pin header SPI/ I²C UART ZIF type DIP16 IC test socket & 13Pin 0.1" terminal strips SPI/I²C UART Serial baud rate 50bps - 2MbpsMax programming speed 400kbpsSupported Target voltage 1.8V /3.3V/5.0V operation Operating temperature -40 ~ 85℃ Relative humidity < 90 % rH Product size Size (without cables) 60.5mm x 25.5mm x 16mm Product quality Weight 50g Supported operating system Supported OS Microsoft Windows (x86/x64), Linux (x86/x64/Arm), macOS (x86/Apple M1) programming software Software Asprogrammer/NeoProgrammer (Windows GUI)

 

Plume Adapter feather chip adapter expansion board

        At present, Flash/EPPROM chip packaging is developing towards miniaturization and SMD. Obviously, the ZIF chip holder that only supports DIP packaging cannot meet the needs of development and maintenance. At the same time, the installation of chip clips, simple horn connectors, test pins and aging sockets It also requires a double row of pins or an FPC interface. Integrating these needs, we have designed a new 24/25/93 series Flash or EEPROM for switching SMD packages, which supports dozens of packages from USON8 to SOIC16 and has 2*4Pin double row pins and JSPI 12Pin FPC interface. Ultra-small size (24.4x23.4mm) chip adapter expansion board Plume Adapter.

 

  • Top View Front

  • Bottom View Back

 

Plume Adapter Supported Target ICs Supported Target IC Packages

front

(Top)

SPI Flash NOR(25系列Flash); SPI EEPROM(25系列EEPROM); SPI Flash NAND; SPI FRAM; SPI MRAM; I²C 24 EEPROM(24系列EEPROM); SOP8(SOIC8); SOP16(SOIC16); WSON8-8x6; WSON8-6x5; TSSOP8; USON8-2x3(DFN8-2x3);

背面

(Bottom)

I²C 24 EEPROM(SOT23-5); MICROWIRE EEPROM(93系列EEPROM); 支持93系列EEPROM 8bit/16bit切换† 24系列EEPROM: SOT23-5; 93系列EEPROM; SOIC8; SOT23-6;

背面

DIP8排针

编程器ZIF座 24或25系列DIP8芯片对应位置

正面

双排针

SPI Flash NOR(25系列Flash); SPI EEPROM(25系列EEPROM); SPI Flash NAND; SPI FRAM; SPI MRAM; I²C 24 EEPROM(24系列EEPROM); 芯片夹、简易牛角连接器、测试针
JSPI FPC SPI Flash NOR(25系列Flash) TBD 笔记本和台式机主板JSPI接口

†16Bit模式: 0603贴片电阻空焊; 8Bit模式0603贴片电阻1-10kΩ。

 

将芯片测试座焊接在Plume Adpt.上获得一个可用于批量量产SOP8/16芯片烧录座

推荐采用LOTES SPI0001-P001A(SOP8 150mil窄体) ACA-SPI-004-K01(SOP8 208mil宽体) ACA-SPI-006-K01(SOIC16 300mil)芯片测试座

请使用回流焊、热风枪或者加热板从PCB背面加热焊接 LOTES代理商提供的多种芯片测试座购买链接

 

 

双排针通过简牛连接芯片测试夹或者测试探针可以直接进行Flash/EEPROM在板烧录,无需拆焊

 

 

CH341A nextProgrammer+Plume Adapter 搭配SOP8测试夹进行主板BIOS Flash读写

 

那么一个具有如此多功能的超小型转接板需要多少钱呢?答案是: FREE

Plume Adapter 羽型芯片转接扩展板作为CH341A nextProgrammer紫金限量版的特典免费赠送

 

CH341A编程器的历史回顾与硬件设计细节

 

        WCH(沁恒微电子)数十年前推出的CH341A USB总线转接芯片可以说是非常经典且廉价的编程器方案,直至今天以这款芯片为主控的编程器依旧占领着某宝/Aliexpress/Amazon/eBay的销售榜首(例如魔改主板圈内几乎人手一个的土豪金)。尽管CH341A编程器声名在外,最早的开发者风铃夜思雨却极少为人所知。目前我们仍然可以在数码之家老站上看到这位dalao在2011-07-13发布的第一代CH341A编程器的页面,以及几乎每个用过CH341A编程器的朋友都熟悉的上位机UI。是的,淘宝卖家和某度搜索到的CH341A编程器上位机均为风铃夜思雨开发的免费版本或者非法破解版本。原作者正版CH341A编程器可以从某宝的这个链接购得,原版提供了红外串口功能,芯片兼容性要比缩水后的土豪金之类的廉价版本好得多。

 

正版CH341A编程器上位机

 

        CH341A编程器元件易得,BOM简单,容易"复刻",我们可以在开源平台找到各种各样基于CH341A的编程器设计,不过由于时代限制,这些开源设计不少仍然采用A口甚至打印机B口,不便于使用。同时有些项目存在一些小问题,包括但不限于1117的输出电容仅仅使用了MLCC而没有采用钽电容、没有考虑LDO供电能力和在板烧录的需求进行限流保护、push-pull不应该存在上拉电阻、模式选择下拉电阻阻值错误等等。为了减少后续使用者和开发者反复踩坑,浪费时间,我解决了过去这些开源的CH341A编程器存在的这些问题,并以尽量低的BOM成本实现了全新USB-C接口的CH341A nextProgrammer编程器设计,具体改进如下:

  1. USB接口采用了USB Type-C,支持A2C和C2C数据线,支持C2C自动翻面;
  2. 目标器件供电由固定的3.3V改为1.8-3.3-5.0V可调,支持绝大部分低压器件读写:
  3. 增加PTC限流自恢复保险丝,增加限流电阻,降低在板烧录大电流将LDO拉到保护的可能;
  4. 增加了I²C和SPI通信指示灯,便于观察CH341A和目标器件之间的通信状态;
  5. 增加了编程和串口热切换开关和指示灯,切换编程和串口模式不再需要插拔USB;
  6. 更小的元件封装(0402),2层板实现了U盘尺寸的便携体积;

 

Tips for DIY

 

        CH341A nextProgrammer的元件除了ZIF16芯片座以外均可在立创商城完成采购,100PCS的平均BOM成本约为20元。不建议购买拆机翻新CH341A芯片,这类芯片很多是故障板拆下的,根据我们抽样的结果来看,不良率高达85%以上,即使只需要2元/PCS,15%的良率意味着高达13元的成本,还不包括测试需要的人力成本。CH341A nextProgrammer的控制和复位电路完全由74逻辑门构成,不会因为MCU涨价成本暴涨,同时逻辑门电路有更好的鲁棒性,不容易因为温度或者固件问题发生故障,经过测试-40-85℃编程器均能正常工作。

        阻容封装较小(0603 0402),建议使用性能较好的电烙铁以及合适的烙铁头,或者可以用热风枪吹焊。USB Type-C和开关需要注意一下焊接温度 ,可以从背面加热避免塑料融化。U2位于ZIF16编程座下方,需要将编程座对应的位置打磨一下避免元件结构冲突。如果没有合适的电烙铁或者热风枪,对自己的焊接技术没有把握,不妨考虑一下咱的量产成品,限量赠送Plume Adapter。

 

NeoProgrammer by TTAV134 CH341A编程器开源上位机软件

 

        某宝仿制CH341A奸商提供的盗版CH341A编程器上位机软件不仅侵犯了原作者版权,同时也有芯片支持不够、报错闪退等各种问题,不建议使用。推荐大家使用由Alexander开发的开源软件AsProgrammer (dsanke汉化版|原版|github)或者支持更多器件的基于AsProgrammer由TTAV134再开发的NeoProgrammer CH341A编程器上位机软件(misslee&dsanke汉化版|原版)。

如何使用编程器进行烧录

 

        If you don't know about NOR Flash and EEPROM and don't know the storage principles of this type of chip, you can search for relevant information and learn about it yourself. We will not go into details about the physical layer principles of this type of chip here. The difference from NAND is that when writing to this type of chip, you must first clear the chip's content and ensure that the data in the chip is all FF before writing data. After writing, read the chip's content again and compare it with the buffer's content. The hardware tool for reading and writing this type of memory chip is usually called a programmer.

"A little explanation for beginners: First of all, you need to understand what a programmer/burner is. The BIOS chip is a FLASH chip. The process of writing data into it is called programming, and it can also be called burning. No. Compilation is not writing, it is Program in English. Then using a programmer to flash the BIOS is to use the programmer to write data into the FLASH chip. -------by dsanke"

  1. For programmers/burners, the first thing to do is to try to read the ID of the chip through I²C, SPI or Microwire bus. After obtaining the ID, look up the table to determine the brand, model and capacity of the target device. Therefore, whenever a new device is connected, it is recommended to first click ?the icon to detect the chip model and identify the chip ID. After correctly identifying the chip model, ensure that the programmer voltage is consistent with the target device voltage. If the target chip cannot be recognized, please check whether the voltage between the programmer and the target chip is consistent or whether the connection to the target chip is normal . Especially the programming clip requires a certain posture to accurately clamp the target chip.
  2. After accurately identifying the chip, you can click 读取芯片the icon to read the chip content. After the reading is completed, you can click 校验ICthe icon again to verify the content read by the chip to ensure that the data is accurate. Before burning new firmware, it is recommended to back up the read content and save it as a BIN file .
  3. After burning the chip, you can open the firmware file that needs to be written after the backup is completed. The file type can be BIN or HEX. If it is a ROM or ASUS CAP file, certain processing is required. After opening the file that needs to be written, click 自动编程the ▼ next to the icon, select all 5 options, and then click 自动编程the icon. NeoProgrammer will automatically unlock the chip's write lock, erase, blank check, write new firmware, and verify. After patiently waiting for the prompt that the operation is successful, you can successfully program the target chip.

  • Precautions:
  1. If the chip cannot be recognized, please check whether the corresponding chip active detection mode 选项in the menu has an [x] check检测选项
  2. The target board cannot be recognized/initialized after QSPI NOR Flash programming. Please check whether the QE bit (QSPI Enable bit) of SREG is 1.
  3. If read and write verification errors occur repeatedly, please use shorter data cables and extension cables and check whether the target device is locked or damaged
  4. Skipping FF programming can significantly improve the programming speed of large-capacity NOR Flash. It is recommended to enable this function.
  5. If you encounter an IC whose Device ID can be read but the programmer cannot correctly identify it, you can choose a device with similar capacity and parameters to try. If you have certain English/Russian communication skills, you can submit the Device ID to the author so that the components can be updated in the next version. Support library
  6. Some chips have an OTP area. This storage area can only be written once. Once written or locked, it cannot be erased or unlocked.

NeoProgrammer 2.2.0.10 Supported Device List

NeoProgrammer 2.2.0.10 target device support list

 

The support list is attached and can be downloaded and searched for later.

 

 

参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-05-19 12:15:41

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号