[uquote="Kalisnik",url="/forum/viewtopic.php?p=4088779#p4088779"]А сколько всего блоков?[/uquote]
Зависит от кристалла. В некоторых больше, в некоторых меньше. В некоторых даже одноименные блоки имеют разную сложность и структуру.
Получается все блоки и дешифратор расположены на одной шине данных?
Нет, шина данных это то, чем ядро связывается с памятью, периферией и прочим. Внутри ядра про шину данных говорить не очень-то корректно.
-Дешифратор отправляет в шину данных "опознавательный код" ("называет по имени") для того или иного блока. Блок переходит в режим приема данных.
Скорее, куча отдельных линий "включить этот блок", "включить тот блок". Аналогично линии CS (chip select) или OE (output enable) на обычных микросхемах.
-Пересылаются инструкции от дешифратора к блоку. Блок выполняет инструкции. Так?
Зачем блоку инструкция? Он ее и так знает, поскольку физически может быть выбран только если пришла нужная.
Я бы сказал ответы форумчан помогают. Картинка понемногу складывается.
А теперь представьте, что бы было если бы вы еще и к советам прислушались!
И начали изучать цифровую схемотехнику и ассемблер.
А вообще, если все очень-очень упростить, то работа с МК сводится к нескольким пунктам, как мне кажется:
Какая-то у вас странная классификация.
Если говорить об освоении МК "снизу вверх", то изучать надо в следующем порядке:
Код: Выделить всё
базовая электротехника (резисторы, транзисторы) -> цифровая схемотехника (вплоть до интегральных счетчиков наверное) -> ассемблер -> Си
Если изучать "сверху вниз" то порядок обратный.. Хотя базовую схемотехнику изучить придется не в конце, а при переходе к железу
А то, что перечислили вы... 1-й пункт это конечная цель, остальные пункты - средства.
Ну и специфика контроллеров - помимо программирования там еще и схемотехнику знать надо, иначе получится Ардуина или Куб.