Хостинг портала RFpro.ru: Московский хостер Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64 РАССЫЛКИ ПОРТАЛА RFPRO.RU Лучшие эксперты данной рассылки Номер выпуска: | 1444 | Дата выхода: | 12.05.2011, 02:30 | Администратор рассылки: | Лысков Игорь Витальевич (Старший модератор) | Подписчиков / экспертов: | 215 / 64 | Вопросов / ответов: | 1 / 1 | Вопрос № 183085: Здравствуйте, уважаемые эксперты! Требуется написать программу для МП КР580: "Принять код с клавиш 8..F. Если код соответствует нечетному числу, то вывести на дисплей слово НЕЧЕТ, иначе вывести 0 на крайний правый индикатор." Знаю... Вопрос № 183085: Здравствуйте, уважаемые эксперты! Требуется написать программу для МП КР580: "Принять код с клавиш 8..F. Если код соответствует нечетному числу, то вывести на дисплей слово НЕЧЕТ, иначе вывести 0 на крайний правый индикатор." Знаю, что для активизации клавиш 0..7 используются следущие команды: 3Е Е0 MVI A,E0 D3 02 OUT 02 Не понимаю, как активировать ввод с клавиш 8..F (что-то другое будет вместо E0 ?). C выводом на дисплей проблем нет, там использую команды MVI и STA, руководствуясь тем, что в ячейке 83F8 содержится код для крайней левой позиции дисплея, а в ячейке 83FF - для крайней правой. (Единственное, не знаю, как принято букву Т обозначать). Условие проверки кода на нечетное число выполняю с помощью JPE. Отправлен: 07.05.2011, 02:07 Вопрос задал: Alex12 (Посетитель) Всего ответов: 1 Страница вопроса » Отвечает Лысков Игорь Витальевич (Старший модератор) : Здравствуйте, Alex12! Вот Вам программа. Комментарии смотрите в коде.
Код: mvi a,0d0h ;Выдача сигнала разрешения работы дисплея ; и включения битом 5 клавиш 8...f out 2 cont in 0 ;читам код cpi 0ffh ;если ff, то ничего не нажато jz cont ;ждем новый код
;ищем бит 0 mvi b,8 ;база кодов линейки (8-f) shift rrc ;сдвинем на 1 бит, мл уходит в С jnc analize ;0 - нашли inr b ;нет увеличиваем код клавиши jmp shift ;сдвигаем дальше
;проанализируем на четность analize lxi h,83f8h ;засылка в пару HL адреса старшего индикатора mov a,b ;код клавиши rrc ;четность определяется младшим битом jc nechet ;1 - число н ечетное
;0 - четное mvi a,0 ;погасим 7 первых mov m,a inx h mov m,a inx h mov m,a inx h mov m,a inx h mov m,a inx h mov m,a inx h mov m,a inx h mov a,00111111b ;0 в последний mov m,a jmp cont ;на сканирование клавиатуры
;нечет nechet mvi a,0 ;погасим 3 первых mov m,a inx h mov m,a inx h mov m,a inx h mov a,01110110b ;H mov m,a inx h mov a,01111100b ;Е mov m,a inx h mov a,01100110b ;Ч mov m,a inx h mov a,01111100b ;Е mov m,a inx h mov a,01111000b ;t mov m,a jmp cont ;на сканирование клавиатуры
end
----- Люби своего ближнего, как самого себя Ответ отправил: Лысков Игорь Витальевич (Старший модератор) Ответ отправлен: 09.05.2011, 12:06 Номер ответа: 267054 Украина, Кировоград Тел.: +380957525051 ICQ # 234137952 Mail.ru-агент: igorlyskov@mail.ru
Оценка ответа: 5 Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"? | Отправить SMS #thank 267054 на номер 1151 (Россия) | Еще номера » | Оценить выпуск » Нам очень важно Ваше мнение об этом выпуске рассылки! Скажите "спасибо" эксперту, который помог Вам! Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА на короткий номер 1151 (Россия) Номер ответа и конкретный текст СМС указан внизу каждого ответа. Полный список номеров » * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов) ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются. *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании. |
Комментариев нет:
Отправить комментарий