Говорила мне мама: "Не используй NRST как GPIO!" А я не послушался.
CH32V006E8R6. На PC5 вход Reset. Оказывается. Видел, но знал, что перепрограммируется на вход/выход, никто не жаловался, вроде. Проблемы начались, когда попытался зашить первую плату с этим чипом, где используется PC5. Она просто не шилась, а чип определялся программатором один раз из 15, примерно. При этом, чип из этой же партии, на другой плате (PC5 не используется), шился нормально.
Стал искать разницу и вспомнил, что PC5 - это же NRST. Почитал RM. Оказывается, по-умолчанию включён. Ну, оно! У меня на выводе подтяжка к земле сильнее, чем встроенная к питанию в чипе для режима NRST.
Ну ОК, подключил резистор на плюс, чтобы поднять уровень до высокого. Чип стал определяться и программироваться нормально.
Вопрос: КАК ВЫКЛЮЧИТЬ RESET и сделать его GPIO?
Ответ: Запрограммировать USER OPTION BYTES.
Пока не получилось. Использовал библиотечные функции, по аналогии с проектом CH32V203, где писать получилось. Не работает. Опшн байтс не пишутся. Разбираюсь. Накопаю чего - отпишусь.