Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > Помогите разобраться с маленьким кодиком |
Автор: Pro_BD 8.6.2004, 10:02 | ||
Привет всем, в данный момент я учусь писать программы для микроконтроллеров. Пока что я ушел не слишком далеко от приметивных познаний но я в процессе так сказать. Проблема заключаеться вот в чем. Есть устройство каторое при нажатии на кнопку зажигает свето - деод. С такой переодичностью: нажали 1 раз свето деод включился и мигает, нажали (быстро) (он тоже должен включиться) 2 раза деод мигает с более длинной переодичностью относительно первого нажатия, нажали и подержали кнопку 4 сек. все деод выключаеться. Далее, проблема: Подскажите как выразить вот эти вот нажатия в моем коде ? тоесть если при нажатие на кнопку мы проводим опрос порта к которому подключена КН, и от туда падают b'11111111' то как делать их проверку и тд и тп. Код прилогаеться ЗЫ. Плз подскажите если кому не лень.
З.Ы. после метки Smile у меня идет (или должен идти ) опрос порта, вот там на мой взгляд я что то напут, подкаректируйте меня. |
Автор: Sardar 8.6.2004, 18:26 | ||||||||||||
У тебя стек не резиновый, ты возвращаешся из Smile прыжком оставляя в стеке адрес возврата. Прыгай по адресу.
Нет, смысла от этого нет, разве извращенным путем C и DC биты в статусе изменять.
Напутал с инструкцией, BSF STATUS,RP
Вместо битов ставить, лучше бы NOP'ом "ничего не делал"
Пауза очень не красивая, можно и таймер использовать.
Сейчас ты с порта A считываешь число. Для этого нужна еще и внешняя логика. Используй прерывания для отлова нажатия кнопки. |
Автор: Darked 8.6.2004, 21:19 |
Давно на асме не писал, аж в глазах зарябило ![]() А код сейчас почитаю... ![]() |
Автор: Pro_BD 9.6.2004, 07:08 | ||
2 Sardar
P.S. Таймером и перехватом прерываний пока что пользоваться не умею писал так, что знал ЗЫ. Так код лучше ??? |
Автор: Pro_BD 9.6.2004, 07:19 | ||
Гм ![]() Народ подскажите книгу или ссылочку, на такую тему как у меня. Типа таймеры, прерывания .... |