Motorola S08

редактировать

9S08 ( 68HCS08 или S08 для краткости) представляет собой 8-разрядный микроконтроллер семейства (мкКл), первоначально производится компанией Motorola, позже Freescale Semiconductor, и в настоящее время от NXP, сошедший с Motorola 6800 микропроцессора. Это микроконтроллер CISC. Немного расширенный вариант 68HC08, он имеет совместимость снизу вверх со стареющими микроконтроллерами 68HC05 и встречается практически во всех типах встроенных систем. Более крупные члены предлагают до 128 КиБ флэш-памяти и 8 КБ ОЗУ через простой MMU, который позволяет переключать банки 16 КиБ адресного пространства и пару регистров адрес / данные, которая позволяет получать данные с любого адреса. Используемая схема подкачки теоретически позволяет использовать флэш-память до 4 МБ.

Варианты с MMU предлагают две дополнительные инструкции ЦП, CALL и RTC, которые используются вместо JSR и RTS соответственно при работе с подпрограммами, размещенными в выгружаемой памяти, что позволяет выполнять прямые вызовы подпрограмм от страницы к странице. За одну атомарную операцию CALL сохраняет, а RTC восстанавливает не только ПК, но и один дополнительный байт адреса, байт PPAGE (страницы программы). Из-за этого дополнительного байта, а также для сохранения баланса стека подпрограмма, заканчивающаяся на RTC, всегда должна вызываться с помощью CALL, даже если она находится на той же странице памяти.

Внутренне набор команд 9S08 обратно совместим с 6805 с добавлением режимов адресации с индексированными стеком. (Инструкции, использующие регистр SP, имеют коды операций с префиксом 0x9E). Он имеет один восьмиразрядный аккумулятор A, один шестнадцатиразрядный индексный регистр HX (нижняя половина которого, X, используется изолированно инструкциями, совместимыми с 6805), регистр кода условия, 16-битный указатель стека и счетчик команд. Для совместимости с 6805, у которого нет регистра H, старший байт регистра HX, H, очищается во время сброса, и H является единственным регистром, который не складывается автоматически при входе в любую ISR (процедуру обработки прерывания ). В отличие от 6805, стек можно разместить в любом месте памяти с помощью соответствующих инструкций.

Стандартный метод программирования или отладки семейства 9S08 - через стандартный 6-контактный интерфейс BDM (только один контакт используется для связи с микроконтроллером).

Для разных участников и / или пакетов доступно большое количество разнообразных периферийных устройств. SCI, SPI, 8/10/12-битный аналого-цифровой преобразователь, (C) PWM, входные захваты и выходные сравнения являются общими для большинства участников, но внешняя шина недоступна. Некоторые участники поставляются со встроенным контроллером CAN.

Поддержка компилятора

S08 частично поддерживается (например, без поддержки MMU) бесплатным компилятором C SDCC и полностью CodeWarrior.

Рекомендации
внешняя ссылка
Последняя правка сделана 2023-03-31 11:45:33
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте