Цитата(A. Fig Lee @ Jun 30 2014, 18:06)

Про "можно" - это теория или практика?
Посоветуйте как можно хотя бы когда они не спят..
Теория.
Вот ув. kovigor описал рецепт, например. Теоретически проблем не видно.
Да, порылся в каталогах. Есть например полудолларовая микросхема
BQ2405x с детекцией источника заряда: адаптер или USB порт.
Там процесс детекции описан так:
The detection method monitors the D+, D– communication lines looking for a short between the lines (Adaptor source connected) or pull down resistors on D+, D– (USB source connected) to determine what source is connected (no USB communication takes place).То есть как и написал
bloodden2005 он ищет КЗ между сигнальными линиями у адаптера и пулдаун резисторы и хоста.
Если считать это стандартом то после обнаружения внешнего питания можно сделать так:
1. Сначала проц пытается установить связь с хостом по алгоритму описанного
kovigor.
2. Если не удалось то сигнальные линии на проце переводятся в режим GPIO и нехитрыми способами ищутся КЗ между линиями и внешние пулдаун.