Сообщение от akimych
|
Можно управлять boot0 с того же ком-порта.
|
На сколько мне известно, низкоуровневые операции ввода-вывода в порты являются
привилегированными, аж на уровне "железа". Т.е. выполняются в кольце защиты "0".
В ОС нет функций API для доступа к низкоуровневым операциям с
привилегиями обычного пользователя, т.е. с самыми низкими привилегиями.
Этим-же "грешен" вроде-бы хороший ST-Link.
Ибо ST-Link оперирует довольно низкоуровневыми командами SCSI интерфейса.
Работать можно, но с уровня "администратора".
RS-232 хорош тем, что оперирует с одиночными символами. И поддерживается API.
А символы могут быть как командами, так и данными. Остается лишь
по месту "железкой" декодировать.
[add]
Посмотрел структуру DCB.
Действительно поле fDtrControl можно установить в DTR_CONTROL_ENABLE на сеанс связи.
Это можно использовать для подачи высокого уровня на boot0,
а проинвертированный уровень через конденсатор подать на линию сброса.
[/add]