RISC-V WCH CH32V203C8T6. Похоже на STM32? Разбор полета

  Переглядів 7,364

Олег Волков

Олег Волков

День тому

Друзья, всем привет!) Нет, я не ушел с STM32 на WCH. Это не видео ради хайпа на RISC-V. Это рассказ про опыт работы с микроконтроллером CH32V203C8T6 на ядре RISC-V. Работаю на регистрах, по документации. Так настрадался, что уже нравится даже :D.
Кстати, я тут выпустил обновление своей прогаммы для PC на Windows CRC Calculator v1.0.7 + мини-программы. Ознакомься, теперь есть поддержка Win_x86(по просьбам трудящихся) + новая мини-программа: github.com/Solderingironspb/C...
Экспоненциальную зависимость яркости в дисплее делал при момощи нее. Мини-программа "Curves for PWM".
Вернемся к WCH и RISC-V:
Итак, начнем с того, что я написал статью по ним еще в апреле.
Это первое, с чем нужно ознакомиться перед просмотром видео, чтоб понять, что это за звери такие. Видео будет пересекаться со статьей.
Статья: dzen.ru/a/ZC1JmvbL0Ffh4_4i
Заметки по работе: github.com/Solderingironspb/C...
Мой генератор кода для RVMSIS: github.com/Solderingironspb/R...
Группа в телеграм по RISC-V: t.me/riscv_mcu
Заметки по RVMSIS(там же будет проект из видео, в нем библиотеки):
github.com/Solderingironspb/C...
00:00 Введение и описание проекта
05:51 Особенности работы с данными микроконтроллерами
06:26 Сколько стоят на момент написания видео
06:42 Опять жалуюсь на кривую документацию и код от производителя
12:18 Какое ПО использовать и какие программаторы
16:50 Мой кодогенератор на RVMSIS
18:27 Заметки по нюансам работы с WCH и RISC-V
21:02 Боль и страдания
22:22 Отладка МК
27:12 Переделанные файлы ядра и системный таймер
28:11 Обзор двух проектов из моего кодогенератора
Ссылки на али:
Программатор: aliexpress.ru/item/1005004881...
МК: aliexpress.ru/item/1005004350...
Еще МК: aliexpress.ru/item/1005005036...

КОМЕНТАРІ: 55
@szapsis
@szapsis 8 місяців тому
Спасибо большое за твои труд друг!
@user-jt2yr9jt6m
@user-jt2yr9jt6m 4 місяці тому
Спасибо вам! Сохраню это видео и положу под подушку. Трудно подсчитать, сколько сил вы нам сэкономили!
@MaxChernousov
@MaxChernousov 8 місяців тому
ну наконец то!!! купил esp32 нахожу множество интересных проектов и все они начинаются с "а сейчас мы на нее установим Arduino", Вы первый у кого я вижу использование С и документации, хоть и на другое железо))
@gennadyz7699
@gennadyz7699 5 місяців тому
Зря вы так. ЕSP достаточно мощный , писать под него на С опираясь на документацию чипа идиотизм. Все равно что мыть пол зубной счеткой. В esp arduino sdk является оберткой над еsp- idf , но никто вам не мешает мешать код из ардуино и idf. При таком подходе вы быстро создаете эффетивный код. Если же идти по пути документации и C то вы будите писать год то что мы пишем за неделю, при этом ваш кончный результат будет хуже т.к вы там понаделаете кучу ошибок, которые в аидуино и idf хоть как то поправлены. Основная проблема всех этих китайских процов как раз в том что нет нормальных sdk , библиотек, статей и документации. Поэтому можно потратить годы на написание того что на том же esp или stm реалезуется за неделю.
@svbHiTek
@svbHiTek 4 місяці тому
Олег, С Новым Годом, желаю вам всего самого наилучшего, а самое главное творческого вдохновения, уж очень хочется от вас чего то новенького по теме CMSIS и STM32, вообще не важно о чем.
@Solderingironspb
@Solderingironspb 4 місяці тому
Спасибо!))) И Вас с Новым Годом!) Видео будут, но позже)
@zhdanvadim9536
@zhdanvadim9536 8 місяців тому
Спасибо за информацию)
@qvan2210
@qvan2210 8 місяців тому
Спасибо вам за вашу статью, по ней уже месяц изучаю 203 на регистрах.
@Al.Sy.
@Al.Sy. 8 місяців тому
Можно ссылку?
@Solderingironspb
@Solderingironspb 8 місяців тому
Возьмите файлы ch32v20x_RVMSIS.c и ch32v20x_RVMSIS.h с моего последнего проекта github.com/Solderingironspb/CH32V203C8T6_RVMSIS_notes Там с флешем немного поработал, чтоб МК в бесконечное ожидание не уходил и был нюанс один с I2C1 - почему то без ремапа не хочет работать. Происходит старт и потом шина занята и тишина. С ремапом на другие ноги все хорошо.
@Solderingironspb
@Solderingironspb 8 місяців тому
@@Al.Sy. все ссылки в описании к видео
@Al.Sy.
@Al.Sy. 8 місяців тому
@@Solderingironspb Спасибо!
@smart_electrics_il
@smart_electrics_il 8 місяців тому
Спасибо за труд! Посмотрел видео, ST -я вас ещё больше люблю)) Если не секрет, на какую камеру снимаете ?)
@Solderingironspb
@Solderingironspb 8 місяців тому
Canon m50
@AlexRootx
@AlexRootx 8 місяців тому
Давно видосов не было))) Молодая жена не дает видосы пилить?? (сарказм) За работу, конечно же, жирнющий лайк!!! Продолжай в том же духе!!!! Спасибо, Олег!!!
@Solderingironspb
@Solderingironspb 8 місяців тому
Моя жена вытерпела все записи роликов на этом канале, когда мы еще и женаты не были :D Просто не люблю писать видосы ради того, чтоб что-то снять) Есть полезная инфа - делюсь)
@AlexRootx
@AlexRootx 8 місяців тому
Однозначно, Олег!!! В этом и есть "фишка" твоего канала!!! Нет воды!!!@@Solderingironspb
@alexandrl.5131
@alexandrl.5131 8 місяців тому
Благодарю за полезную информацию. WCH-LinkE, и остальные варианты программаторов, можно собрать самому, схемы в открытом доступе, прошивки в папках программы WCH-Link-utility, единственное нужно не перепутать файлы прошивки, их там 2 для каждой версии программатора, один я так понимаю для обновление через WCH-Link-utility, второй для прошивки через другой программатор, который соответственно нужно иметь))) по этому у меня их теперь 4шт.
@Solderingironspb
@Solderingironspb 8 місяців тому
Ого) спасибо за инфо)
@liliansirbu840
@liliansirbu840 8 місяців тому
Спасибо большое. Заметил у вас на гитхабе есть про USB. Мошете описать в ондном видео как делаете е переделаете USB драйвер, буфферы/ендпоинты(2, 4 и больше)? так же хочется про CAN bus, lwIP, но это уже слишком много и сразу )))
@Solderingironspb
@Solderingironspb 8 місяців тому
К сожалению в USB я еще профан. С нуля написать все не могу. С эндпоинтами пока тоже не до конца разобрался. Проблема в том, что десктриптор написать удавалось свой, но послать информацию в эндпоинт не получалось, да и устройство говорит о том, что не сконфигурировалось, хотя компьютером определялось. Поэтому я брал какой-то пример, похожий на то, что мне нужно, допустим под USB Gamepad брал CompatibilityHID, а под VirtualComPort брал SimulateCDC. Эти примеры уже переделывал под себя. т.е. там эндпоинты уже какие были настроены - те и использовал. Все, что от меня требовалось - это десктриптор устройства поправить или написать свой. Примеры для CH32V203C8T6 брал тут www.wch.cn/downloads/CH32V20xEVT_ZIP.html Десктриптор устройства удобно смотреть под Windows в программе Thesycon USB Desctriptor Dumper v2.17.0 Мои видео по USB: ukposts.info/have/v-deo/l2JkaoqroIGklGg.htmlsi=vfrpcTGtKCDgGvNy ukposts.info/have/v-deo/oaCki5yPr4OY0HU.htmlsi=poW1-jsNiWRWuMqU По поводу CAN - работал. Работал на HAL и STM32F103C8T6. Есть у меня заказчик один хороший. Он занимается автомобилями. Вот он знает, как этот CAN устроен, но не особо может программировать, я же наоборот... и по итогу мы напару писали неплохие программы удаленно. Я писал - он там уже тестил это все. Как мне по этому всему написать урок - не знаю, т.к. все что я делал - это удаленно писал код. Т.е. я даже вживую этот CAN не щупал...Поэтому видео по нему пока не будет. lwIP не трогал...
@ShiloXyZ
@ShiloXyZ 8 місяців тому
Полезно. Если STMки совсем перекроют, будет на что перекатвваться. Надо почитать вашу статью будет.
@sledleo
@sledleo 8 місяців тому
WeAct Studio, там и китайские армы есть
@MaxiRPD
@MaxiRPD 4 години тому
А точно нужна частота 36МГц на дисплей, чтоб отображать там 2 параметра которые физически в атмосфере даже с частотой 0.01Гц измениться не cмогут?
@smart_electrics_il
@smart_electrics_il 8 місяців тому
Олег, подскажите, а у вас не было идеи, сделать видео о шифровании ? У ST есть своя библиотека шифрования.
@Solderingironspb
@Solderingironspb 8 місяців тому
пока не думал об этом)
@alexb6036
@alexb6036 3 місяці тому
Большое спасибо за обзор! Странный продукт сделали свою IDE, вопрос только зачем? Есть тот же VS code + консоль. Все настройки можно прописать в текстовом файле и этог достаточно. При этом на качественную документацию ресурсы не выделили, сайт тоже так себе по удобству. Но конечно цена подкупает. Пока с такой документацией и качеством библиотек для чего то серьезного использовать как то страшно. Думаю там errata будет тоже не маленькая, хотя в скорее всего в китайском стиле они просто будут игнорировать ошибки hardware втихаря их исправляя в следующей версии.
@vovanstarasov8212
@vovanstarasov8212 3 місяці тому
Ну какую они свою иде сделали? Взяли эклипс, установили нужные плагины, дописали чуть своих, подготовили под это дело примеры проектов и т.п. По сути, как и стм. Только беднее. Причём тут вообще вскод, не понятно. Сто лет в этой нише так принято. У gd примерно так же. И это разумно.
@maxsh8297
@maxsh8297 6 місяців тому
атрибут "__attribute__((interrupt("WCH-Interrupt-fast")))" говорит что надо использовать аппратный стек, а не для VTF векторов
@ebjikkolu4757
@ebjikkolu4757 8 місяців тому
Хех. Я так Nuvoton ковыряю , прям один в один
@sledleo
@sledleo 8 місяців тому
DMA в RISC-V не подвезли?
@Solderingironspb
@Solderingironspb 8 місяців тому
Есть
@qvan2210
@qvan2210 7 місяців тому
Вот совсем не понимаю подхода wch к корпусам tssop20... У 003f4p6 одна распиновка, копирующая stm8s, у 203f6p6 уже другая копирующая stm32f0, у 203f8p6 третий вид и уже без аналогов, у 305fbp6 еще страннее... Никакой совместимости.
@Algol1WithJazz
@Algol1WithJazz 8 місяців тому
GD32 есть, более близкий к оригиналу
@Solderingironspb
@Solderingironspb 8 місяців тому
какому оригиналу?)
@Algol1WithJazz
@Algol1WithJazz 8 місяців тому
@@Solderingironspb контроллеры от Гиги гораздо ближе к stm. Порой полные аналоги. Аппаратно.
@Solderingironspb
@Solderingironspb 8 місяців тому
@@Algol1WithJazz Ну так можно и CH32F серии взять, там тоже все очень близко)
@vovanstarasov8212
@vovanstarasov8212 3 місяці тому
Тут же вообще о v203. Вы хоть понимаете, о чём пишите? facepalm
@Algol1WithJazz
@Algol1WithJazz 3 місяці тому
@@vovanstarasov8212и что?
@zsony2215
@zsony2215 7 місяців тому
А почему вы использовали этот глючный софт? Visual studio отказывается работать с этим кетайцем?
@Solderingironspb
@Solderingironspb 7 місяців тому
Не смог разобраться, как их завести на Visual Studio. У меня тут был один комментатор, который вроде как их заводил их в visual studio, но кроме слов мы ни к чему не пришли) пишет комменты, тут же удаляет их)
@vovanstarasov8212
@vovanstarasov8212 3 місяці тому
А они все, вскодчики, такие. С красными глазами прибегают, почему, почему, почему. А как реально нужно - не знают. Если бы вникли, глупости не писали бы.
@cybercube7915
@cybercube7915 2 місяці тому
Что там с этим wch случилось , санкции что ли ввели против России ?
@Solderingironspb
@Solderingironspb 2 місяці тому
уже где-то прочли по этому поводу?) Я еще несколько недель назад заметил, что все лоты с алиэкспресс, что я брал с официального магазина просто испарились. Сначала подумал, что мало ли все чипы закончились, а потом еще и новый год у них там...Но ничего не меняется. Подумал, может это специальная акция была, чтоб всех подсадить на их продукт, что так дешево было и в большом количестве. Написал продавцу, а мне выдали, что какие-то наши бизнесмены определили эти чипы, как риск соответствия (Что блин?!) ну и поэтому просто российский алиэкспресс блочит эти ссылки...Предполагаю, что все у нас продаваться будет, только наши перекупы теперь бабки на этом зарабатывать будут. Вот и все... Все плюсы, а в основном это ценник, этих мк уйдут.
@cybercube7915
@cybercube7915 2 місяці тому
@@Solderingironspb Да , увидел "новость" на одном канале в телеге( Ваши скриншоты ) , решил уточнить в первоисточнике так сказать.Как я понимаю цены на эти МК ,например в том же ЧиД вырастут в эное количество раз ?
@Solderingironspb
@Solderingironspb 2 місяці тому
@@cybercube7915 да фиг их знает) думаю да. Но вот прям дешево, как раньше точно не будет
@XpIOHdeJIb3000
@XpIOHdeJIb3000 6 місяців тому
это каким идиотом надо быть, чтобы set bit делать через функцию.
@Solderingironspb
@Solderingironspb 6 місяців тому
Это каким идиотом надо быть, чтоб не отличить макрос от функции)
@user-en9sm7ed9g
@user-en9sm7ed9g 8 місяців тому
20K оперативки это только для тупейших приложений
@Solderingironspb
@Solderingironspb 8 місяців тому
Ну…либо для умелых программистов)
@sledleo
@sledleo 8 місяців тому
Вы Линукс будете запускать как на Малинке?
@Solderingironspb
@Solderingironspb 8 місяців тому
На чем? Где? Зачем?)
@dmitriyf1
@dmitriyf1 7 місяців тому
С чего вдруг? Вполне себе прилично озу. Для многих контроллеров и 2к ок
@Svetliy_777
@Svetliy_777 7 місяців тому
@@dmitriyf1 Вот вот, а я как извращенец на AVR ATMega168 с 1Кб ОЗУ сигнализацию с обратной связью слепил - в брелке OLED и LoRa))) Надо было STM32 всунуть!
Изучаю STM32!
20:26
Лёша Кластер
Переглядів 186 тис.
GADGETS VS HACKS || Random Useful Tools For your child #hacks #gadgets
00:35
CH32V003 SDI Print
13:34
Alex Morozov
Переглядів 2,2 тис.
EEPROM AT24Cxx. Подключаем к STM32. CRC32.
27:09
Олег Волков
Переглядів 7 тис.
"Arduino" для CH32V003
24:27
Alex Morozov
Переглядів 8 тис.
Как должен стоять ПК?
1:00
CompShop Shorts
Переглядів 655 тис.
Лучший телефон на андроиде?
0:25
Опросный
Переглядів 125 тис.
Infrared Soldering Iron from Cigarette Lighter
0:58
ALABAYCHIC
Переглядів 1,8 млн