КАТЕГОРИИ: Архитектура-(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) |
Motorola MCHC908GP32
Обработка данных на микроконтроллере КУРСОВОГО ПРОЕКТА МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ
К задачам, решаемых микроконтроллерными системами, можно отнести: задачи ввода/вывода информации, задачи обработки и преобразовании информации, а так же задачи организации временных функций. Рассмотрим примеры программной реализации типовых алгоритмов обработки данных. Часто при выполнении арифметико-логических операций необходимо определить минимальный (максимальный) элемент массива. Суть алгоритма определения минимального элемента заключается в следующем. Из массива данных выбираются два числа, одно из которых помещается в аккумулятор А, другое в специально отведенную ячейку. Эти числа сравниваются, и меньшее число записывается в аккумулятор. Далее в специально отведенную ячейку, которую использовали ранее, записывается следующий элемент массива. Процедура повторяется. В конечном счете в аккумуляторе будет храниться минимальный элемент массива, который помещается в отдельную ячейку. На рис. 3.1 представлена блок-схема программы определения минимального элемента списка. Команда ORG устанавливает начальный адрес программы в памяти МК. При ассемблировании первая команда будет размещаться начиная с адреса $8000. После этого в ячейку памяти ОЗУ с адресом $50, которая выбрана в качестве счетчика циклов, загружается число 5 (число элементов массива). В индексный регистр H:X загружается начальный адрес первого элемента массива. В нашем случае – это $82. Далее в аккумулятор записывается число, адрес которого содержится в Н:Х. Содержимое Н:Х увеличивается на единицу, и число, адрес которой указан в ячейке Н:Х, записывается в специально отведенную ячейку $40. После этого содержимое индексного регистра Н:Х уменьшается на 2. Содержимое аккумулятора А сравнивается с числом, содержащимся в ячейке $40. Выполняемое действие будет иметь вид: (А) – ($40). По результату сравнения устанавливаются признаки. Содержимое А и ячейки памяти после операции не изменяются. Если после операции сравнения бит знака в регистре ССR установлен в 0, т. е. число положительное, или содержимое аккумулятора больше содержимого ячейки $40, то процессор переходит по метке m 2, где в аккумулятор записывается $40. Иначе же процессор переходит по метке m 3, где очищается ячейка $40, увеличивается содержимое индексного регистра H:X на единицу, уменьшается содержимое счетчика циклов на единицу.
Рис. 3.1. Блок-схема программы определения минимального элемента массива.
После этого проверяется счетчик циклов на «0». Если содержимое счетчика циклов не равно 0, то необходимо продолжить выполнение программы, перейдя по метке m 1 (программа опять от метки m 1 начнет заново выполняться). Если же содержимое счетчика циклов равно 0, то программа выполняется дальше, а именно: происходит запись содержимого аккумулятора в ячейку $51 –в ней и будет храниться минимальное число данного массива чисел. Процедура pr2 необходима для образования массива данных, DB – для определения байта данных. В поле операндов задаваемые данные записываются через запятую. С ячейки, имеющей адрес $82, резервируются 5 ячеек, в которые записываются соответствующие значения. Суть программы определения максимального элемента заключается в следующем. Из массива данных выбираются два числа, одно из которых помещается в аккумулятор А, другое – в специально отведенную ячейку. Эти числа сравниваются, и большее число записывается в аккумулятор. Далее в специально отведенную ячейку, которую использовали ранее, записывается следующий элемент массива. Процедура повторяется. В конечном счете в аккумуляторе будет храниться максимальный элемент массива, который помещается в отдельную ячейку.
Текст программы на языке ассемблера для микроконтроллера MC68НС908GP32:
Дата добавления: 2017-01-14; Просмотров: 237; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |