I bought one cheap chinese CH341A serial memory programmer black PCB (see attached picture). Someone already did the schematic of this board (atached). Source: All Vcc connections in the ZIF socket are 3.3V but the CH341A is powered at 5V. So all I2C and SPI signals are 5V while the external memory is powered at 3.3V. There are no limiting series resistors on those signals. One simple solution to fix this issue is to simply bypass the 1117-3.3V regulator.
I can use the hot air station to remove the 1117 and then short-circuit the input with the output. My question is, is it safe to just do the short-circuit without removing the 1117 linear regulator? Hi, The trick is, that you miss 2 nd LDO, that is inside CH341A chip. At end of chapter 5.2 硬件说明 (Hardware description) is stated: CH341芯片支持5V电源电压或者3.3V 电源电压。当使用5V 工作电压时,CH341 芯片的VCC 引脚 输入外部5V 电源,并且V3 引脚应该外接容量为0.01uF~0.1uF 的电源退耦电容。当使用3.3V 工作 电压时,CH341 芯片的V3引脚应该与VCC引脚相连接,同时输入外部的3.3V电源,并且与CH341芯 片相连接的其它电路的工作电压不能超过3.3V。 It can be translated: The CH341 chip supports a 5V supply voltage or a 3.3V supply voltage.
When using a 5V supply voltage, the VCC pin of the CH341 chip inputs an external 5V power supply, and the V3 pin should be externally connected with a power supply decoupling capacitor of 0.01uF to 0.1uF. When working with 3.3V voltage, the V3 pin of the CH341 chip should be connected to the VCC pin, and an external 3.3V power supply is input, and the CH341 core is connected. The operating voltage of other circuits connected to the chip cannot exceed 3.3V.
As far as I understand, that mean, that chip have internal 3.3V regulator and IO pins are NOT 5V tolerant. It mean, it always use 3V3 for communication with eeprom. The trick is, that you miss 2 nd LDO, that is inside CH341A chip. At end of chapter 5.2 硬件说明 (Hardware description) is stated:. It can be translated: The CH341 chip supports a 5V supply voltage or a 3.3V supply voltage.
When using a 5V supply voltage, the VCC pin of the CH341 chip inputs an external 5V power supply, and the V3 pin should be externally connected with a power supply decoupling capacitor of 0.01uF to 0.1uF. When working with 3.3V voltage, the V3 pin of the CH341 chip should be connected to the VCC pin, and an external 3.3V power supply is input, and the CH341 core is connected. The operating voltage of other circuits connected to the chip cannot exceed 3.3V. As far as I understand, that mean, that chip have internal 3.3V regulator and IO pins are NOT 5V tolerant. It mean, it always use 3V3 for communication with eeprom. I initially agreed with you about the interpretation of section 5 of the datasheet, and I was going to just hook it up to the 3.3V-only BIOS chip I need to reprogram and go for broke. However, I decided to be cautious and actually verify it.
I now believe that the statement in section 5 of the datasheet is stated poorly, and what they mean is that when the chip is run from Vcc = 3.3V the I/O pins are not 5V-tolerant, but that the comment doesn't apply in the case where the chip is run from Vcc = 5V. I hooked up the SPI signals of a new CH341A MiniProgrammer to a 4ch scope, and with no EEPROM actually connected, the CH341A is driving the CS, MOSI, and CLK signals in the high state to over 4.7V, and MISO is being pulled up to over 4.7V.
Spi Serial Flash
Note also that section 6 of the datasheet explicitly gives a Voh(min) spec of Vcc-0.5V, and Vih(max) of Vcc+0.5V, where Vcc of the MiniProgrammer is the USB Vbus, e.g., 5V or so, rather than referencing Voh(min) and Vih(max) to the V3 pin. The Voh(min) as specified matches the observed behavior of the part.