Вход на сайт Навигация по сайту Любить и уважать Бонус-счастливчики
|
Содержимое файла "4.doc" (без форматирования) Міністерство освіти і науки України Одеський національний політехнічний університет Інститут радіоелектроніки та телекомунікацій Кафедра радіотехнічних систем Група РТ-061 Бригада №6 Студент: Звіт з лабораторної роботи №4 Розробка та виконання програм з циклічною структурою з використанням внутрішньої пам’яті програм і зовнішньої пам’яті даних мікроконтролера Складений: Прийнятий: Одеса 2009 1. Мета роботи: -закріплення теоретичних знань по системі команд мікроконтролера МК51; -придбання навиків складання на асемблері програм, що реалізують алгоритми з циклічною структурою; -закріплення навиків налагодження програм за допомогою програмного емулятора INFO-8051. 2. Домашнє завдання. У домашнім завданні необхідно скласти схему алгоритму і текст програми на асемблері мікроконтролера МК51 у відповідності зі своїм варіантом. Номера варіантів (відповідні номеру бригади) приведені в таблиці. Скласти контрольні приклади. Контрольні приклади повинні передбачати перевірку програм по всіх гілках алгоритму. Визначити обсяг резидентної пам'яті програм для розміщення програми та максимальний і мінімальний час ії виконання. Занести в протокол умову задач, блок-схеми алгоритмів і початковий варіант програми. № вар. Формулювання задачі 6. В РПД з адреси 0100H, розміщений масив з 20 однобайтних цілих чисел зі знаком (старший розряд). Визначити скільки позитивних, негативних і нульових чисел у цьому масиві. Результати помістити в РПД по адресам 0200H,0201H,0202H відповідно. 3. Основні теоретичні відомості Рис.4.1 – Принципова схема підключення зовнішньої пам’яті програм Рис. 4.2 – Принципова схема підключення зовнішньої пам’яті даних 3. Початковий текст программи: mov R0,#001 mov DPTR, #0100H mov R1,#0000H mov R2,#0000H mov R3,#0000H m1: movx A,@DPTR jz zero jb ACC.7, minus jnb ACC.7, plus zero: inc R1 jmp М2 minus: inc R2 jmp М2 plus: inc R3 М2: inc DPTR djnz R0,M1 mov DPTR,#0200H mov A,R1 movx @DPTR,A mov DPTR,#0201H mov A,R2 movx @DPTR,A mov DPTR,#0202H mov A,R3 movx @DPTR,A Блок схема алгоритму: За початковим варіантом программа займає 32 байта, і максимальний час її виконання – близько 32 машинних цикла. Контрольний приклад для перевірки роботи (перед початком перевірки роботи ввести в пам’ять дану послідовність відповідно до завдання): 00 11 FF 00 11 FF 00 11 FF 00 11 FF 00 11 FF 00 11 FF 00 11 4. Початкові дані і результат виконання програми За початковим варіантом программа займає 32 байта, і максимальний час її виконання – близько 32 машинних цикла. Контрольний приклад для перевірки роботи (перед початком перевірки роботи ввести в пам’ять дану послідовність відповідно до завдання): 11 22 33 44 55 85 00 00 88 99 Початкові дані – дані контрольного прикладу: Результат виконання-за адресом R1=02, R2=03, R3=05. Продемонструємо виконання програми на рис. 4.3 Рис. 4.3 – Результат роботи програми 5. Висновок На данній лабораторій роботі я ознайомився з принципом побудови програм асемблера МК51 з циклічною структурою; у початковому варіанті програми допущена неточність. Було відлагождено программу з циклічною структурою і отримані результати. Програма займає 32 байт і виконується протягом 32 тактів. Початок Ввід даних =0 Записати число в А Інкремент лічильника 1 Вивід результата Інкремент лічильника 2 Останов i=0,20,1 >0 <0 Інкремент лічильника 2 |
Посетителей: 2, из них зарегестрированных: 0, гостей: 2 Зарегистрированные пользователи: Подробно | Страница сгенерирована за 0.0675 сек. |