sábado, maio 31, 2025

Microcontroladores PUYA PY32F002A e PY32F003

A cerca de um ano, quando comecei a estudar o CH32V003, eu ouvi falar num microcontrolador que seria ainda mais barato, e com core ARM Cortex M0+. Pesquisando no AliExpress, encontrei uma placa com o PY32F002A, comprei algumas e coloquei na gaveta.

Só agora eu fui estudar estas placas. A placa que eu comprei não está mais disponível na AliExpress, mas achei um modelo fisicamente parecido, mas com o PY32F003. Neste post vou documentar o que eu descobri sobre eles.

A PUYA é um fabricante chinês de semicondutores, cujo principal produtos são memórias EEPROM e Flash de baixo custo. A linha PY32 possui três modelos: PY32F002A, PY32F003 e PY32F030. As diferenças entre os modelos são o tamanho da memória, clock máximo de periféricos; até onde sei firmwares escritos para um modelo mais simples rodam nos mais completos e as pinagens são compatíveis. Dependendo do modelo e da quantidade, o preço fica abaixo dos 10 centavos de dólar apregoados pelo CH32V003.

Existem relatos que o mesmo chip estaria sendo fornecido para os três modelos, mudando apenas a marcação.

As placas que comprei são com PY32F002A e PY32F003. Ambos tem um core ARM Cortex M0+, operação de 1,7V a 5,5V, até 18 GPIOs, ADC de 12 bits, SPI, I2C, comparadores e hardware para cálculo de CRC-32. As diferenças são:

  • Clock máximo: 24 MHz (002A) x 32 MHz (003)
  • Flash: 20k (002A) x 16k, 32k ou 64k (003)
  • Ram: 3k (003) x 2k, 4k ou 8k (003)
  • Timers: 1 advanced, 1 general purpose, 1 low power, systick e 1 watchdog (002A) x 1 advanced, 4 general purpose, 1 low power, systick e 2 watchdog (003)
  • USART: 1 (002A) x 2 (003)
  • RTC: somente no 003

Como mencionei, as placas são bem parecidas. Além do microcontrolador, a principal diferença visível é o cristal. As placas possuem conector USB-C, somente para alimentação. Possuem um LED de ligado e mais um LED e uma tecla ligados a GPIOs. O acabamento é bem simples.

Para desenvolvimento de firmware pode ser usado o ARM GNU toolchain. Achei dois repositórios no github com detalhes e exemplos: https://github.com/wagiminator/Development-Boards/tree/main/PY32F002AF15P_DevBoardhttps://github.com/IOsetting/py32f0-template.

Para gravar na Flash o programa, pode ser usado um programador externo ou o bootloader presente nos chips. Nos meus testes eu usei o bootloader, como as placas não tem conversor serial/USB eu liguei um externo.

Não fiz grandes experiências até o momento, mas estes microcontroladores parecem ser uma opção para quem quer usar a arquitetura ARM Cortex M0+ com baixo custo.


Nenhum comentário:

Postar um comentário