Отладочная плата 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.
Схема контактов
Настройка среды Arduino IDE
Скачав и установив среду Arduino IDE мы не найдём в списке отладочные платы на базе CH552G. Чтобы добавить данную плату в Arduino IDE нужно проделать кое-какие дополнительные действия.
Шаг 1. Запускаем среду и переходим в настройки
Запускаем Arduino IDE, заходим в меню Файл и далее выбираем пункт Настройки.
Шаг 2. Ссылка на хранилище настроек для плат CH552G
Затем, на форме настроек в поле «Дополнительные ссылки для менеджера плат» жмём кнопку справа от этого поля и в появившемся окне вставляем ссылку:
https://raw.githubusercontent.com/DeqingSun/ch55xduino/ch55xduino/package_ch55xduino_mcs51_index.json
Должно получиться вот так:
Шаг 3. Установка пакета с платами CH552G
Теперь заходим в меню Инструменты, далее в пункт Плата и затем Менеджер плат.
На открывшейся форме в строке поиска пишем «CH552», после чего в результатах поиска появляется пакет с названием «CH55xDuino MCS51 plain C core (non-C++)». Жмём кнопку Установить.
Ждём завершения установки, наблюдая за уровнем загрузки снизу. Это может занять 1-3 минуты.
Теперь если зайти в меню Инструменты и далее Плата, можно увидеть, что появился новый раздел плат 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 можно ничего не менять. Просто жмём кнопку Загрузка и смотрим на светодиод.
Принципиальная схема
Полезные ссылки
Драйвер CH372:
https://download.robotclass.ru/Drivers/CH372/CH372DRV.EXE
Техническая документация на CH552G:
https://shop.robotclass.ru/image/data/datasheets/CH552DS1.PDF