Abstract Microcontrollers Z86 firm ZILOG - Банка от резюмета, есета, доклади, курсови работи и

- ниският байт на компютъра се зарежда в стека;

- старшият байт на компютъра се зарежда в стека;

— зарежда флаговия регистър FLAGS в стека;

- чете се старшият байт на вектора;

- прочита се младият байт на вектора;

— векторът се зарежда в компютъра.

Тази последователност отнема 24 TpC тактови цикъла. Най-лошото възможно време за реакция на прекъсване може да се изчисли чрез добавяне на 2TpC към това време за синхронизиране на външна заявка за прекъсване и времето за изпълнение на най-дългата инструкция в прекъснатата програма.

1.3. Командна система на микроконтролери Z8

- индиректен регистър ( Indirect Register );

Dst/src

начин

Име

Операнд

Обхват

Работен регистър (RR)

n=0. 15

Регистриран или РР

n=0. 15

Регистрирайте двойка или PP двойка (четна обосновка)

р=0. 14

Косвени PP

n=0. 15

Индиректен регистър или индиректен RR

n=0. 15

Индиректно чрез PP двойка

р=0. 14

Индиректно чрез регистрова двойка или PP двойка

р=0. 14

Индекс

Reg(Rn)

00H-FFH

Направо

адреси

0H-FFFFH

Относително

-128- +127

Незабавно

00H-FFH

1.3.2. Флагове на процесора

Флаговият регистър FLAGS (FCH) съдържа информация за текущото състояние на процесора. Флаговете и тяхното местоположение в регистъра са показани на Фигура 1.47. Състоянието на регистъра на флага след нулиране е недефинирано.

firm

Ориз. 1.47. Флагов регистър ФЛАГОВЕ

Флаговият регистър FLAGS съдържа 6 статусни флага, информацията в които се задава в резултат на работата на процесора. Четири флага (C, V, Z, S) се използват от командитеусловен скок. Два флага (H и D) се използват от командата за десетична корекция. Останалите два бита могат да се използват като потребителски флагове (F1 и F2). Целта на всеки от основните флагове на MK Z8 е разгледана подробно по-долу.

1.3.2.1. Флаг за носене C (флаг за носене)

Флагът за пренасяне е зададен на 1, ако резултатът от аритметична операция генерира „пренасяне от“ или „заемане към“ висок 7-ми бит от резултата. В противен случай флагът C се изчиства до 0.

По време на изпълнението на инструкции за циклично или аритметично изместване, флагът за пренасяне C съдържа последния бит напреднал от регистъра, посочен в инструкцията.

Инструкциите могат да задават, изчистват или обръщат (завършват) флага за пренасяне.

1.3.2.2. Нулев флаг Z

Ако резултатът от аритметична или логическа операция е нула, тогава флагът Z ​​се задава на 1, в противен случай флагът Z ​​се изчиства на 0.

Ако резултатът от командата за проверка на бита в регистъра е 00H,0, тогава флагът за нула се задава на 1, в противен случай се изчиства на 0.

Ако резултатът от изпълнението на инструкция за циклично или аритметично преместване е 00H, флагът Z ​​се задава на 1, в противен случай се нулира на 0.

1.3.2.3. Знак флаг S (знак флаг)

Знаковият флаг съхранява стойността на най-значимия бит от резултата от текущата аритметична, логическа, циклична или аритметична операция за изместване.

За производството на аритметични операции върху числа със знак в MK се използва представянето на информация в допълнителен код. В този случай положително число се идентифицира в най-значимата цифра и съответно стойността на флага на знака също е равна на 0. Отрицателно число се идентифицира като 1 в най-значимата цифра и съответно флагът S също ще бъде равен на 1.

1.3.2.4. Флаг за преливане V (Флаг за преливане)

За аритметични, циклични и аритметични операции със знак, флагът за препълване V е настроен на 1, ако резултатът е по-голям от максималното възможно положително число (+127) или по-малко от минималното възможно отрицателно число (-128), представено от 8-битовия допълнителен код на две. Флагът V е зададен на 0, ако няма препълване. В резултат на побитови логически операции, флагът V винаги се нулира на 0.

1.3.2.5. Флаг за десетична настройка D (Флаг за десетична настройка)

Флагът за десетична корекция D се използва за BCD (двоично кодирана десетична) аритметика. Тъй като алгоритъмът за десетична корекция е различен за добавяне и изваждане, този флаг съхранява информация за последната изпълнена команда за последващата DA команда за десетична корекция. След операцията за изваждане флагът D се задава на 1, а след операцията за събиране се изчиства на 0.

1.3.2.6. H (флаг за носене наполовина)

Флагът за половин пренасяне H е зададен на 1, когато добавянето на числа генерира пренасяне от 3-тия бит или изваждането генерира заемане към 3-тия бит. Флагът H се използва от командата за десетична корекция на DA.

Стойностите на всички флагове се променят от инструкцията IRET, когато състоянието на регистъра на флага се възстанови от стека. Инструкциите WDH и WDT задават флаговете Z, S и V в недефинирано състояние. Командата SWAP задава флагове C и V на неопределени.

1.3.3. Набор от команди

Командите на микроконтролера Z8 могат да бъдат функционално разделени на осем групи:

— команди за управление на програмата;

— команди за манипулиране на битове;

- команди за прехвърляне на блокове;

- команди за управление на процесора.

1.3.3.1. Описание на систематакоманди

В таблица 1.8 е дадено кратко описание на командната система на микроконтролера, като за всяка команда е дадено мнемонично обозначение, възприето на асемблерния език, посочени са съставът на операндите и значението на командата на английски (за да се разбере произхода на мнемониката като съкращение) и на български език. Съкращението “cc” в операндната колона на командите за управление на програмата означава кода на условието ( условие ), а съкращението “r” означава всеки регистър от работната група ( регистър ).

Таблица 1.8. Кратко описание на командната система на микроконтролера Z8

Мнемоника

операнди

Име на командата

английски език

български

ЗАРЕЖДАНЕ НА КОМАНДИ

Зареждане на външни данни

Изтегляне на външни данни

изскачане от стека

Заредете върху стека

АРИТМЕТИЧНИ КОМАНДИ

dst, src

Извадете с Carry

Извадете

Сгъване с носене

Извадете със заем

Извадете

ЛОГИЧЕСКИ КОМАНДИ

dst, src

Логично ИЗКЛЮЧВАЩО ИЛИ

XOR

КОМАНДИ ЗА УПРАВЛЕНИЕ НА ПРОГРАМАТА

Намаляване и скок

връщане

Намаляване и преход,

Връщане от прекъсване

Връщане от подпрограма

КОМАНДИ ЗА МАНИПУЛИРАНЕ НА БИТОВЕ

dst, src

Тест под маска

Малко допълнение

Проверете с маска

Допълнителни битове

БЛОКИРАНЕ НА КОМАНДИ ЗА ПРЕХВЪРЛЯНЕ

Зареждане на външни данни

Автоматично увеличаване

Изтегляне на външни данни

с автоматично нарастване

КОМАНДИ ЗА ИЗМЕНЯНЕ

Shift Right Аритметика

Разменете хапките

Размяна на хапки

УПРАВЛИТЕЛНИ КОМАНДИПРОЦЕСОР

Допълнителен флаг за пренасяне Деактивиране на прекъсвания

Нулирайте флага за пренасяне

WDT Активиране по време

WDT Активиране или Обновяване

Поставете флага за носене

Превключване в режим HALT

Нулирайте флага за пренасяне

Задайте флаг за носене

Превключване в режим STOP

таймер в режим HALT

Резолюция или повторно

таймер за наблюдение

1.3.3.2. Условия за клон на програмата

Инструкциите за прескачане JP и JR осигуряват разклоняване на програмата при различни условия. Като условия се използват състоянията на флаговете C, Z, S и V, както и техните логически функции. Набор от условия, разрешени за асемблерния език с указание за мнемонично обозначение (cc), стойност, съответното състояние на флаговете и шестнадесетичния код на условието е даден в таблица 1.9. Наборът от условия предвижда разклоняване по състояния на отделни флагове, както и по всички възможни връзки между цели числа със знак и между цели числа без знак.

Таблица 1.9. Мнемоника на състоянието (cc) и COP цифра (c)

Значение

Държава на флага

Винаги невярно

Винаги вярно

Има трансфер

Няма трансфер

Има нула

Без нула

Положително

отрицателен

препълване

Без преливане

Равно на

Не е равно

Повече или равно

(S x или V)=0

По-малко

(S x или V)=1

| Повече ▼

(Z или (Sxor V))=0

По-малко или равно

(Z или (Sxor V))=1

B/s по-голямо или равно

b/c по-малко

Използван повече

(C=0 и Z=0)=1

B/C по-малко или равно

(C или Z)=1

1.4. Проектиране на микроконтролери Z8

Микроконтролерите с широко приложение Z8 се предлагат в различни конструкциипроизводителност. Най-евтиният и удобен за повечето приложения е пакетът DIP (Dual In Line Package). Разположението на щифтовете MK за корпуси от този тип е показано на фиг. 1.48.

Повечето модели MK също имат пакет SOIC (Smal Outline Package), предназначен за повърхностен монтаж. Модел 40 също се предлага в квадратни 44-пинови PLCC (пластмасов носител за чипове) и QFP (четири плосък пакет) пакети. Моделите МК 30, 31 и 40 с възможност за многократно препрограмиране се произвеждат в пакети CerDIP Window Lid с кварцов прозорец за оптично изтриване.

Пълното обозначение на микросхемата, в допълнение към кода, посочен в таблица 1.1, допълнително съдържа две цифри, съответстващи на максималната честота в мегахерца, три букви и незадължителен буквено-цифров партиден код. Първата буква показва вида на опаковката (P - пластмаса DIP, S-SOIC и т.н.), втората - температурния диапазон ( S - стандарт: 0 -700C, E - разширен: -40 -1050C), третата характеризира защитната обвивка от околната среда ( C - стандартна пластмаса, E - стандартно запечатана).

Например, пълното обозначение на MK Z86E02 може да бъде както следва:

microcontrollers

Ориз. 1.48. Назначаване на щифтове на микроконтролери Z8

За повече информация, моля, вижте фирмените директории [4,5].

Въз основа на материалите, обсъдени в това ръководство, може да се заключи, че едночиповите микроконтролери са обещаваща елементна база за изграждане на устройства за предаване и обработка на данни. Те имат всички необходими атрибути за решаване на всички проблеми, които възникват при проектирането на такива устройства. На първо място, това са хардуерът на микроконтролерите, като се започне от вградената програмна памет иданни към вградени в чип периферни устройства, както и средства за осигуряване на надеждна работа при наличие на смущения. Разнообразие от дизайни и избор от опции за ниско напрежение и тежки условия позволяват на дизайнера винаги да избира правилния модел микроконтролер за тяхното конкретно приложение. Сложна система от команди, възможност за програмиране на хардуерната конфигурация, резервни режими и ниско електромагнитно излъчване позволяват с много ограничени количества вградена програмна памет да се решат най-сложните проблеми с приложенията. Zilog доставя своите продукти с подробна документация и инструменти за разработка.

Използването на микроконтролери за изграждане на устройства за предаване и обработка на информация позволява не само да се подобрят техните основни технически характеристики, като надеждност, скорост, точност, тегло и размери, консумация на енергия, но и да се получи съпътстващ дизайн, подобряването на функциите на който може да се извърши без промяна на проектната документация и преструктуриране на производствения цикъл.