SeXsT, есть такое решение, но у него немного другой функционал - в данном случае получается N независимых каналов. А нужна именно зависимая логика (один канал включаешь, любой другой включённый должен выключиться - вот для этого и нужны диоды).
2 Coveenantor:
"1. Изучить язык программирования. Например Си.
2. Изучить среду программирования. Code Vision, Keil или IAR.
3. Изучить даташит на микроконтроллер - организация памяти, регистры, пины и т.д.
4. Написать программу реализующую чтение кнопок через входные пины, обработку логики и управление через выходные пины.
5. Запрограммить микроконтроллер, отладить и проверить."
Я не это имел в виду. Это не FAQ, а попытка "научить жить". FAQ - это в данном случае список действий при выполнении которых я за 15..20 мин решу поставленную задачу. Тобишь, приведи готовую схему (а не отмазку - см. даташит на любой PIC и т.п.) и файл с программой. Прошли те времена, когда было модно ткнуть носом в горстку книг и предложить изобрести велосипед. Нынче очень динамичные времена, информации такое кол-во, что изучить всё просто невозможно! Да и не нужно. Для того чтобы раз в жизни сделать переключалку для примочки изучать программирование микроконтроллеров, Си, Ассемблер? Бред. Для этого сейчас и существуют такие форумы как этот, чтобы народ делился готовыми решениями и уже из них как из кирпичиков собирать сложные девайсы.