Отладочная плата CH552G

CH552G — доступный микроконтроллер на основе модифицированной архитектуры E8051. По ряду параметров он уступает популярной Atmega328, но для множества DIY задач вполне подойдёт. А ещё, у него есть встроенный USB интерфейс, так что для работы с данным МК не потребуется внешний USB-UART.

На отладочной плате CH552G, помимо самого микроконтроллера есть пара кнопок, отвечающих за сброс и режим загрузки. Индикатор питания, и тестовый светодиод на выводе P3.3.

Примечание

Отладочную плату CH552G можно приобрести в магазине Alash Electronics.

Спецификация

  • ядро: E8051;

  • режим отладки: swd;

  • рабочая частота: 24 МГц;

  • память программ (ПЗУ): 16 кбайт;

  • память данных (ОЗУ): 1280 байт (1024 xRAM + 256 iRAM);

  • память данных (Flash): 128 байт.

  • напряжение питания: от 2,8 до 5 В;

  • размер: 41 x 20 мм;

  • монтажные отверстия: 36 x 15,2 мм.

Периферия

  • таймеры: 3;

  • ШИМ: 8-разрядный, 2 канала;

  • SPI: 1;

  • USART: 2;

  • АЦП: 8-разрядный, 4 канала;

  • ёмкостный датчик (Touch): 5;

  • внешние прерывания: 2;

  • GPIO: 17.

Схема контактов

Распиновка CH552G — карта выводов отладочной платы

Настройка среды Arduino IDE

Скачав и установив среду Arduino IDE мы не найдём в списке отладочные платы на базе CH552G. Чтобы добавить данную плату в Arduino IDE нужно проделать кое-какие дополнительные действия.

Шаг 1. Запускаем среду и переходим в настройки

Запускаем Arduino IDE, заходим в меню Файл и далее выбираем пункт Настройки.

Arduino IDE — переход в меню Настройки

Шаг 2. Ссылка на хранилище настроек для плат CH552G

Затем, на форме настроек в поле «Дополнительные ссылки для менеджера плат» жмём кнопку справа от этого поля и в появившемся окне вставляем ссылку:

https://raw.githubusercontent.com/DeqingSun/ch55xduino/ch55xduino/package_ch55xduino_mcs51_index.json

Должно получиться вот так:

Arduino IDE — добавление ссылки на менеджер плат CH552G

Шаг 3. Установка пакета с платами CH552G

Теперь заходим в меню Инструменты, далее в пункт Плата и затем Менеджер плат.

Arduino IDE — открытие Менеджера плат

На открывшейся форме в строке поиска пишем «CH552», после чего в результатах поиска появляется пакет с названием «CH55xDuino MCS51 plain C core (non-C++)». Жмём кнопку Установить.

Arduino IDE — поиск и установка пакета CH55xDuino MCS51

Ждём завершения установки, наблюдая за уровнем загрузки снизу. Это может занять 1-3 минуты.

Теперь если зайти в меню Инструменты и далее Плата, можно увидеть, что появился новый раздел плат CH55x Boards. Готово!

Arduino IDE — раздел CH55x Boards в меню Плата

Питание от 3.3В

Предупреждение

При питании от источника 3.3 В, микроконтроллер сможет стабильно работать только на частоте 12 МГц. Так что в настройках платы в Arduino IDE следует выбрать параметр Clock Source: 12 MHz (internal), 3.3V or 5V.

Установка USB драйвера

Чтобы компьютер смог распознать плату на порту USB, необходимо установить дополнительный драйвер. Ссылка есть в конце инструкции.

Программирование CH552G

Теперь напишем простую программу для CH552G и загрузим её на микроконтроллер. Пусть первая программа, как обычно, будет мигать встроенным светодиодом.

На плате CH552G от Alash Electronics встроенный светодиод подключен к выводу P3.3, так что в программе в среде Arduino IDE ему будет соответствовать номер 33. Пишем код.

#define LED_BUILTIN 33

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

В настройках платы в Arduino IDE можно ничего не менять. Просто жмём кнопку Загрузка и смотрим на светодиод.

Принципиальная схема

Принципиальная схема отладочной платы CH552G

Полезные ссылки

Драйвер CH372:

https://download.robotclass.ru/Drivers/CH372/CH372DRV.EXE

Техническая документация на CH552G:

https://shop.robotclass.ru/image/data/datasheets/CH552DS1.PDF