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

Реферат Програмне забезпечення для 8-розрядного мікроконтролера фірми Microchip PIC16F877





ATUS, RP0STATUS, RP1MACRO; вибір друга банкаSTATUS, RP0STATUS, RP1MACRO; вибір третього банкаSTATUS, RP0STATUS, RP1

; ***************************************** *****************

; ЗНАХОДЖЕННЯ СЛУЧАЙНОГО ЗНАЧЕННЯ

; ***************************************** *****************

RND MACRO; виконати макрос RND

RLF RANDOM, W; зрушення змінної RANDOM на розряд вліво

RLF RANDOM, W; зрушення змінної RANDOM на розряд вліво

BTFSC RANDOM, 4; перевіримо біт 4 регістра RANDOM на 0 значення

XORLW 1; побітного іскл-або акумулятора і 1

BTFSC RANDOM, 5; перевіримо біт 5 регістра RANDOM на 0 значення

XORLW 1; побітного іскл-або акумулятора і 1

BTFSC RANDOM, 3; перевіримо біт 3 регістра RANDOM на 0 значення

XORLW 1; побітного іскл-або акумулятора і 1

MOVWF RANDOM; значення акумулятора в регістр RANDOM

ENDM; вийти з макросу

; ***************************************** *****************

; ЗАПОВНЕННЯ МАСИВУ А випадкові числа

; ***************************************** *****************

START; початок програми

BANK0; вибір нульового банку

MOVLW 0X1F; помістимо в акумулятор кількість повторів заповнення

MOVWF TEMP; 0X0F в регістр TEMP

MOVLW 0X21; помістимо в акумулятор адреса першого осередку

MOVWF FSR; вкажемо адресу першої осередки в регістрі FSR

M1:; мітка M1

RND; виконаємо макрос RND

MOVF RANDOM; помістимо випадкове число в акумулятор

MOVWF INDF; помістимо це число в осередок з адресою з регістра FSR

INCF FSR; збільшимо значення адреси на 1

DECFSZ TEMP; віднімаємо 1 від регістра TEMP і перевіримо на

GOTO M1; якщо TEMP gt; 0 перейдемо на мітку M1

; ***************************************** *****************

; ПОШУК максимального значення

; ***************************************** *****************

MOVLW 0X21; покладемо в акумулятор адреса першого осередку

MOVWF FSR; запишемо його в FSR

MOVF INDF, W; прочитаємо значення з комірки за адресою FSR

MOVWF MAX; покладемо значення з комірки в змінну MAX

MOVLW 0X20; покладемо в акумулятор кількість перевіряються осередків

MOVWF TEMP; запишемо в змінну TEMP

M2; мітка M2

DECFSZ TEMP; віднімаємо 1 від регістра TEMP і перевіримо на 0

GOTO M4; перехід на мітку М4

GOTO M3; перехід на мітку М3

M4; мітка M2

INCF FSR; перенход на наступну комірку

MOVF INDF, W; покладемо значення INDF в акумулятор

SUBWF MAX, W; віднімемо від максимального значення

BTFSC STATUS, C; перевіримо що більше

GOTO M2; перехід на мітку М2

MOVF INDF, W; копіюємо поточну комірку непрямої адресації в акумулятор

MOVWF MAX; покладемо це значення в змінну MAX

GOTO M2; якщо TEMP gt; 0 перейдемо на мітку M2

M3; мітка M3

; ***************************************** *****************

; КІНЕЦЬ ПРОГРАМИ

; ***************************************** *****************

END


4.2 Налагодження програми


На малюнку 3 показано вікно процесу результату компілювання отриманої програми. Як видно синтаксис мови Assembler не порушений, отже, помилок компілятором не виявлено.

Отримані попередження (Warning [203]) говорять про некоректне розставленими табуляцій в програмному коді. Однак на якість виконання самої програми це ніяк не впливає.


Малюнок 3 - Результат компілювання написаної програми

На малюнку 4 представлено отримане програмне забезпечення в режимі налагодження:


Малюнок 4 - Заповнення осередків з 0Х21 по 0Х3F


На малюнку 4 мож...


Назад | сторінка 3 з 4 | Наступна сторінка





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

  • Реферат на тему: Створення програми для обчислення значення функції
  • Реферат на тему: Клемент Готвальд і його значення у зміні програми Компартії Чехословаччини ...
  • Реферат на тему: Розробка алгоритму програми на мові С + +, яка обчислює значення ємності і ...
  • Реферат на тему: Розрахунок максимального значення відновлювальної сили
  • Реферат на тему: Акумулятор: Історія винаходу та удосконалення