Основные особенности архитектуры микроконтроллеров PIC.
· Раздельные память и шины для команд и для данных. Разрядность ПП и шины команд - 14, ПД, регистров, АЛУ и шины данных - 8.
· В арсенале всего 35 простых и компактных команд. Все команды выполняются за 1 машинный цикл, кроме команд ветвления, которые выполняются за 2 машинных цикла.
· Все регистры МК делятся на две группы: специальные регистры и регистры общего назначения. Обе группы составляют единое пространство - память данных, поэтому для управления функциями и настройками МК не требуются специальные команды.
· Ортогональная система команд позволяет выполнить любую операцию с любым регистром, используя любой метод адресации.
· В состав разных типов МК входят различные стандартные периферийные модули, выполняющие типичные для цифровых систем функции. Они освобождают ресурсы МК, упрощают программу и удешевляют изделие.
· Все выводы МК, кроме выводов питания и сброса, используются как порты общего назначения. Периферийные модули не занимают монопольно выводы МК. Все коммуникации осуществляются через альтернативные функции портов. Т.е. программа может подключать модуль к внешнему выводу МК только когда это необходимо. Если модуль не используется, то он и не использует никакие выводы МК.
· Несколько типов тактовых генераторов. Тактовая частота 0…20МГц.
· Диапазон напряжения питания не является архитектурной особенностью, и все-таки: 2…5,5В - для низковольтных вариантов МК (LC, LF) и 3,5(4,5)…5,5В - для остальных.
2.2. Дополнительные сведения можно получить в «Документация для PIC Simulator IDE»КОМАНДЫ ПЕРЕСЫЛКИ
Сразу обратите внимание на следующую особенность: большинство команд состоит из 5-ти букв, причем корень слова состоит из 3-х букв, а последние две буквы показывают, откуда и куда копируется (переписывается) число или с какими регистрами нужно произвести определяемое командой действие.
MOVLW K MOVWF F MOVFW FMOVLW K
Команда копирует байтовый литерал (константу) в рабочий регистрW.
Пример
команда MOVLW H’80’ инициализирует регистр W значением 10000000
MOVWF F
Команда копирует байт из рабочего регистра W в заданный регистрF.
Пример
команда MOVWF H’23’скопирует байт из регистра W в регистр 23Н.