Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Архітектура мікроконтроллера




Збільшена структурна схема МК показана на рис.2, а модель для програміста - на рис.3.

 

Виходи сигналів керування

та синхронізації

 

 

МК містить резидентну пам'ять програм (РПП), резидентну пам'ять даних (РПД), пристрій керування та синхронізації, яке містить лічильник команд (РС) і регістр команд, арифметично-логічний блок, в склад якого входить акумулятор А, регіст-розширювач В та інші регістри. МК містить також блок таймерів/лічильників, блок послідовного інтерфейсу й переривань і регістр слова стану програми (PSW). Обмін даними виконується через порти Р0, Р1, Р2, Р3, а також універсальний асинхронний прийомопередатчик (УАПП).

 

 

 


Пам'ять програм і пам'ять даних у мікроЕОМ розділені. Максимальний адресний простір пам'яті програм складає 64Кбайт (рис.4). Пам'ять програм розділяється на резидентну (находиться всередині мікросхеми) і зовнішню, для реалізації якої потрібні додаткові мікросхеми пам'яті. РПП являє собою ПЗП, місткістю 4Кбайт (адреси від 0 до 0FFFh). РПП може бути відключена шляхом подачі рівня на вхід ЕМА. Зауважимо, що в МК 1816ВЕ31 і 1830ВЕ31 внутрішня пам'ять програм відсутня. Адреси 0, 3, 0Bh, 13h, 1Dh i 23h мають спеціальне призначення. З адреси 0 починає виконуватись програма по системному збросу. Інші із указаних комірок призначені для зберігання початкових команд програм обслуговування переривань від зовнішніх сигналів, від таймерів/лічильників та від послідовного порту.

 

 


При звертанні до зовнішньої пам'яті програм старший байт адреси передається через порт Р2. Видача молодшого байта адреси і передача байта даних виконується через порт Р0 у режимі внутрішнього мультиплексування.

Адресація операндів у пам'яті програм – безпосередня або косвенна базова індексна. В першому випадку з пам'яті програми вибирається константа, явно задана в команді. Наприклад, при виконанні конструкції MOV R2,#15 у регістр пересилається константа (0Fh). У другому випадку в якості індексного регістру використовується акумулятор, а в якості базового – регістр-покажчик даних DPTR або лічильник команд РС. Зчитування операндів виконується командами MOVC.

 

 


7F 7E 7D    
               
6F 6E 6D 6C 6B 6A    
               
5F 5E 5D 5C 5B 5A    
               
4F 4E 4D 4C 4B 4A    
               
3F 3E 3D 3C 3B 3A    
               
2F 2E 2D 2C 2B 2A    
               
1F 1E 1D 1C 1B 1A    
               
0F 0E 0D 0C 0B 0A    
               

 

Пам'ять даних як і пам'ять програм розподіляється на внутрішню (резидентну) і зовнішню(ЗПД). Резидентна пам'ять даних складається з двох областей – 128 байт ОЗП з адресами 0-7Fh і регістрів спеціальних функцій (адреси 80--0FFh). ОЗП містить 4 банка регістрів загального призначення (рис.5). Вибір банка 0-3 визначається значенням двох біт PSW (RS1, RS0). Команди програми можуть звертатись до регістрів будь-якого банка по іменам R7-R0, тобто з використанням прямої регістрової адресації. Це дозволяє зекономити пам'ять програм, так як команди, що працюють із регістрами коротші інших аналогічних команд.

Наступні 16 байт ОЗП утворюють область комірок, в яких можлива побітова адресація (рис. 6). До ячейок даної області зручно звертатись за допомогою спеціальних команд роботи з бітами, використовуючи при цьому пряму адресацію. До кожного біта на мові асемблера можна звертатись двома способами. Наприклад, встановити, визначивши молодший байт області (рис.6)

як Pr EQU 20h, встановити старший біт цього байта можна за допомогою команди SETB Pr.7. Аналогічний результат отримується якщо безпосередньо визначити потрібний біт:

BitZ EQU 7

SETB BitZ.

Доступ до всіх байтів ОЗП Можливий за допомогою косвенної регістрової або прямої адресації. В першому випадку в якості покажчиків використовуються регістри R0, R1 вибраного банка регістрів. Приклад

MOV @R1, 23h ілюструю обидва види адресації. Тут виконується пересилка вмісту комірки за адресою 23h в комірку, адреса, котрої записана в регістрі R1.

Область регістрів спеціальних функцій містить акумулятор АСС, регістр-розширювач акумулятора В, покажчик стека SP, слово стану програми PSW, DPTR, замки портів, регістри таймерів/лічильників, буфер прийомопередатчика і регістри керування. Ці регістри допускають лише пряму адресацію. Одинадцять байт цієї області допускають як байтову, так побітову адресацію. Адреси регістрів спеціальних функцій наведено на рис.3, причому регістри, адреси яких помічено знаком (*), допускають адресацію окремих бітів. На рис.3 наведено приклад адресації біт регістра TCON.

Зовнішня пам'ять даних реалізується за допомогою додаткових мікросхем пам'яті і може мати ємність до 64Кбайт з адресами 0 – FFFFh. Адресні простори внутрішньої й зовнішньої пам'яті даних не пересікаються, так як доступ до зовнішньої пам'яті виконується за допомогою спеціальних команд MOVX. Звертання до зовнішньої пам'яті виконується лише з використанням косвенної адресації по регістрам R0, R1 (команди MOVX A,@Ri i

MOVX @Ri,A) або по регістру-покажчику даних (команди MOVX A,@DPTR i MOVX @DPTR,A). В першому випадку буде формуватись 8-розрядна адреса, у другому – 16-розрядна. Видача адреси й передача байта даних виконується аналогічно зовнішній пам'яті програм через порти Р0 та Р2.

Акумулятор А є 8-розрядним регістром, який використовується в якості отримувача або джерела операнда. Крім того, акумулятор входить в область регістрів спеціальних функцій з прямою адресацією і позначається як АСС. Наприклад, встановити 3-й біт акумулятора можна командою SETB ACC.3.

Регістр В використовується при операціях множення та ділення. Для інших операцій може розглядатись як додатковий регістр.

Регістр стану програми PSW використовується для зберігання інформації про стан АЛП при виконанні програми. Список розрядів регістра наведено на рис.3. Біт переносу С установлюється апаратно, якщо в старшому розряді результату виникає перенос або зайом. Біт АС установлюється апаратно при появі аналогічної умови в біті 3 результату. Біт переповнення OV фіксує арифметичне переповнення при операціях над цілими числами зі знаком. Біт Р є доповненням умісту акумулятора по парності. Усі біти окрім Р доступні програмно по запису та зчитуванню (останній можна лише зчитувати).

Покажчик стека SP може адресувати будь-яку область РПД і використовується для зберігання адреси комірки стеку, до якої було останнє звернення. В висхідному положенні в SP завантажується код 7.

Формат регістра керування потужністю PCON визначається серією МК. Для серії 1816 регістр має лише один біт SMOD, керуючий швидкістю передачі послідовного порта. Якщо вказаний біт встановлено, то швидкість подвоюється.

Для серії 1830 регістр PCON додатково містить 4 біта (рис.4). Біти GF1, GF0 користувач може використовувати на власний розсуд. Установка біта IDL (PCON.0) призводить до переводу МК в режим холостого ходу, коли блокуються функціональні вузли арифметично-логічного блока й вузли, пов'язані з вибіркою команд, що зменшує енергоспоживання. При цьому зберігаються стани регістрів спеціальних функцій і РПД. Режим холостого ходу закінчується при активації будь-якого дозволеного переривання або при апаратному переході в початкове положення по входу RST.

При встановленні біта PD (PCON.1) МК переходить в режим мікроживлення. Задаючий генератор виключається, що призводить до закінчення роботи всіх вузлів МК. Зберігається лише вміст РПД. Виходом з такого режиму є апаратний перехід у початкове положення.




Поделиться с друзьями:


Дата добавления: 2015-04-29; Просмотров: 492; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.