nstrappazzonc / CH552

Basic projects of CH552G (8-bits MCU)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CH552

Este es un facinante, repotenciado y bien dotado MCU de 8-bit de muy bajo coste, diseñado y fabricado en china por Jiangsu Heng Qin Ltd. (WCH). De momento nos vamos a centrar en el CH552G que está basado en la arquitectura 8051 CISC y su núcleo es especificamente E8051, lo más atractivo de este MCU es su puerto USB y un oscilador interno de 24Mhz entre otras cosas. Para programarlo nos debemos basar bastante en el MCS51. Existen diferentes empaquetados y versiones del MCU cómo; CH551, CH552, CH554 y CH559.

Puedes conseguir los MCU en la tienda oficial de AliExpress o en LCSC.

El 8051 pertenece a una familia MCS-51, y es tan popular que se ha hecho abierto para que cualquiera pueda conocerlo en OpenCores y ver los diseños del MCU.

Por ejemplo, un MCU de la familia AT89LP51 que tiene menos prestaciones tiene un coste x3 en comparación a la familia CH55X. Obviamente la comunidad para el soporte de Microchip es muy grande y varoable a comparación a la de WCH, lo importante es que la documentación oficial sea buena y la arquitectura la misma, y con algo de paciencia se pueden lograr cosas.

Especificaciones

Estas son las especificaciones más relevantes del MCU, para más detalles vea la documentación oficial.

  • Trabaja entre 5V y 3.3v.
  • Incorpora 16KB Code Flash, 1KB XRAM, 256B iRAM, 128B DataFlash.
  • Soporta los protocolos de comunicación USB 2.0, UART, SPI, ISP.
  • Tiene 3 timer, 2 signal capture, 2 PWM, y 4 ADC.
  • Incorpora BootLoader.
  • Incorpora un reloj interno de 24MHz.
  • Incorpora un identificador numerico único.
  • Encapsulados disponibles: TSSOP-20, SOP-16, MSOP-10.

El pinout que mostramos es básico para hacerse una idea, hay más funcionalidades en los puertos. Revisar el datasheet para mayor detalle.

IMPORTANTE: Se debe destacar que hay una limitación con la ROM o el Code Flash es un proceso iFlash™, el cual puede ser programado unas 200 veces. No es tan malo, pero debe tenerlo en cuenta.

Componentes

Use los siguientes componentes para construir el circuito mínimo:

  • Un IC CH552G.
  • Condensador de 100nF x2.
  • Resistencia de 10K x2.
  • Resistencia de 1K x2.
  • Dos pulsadores. Uno para el boot y otro para el reset.

Esquema mínimo

En el protoboard nos queda de la siguiente forma:

Códigos fuentes

En este repositorio tiene una colección de códigos fuentes de ejemplos escrito en C para empezar. Todos los códigos fuentes han sido previamente verificados para garantizar su correcto funcionamiento.

  • blink Usa un puerto de salida para encender y apaga un LED.
  • button Usa un puerto de una entrada para un pulsador y otro puerto de salida para el LED.
  • fade Hace uso del PWM para endencer y apagar un LED con atenuación.
  • cdc Envia y recibe mensajes por el protocolo UART.
  • adc Captura la variación de voltaje por un puerto de entrada.
  • USB/cdc Envia mensajes a través del puerto USB.

Proyectos relacionados

About

Basic projects of CH552G (8-bits MCU)


Languages

Language:C 98.6%Language:Makefile 1.4%