Хостинг портала RFpro.ru: Московский хостер Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64 РАССЫЛКИ ПОРТАЛА RFPRO.RU Лучшие эксперты по данной тематике Номер выпуска: | 1499 | Дата выхода: | 22.12.2011, 15:00 | Администратор рассылки: | Лысков Игорь Витальевич (Старший модератор) | Подписчиков / экспертов: | 182 / 63 | Вопросов / ответов: | 1 / 1 | Консультация # 184824: Здравствуйте! Прошу помощи в следующем вопросе::Нужно написать программу для учебного лабораторного комплекса SDK-1.1. Необходимо написать программу, которая управляет процессами, с заданной периодичностью. Основной процесс моделируется включением и выключением линейки светодиодов по заданному алгоритму Управление производится цикл... Консультация # 184824: Здравствуйте! Прошу помощи в следующем вопросе::Нужно написать программу для учебного лабораторного комплекса SDK-1.1. Необходимо написать программу, которая управляет процессами, с заданной периодичностью. Основной процесс моделируется включением и выключением линейки светодиодов по заданному алгоритму Управление производится циклически от внутреннего таймера МК и асинхронно с помощью двух внешних сигналов. Для решения задачи необходимо задействовать три источника прерывания. Процессор 8051.Буду очень вам благодарен,если вы сумеете мне помочь. Дата отправки: 17.12.2011, 14:27 Вопрос задал: Дмитрий (Посетитель) Всего ответов: 1 Страница онлайн-консультации » Консультирует Лысков Игорь Витальевич (Старший модератор): Здравствуйте, Дмитрий! Вот Вам программа, решающая Вашу задача. Комментарии не писал, Вы их можете посмотреть в руководстве, там все расписано от и до... Отличия: 1) Точка входа 2) Yx = 135 для доступа к светодиодам 3) Используем страницу 1fh 4) На индикацию отправляется байт 10011011b 5) Чтобы timer2 срабатывал каждые 40 мсек, загружаем регистры числом 36864 = 921600/25 (25Гц ~ 40мс) 6) Чтобы изменения были каждые 2 сек, загружаем в регистр t2OF = R0 число 50 (50 * 40мс = 2сек) Все остальное целиком и полностью взято из руководства.
Код : #include "aduc812.h" Wr_byte equ R1 Tochka_Vhoda equ 44e0h t2OF equ R0 Reg1 equ 1 Write MACRO Wr_byte,reg_addr,page_num mov DPP,#page_num mov DPTR,#reg_addr mov a,Wr_byte movx @DPTR,a mov DPP,#0 ENDM CSEG at 0 jmp Tochka_Vhoda ORG 2003h jmp Ext0_int ORG 2013h jmp Ext1_int ORG 202bh jmp T2_int ORG Tochka_Vhoda main: call Init_Timer2 mov Wr_byte,#10011011b _8: jmp _8 Init_Timer2: mov t2OF,#100 ;50*40ms = 2 sec mov RCAP2H,#HIGH((not 36864)+1) ;36864 = 921600/25 (25Гц ~ 40мс) mov RCAP2L,#LOW((not 36864)+1) mov TH2,#HIGH((not 36864)+1) mov TL2,#LOW((not 36864)+1) setb ET2 setb TR2 setb ET1 setb IT1 SETb ET0 setb IT0 setb EA ret T2_int: clr TF2 djnz t2OF,vyhod mov t2OF,#100 Write Wr_byte,135,1fh xrl Reg1,#0ffh vyhod: reti Ext0_int: mov Wr_byte,#0aah reti Ext1_int: clr TR2 reti END
Оценить выпуск | Задать вопрос экспертам главная страница | стать участником | получить консультацию техническая поддержка | восстановить логин/пароль Дорогой читатель! Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно! МЫ РАБОТАЕМ ДЛЯ ВАС! |
Комментариев нет:
Отправить комментарий