Световая реклама (курсовая по ассемблеру), страница 2

                                                     Рисунок 2.

Далее переходим к ожиданию нажатия клавиши и защите от дребезга  (представлен на рисунке 3). Загружаем постоянную защиты от дребезга в регистр. На результат опроса клавиатуры накладываем маску 00011001, что соответствует пуску или установке одного из режимов. Если нажата клавиша 0, либо 3 ,либо 4, то уменьшаем постоянную защиты от дребезга на 1 и так далее до окончания данного блока. Код нажатой клавиши сохраняется в ячейке klav. Далее следует защита от дребезга при отпускании клавиши. Она аналогична описанной ранее защите от дребезга при нажатии.

Алгоритм, соответствующий началу программы.

           ASDF                    2.1                    G      

                                                                                                                OTPSK                2.9

                 EFJ                      2.2

                                                                                                                   QWE                2.10   

                                   2.3

   нет                                                                                                                                  2.11       

                                                                                                      да

    С                           да

                ZXC                    2.4

                                                                                                                                 нет    2.12

                                      2.5

                                                   нет                                                                                 

                                                                                                                                     2.13         

                                 да                                                                                                                 нет

                                             2.6                                                                                                     

                                                                                                                                  да 

                                            2.7

                                               2.8

Рисунок 3.

Следующим шаг программы является считывание кода нажатой клавиши . Далее в зависимости от номера нажатой клавиши переходим к соответствующей метке. Если была нажата клавиша “0”, то переходим к метке PUSK. В этом режиме происходит запись в ячейку памяти, определяющую текущее состояние рекламы, 1, что соответствует режиму “работа”; проверка в каком режиме (3 или 4) выполнять работу, и переход на соответствующий режим.

Если  нажата клавиша 3, то переходим к метке NADO. В этом режиме мы выводим на индикаторы сегменты, бегающие по кругу в определенном порядке относительно друг друга. Перед сменой каждого сегмента выполняем задержку длительностью 2 секунды. Этот режим записывается в виде “1” в ячейке памяти REJIM.

          Если нажата клавиша 4, то переходим к метке DRNADO. Здесь происходит вывод на индикаторы сегментов, бегающих по кругу в противоположные стороны относительно друг друга. Перед сменой каждого сегмента выполняем задержку длительностью 2 секунды. Данный режим записывается в виде “0” в ячейке памяти REJIM.