Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Складання та опис схеми електричної структурної розроблювального мікроконтролера

Реферат Складання та опис схеми електричної структурної розроблювального мікроконтролера





який повинен реалізувати операцію віднімання двох чисел на базі мікроконтролера PIC16F8х. Одне число знаходиться в регістрі загального призначення, а інше в акумуляторі. Якщо результат дорівнює нулю то нарости вміст на одиницю, а якщо не дорівнює нулю то записати його в акумулятор.


2. Спеціальна частина


2.1 Вибір і опис способу адресації


У мікроконтролера існує три види адресації регістрів ОЗУ.

Безпосередня адресація - Байт даних (операнд команди) з машинної команди завантажується в регістр акумулятор.

Пряма адресація - Адреса регістра ОЗУ, який зберігає дані для виконання операції, вказаний в машинній команді, а його два старші біта вказані в регістрі STATUS АЛП.

Об'єднання 7міразрядного адреси з машинного команди і двох старших біт формує 9тіразрядний адресу.

Непряма адресація - Адреса регістра ОЗУ, який зберігає дані для виконання операції, заноситься в спеціалізований регістр адреси, а його один старший біт в регістр STATUS АЛП. Об'єднання 8міразрядного числа і старшого біта формує 9тіразрядний адресу. Потім з даними виконується необхідна операція через спеціалізований регістр даних.

У відповідності з технічним завданням для реалізації поставленої задачі обраний непрямий спосіб адресації даних.


. 2 Розробка програми відповідно до завдання


list p=16F84A; Тип використовуваного мікроконтролера.

; Підключається файл з описом основних регістрів мікроконтролера.

include p16f84a.inc raquo ;;

; Налаштування слова конфігурації мікроконтролера.

2007__config_CP_OFF ?? amp; _WDT_OFF amp; _PWRTE_ON amp; _RC_OSC, 11 1111 1111 00110Ch; 0000 1100 Осередок РОН для першого числа.

tempequ0Dh; 0000 1101 Осередок РОН для тимчасового збереження.

org0000h; Вектор скидання.

gotoinit; 10 1000 0000 0101 Перехід на цикл ініціалізації.

org0005h; Вектор початку ініціалізації.

init; Цикл ініціалізації.

bcfstatus, irp; 01 0011 1000 0011 Скидання біта непрямої адресації.

clrfporta; 00 0001 1000 0101 Очищення вхідний засувки PORT А.

clrfportb; 00 0001 1000 0110 Очищення вхідний засувки PORT В.

bsfstatus, rp0; 01 0110 1000 0011 Перехід до старшого банку регістрів.

movlwb 11111111; 11 0000 1111 1111 Налаштування стану портів.

Amovwftrisa; 00 0000 1000 0101 Записати його в регістр управління TRIS А.

Bmovwftrisb; 00 0000 1000 0110 Записати його в регістр управління TRIS В.

Cmovlwb 10000000; 11 0000 1000 0000 Налаштування TMR0 і PullUp - резисторів.

Dmovwfoption_reg; 00 0000 1000 0001 Записати його в регістр управління TMR0.

Ebcfstatus, rp0; 01 0010 1000 0011 Перехід до молодшого банку регістрів.

Fmovlw3Ch; 11 0000 0011 1100 Задати зменшуване в акумуляторі.

movwfone; 00 0000 1010 1100 Занести його в РОН.

movlw2Ch; 11 0000 0010 1100 Задати від'ємник в акумуляторі.

movwftemp; 00 0000 1000 1101 Зберегти від'ємник в тимчасовій комірці РОН.

movlw0Ch; 11 0000 0000 1100 Задати адреса для непрямої адресації.

movwffsr; 00 0000 1000 0100 Записати цю адресу в регістр адреси.

movftemp, w; 00 1000 0000 1101 Відновити від'ємник з тимчасової осередки.

subwfindf, f; 00 0010 1000 0000 Провести віднімання із збереженням результату.

btfssstatus, z; 01 1101 0000 0011 Якщо результат не нуль,

gotonext; 10 1000 0001 1001 то перейти на фрагмент next.

incfindf, f; 00 1010 1000 0000 Інакше нарости результат на одиницю.

Agotoquit; 10 1000 0001 1100 І перейти на завершення програми.

next; Фрагмент, якщо результат не нуль.

Bmovfindf, w; 00 1000 0000 0000 Занести результат в акумулятор.

quit; Частковий завершення програми.

Csleep; 00 0000 0110 0011 Зупинка ЦПУ, переводячи його в сплячий режим.

end; Вказівка ??на кінець програми.


Для реалізації поставленого завдання в схемі застосовані сім команд:

) MOVLW переслати W в f.

Код: 11 0...


Назад | сторінка 2 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка технологічного процесу виготовлення виливки Шків 525-326-0000-302
  • Реферат на тему: Парогенератор ПГВ-1000
  • Реферат на тему: Розробка конструкції дзиги продуктивністю 1000 кг / год
  • Реферат на тему: Розрахунок парогенератора ПГВ-1000
  • Реферат на тему: Реактор РБМК-1000