Seems there are new CH32V microcontroller models from WCH. English datasheets for them have recently been published. No English reference manuals yet, though. Although I hear they are producing a single combined reference manual for all CH32V00x MCUs.
CH32V002CH32V004CH32V006No idea about availability. I looked at WCH's official AliExpress store, but something must be wrong or being changed, as at time of writing there are no MCU products listed there at all.
The '002 and '004 are pin-compatible with the existing '003, but differ in the following ways:
| CH32V003 | CH32V002 | CH32V004 |
CPU core: | QingKe V2A | QingKe V2C | QingKe V2C |
Instruction set: | RV32EC | RV32EmC | RV32EmC |
SRAM: | 2 kB | 4 kB | 6 kB |
Flash: | 16 kB | 16 kB | 32 kB |
Bootloader: | 1920 B | 3328 B | 3328 B |
User NV storage: | 64 B | 256 B | 256 B |
VDD range: | 3.3-5V | 2-5V | 2-5V |
ADC: | 10-bit | 12-bit | 12-bit |
Other peripherals: | Op-amp & comparator | 8-ch touch controller | - |
From what I understand, the 'm' in the V2C CPU core's oddly-named "RV32EmC" instruction set stands for 'multiplication', but is
not full 'M' extension support. That is, it is supposedly Zmmul - multiplication without division support. I am wondering what compiler support is currently like for that - hopefully it is just a case of passing
-march=rv32ec_zicsr_zmmul to GCC. I'm assuming, otherwise, existing code for '003 will just run as-is without re-compilation (presuming it's not trying to use missing or changed peripherals, that is).
The increased power supply voltage range is handy, as it'll be possible to run the new chips straight from a lithium-ion battery.
The '004 seems to essentially be a '003 but with more RAM and flash.
For the new ADC, it also says that it now has 3 internal channels versus the previous two (Vref and Vcal).
I am intrigued about what the extra third channel is - perhaps Vdd, or maybe even a temperature sensor? The latter would be very useful. I could probably try and find out from the Chinese language reference manual (which I believe is currently available), but I can't be bothered to go to that effort right now. Edit: It says right in the datasheet: "the OPA internal output channel is connected to the IN9 input channel". Vref is IN8 and Vcal IN10. Yeah, very useful for a chip without op-amp...
Haven't investigated the '006 in any detail yet; it has 62 kB flash and 8 kB RAM, same 12-bit ADC, no touch controller, but retains the op-amp/comparator of the '003.