Page 17 - 6636
P. 17

був перерваний.
                                Для опису підпрограми обробника переривання від порта
                            B (тільки виводи B4-B7) в середовищі PICC використовують
                            спеціальне  слово  #INT_RB.  Після  цього  слова  розміщують
                            текст підпрограми:
                            #INT_RB
                            void  RB_isr(VOID) {
                             //тут розміщується текст команд підпрограми
                            }

                                Слід зауважити, що для правильної обробки переривання
                            порта B потрібно обов'язково зчитати порт у змінну командою
                            input_b() в іншому випадку програма "зависне".
                                Змінна — це іменована область пам’яті, у якій зберігають-
                            ся дані визначеного типу. Змінна має ім’я, розмір та інші ат-
                            рибути,  такі  як  видимість,  час  існування  тощо.  Ім’я  змінної
                            служить для звертання до області пам’яті, у якій зберігається
                            її  значення.  Перед  використанням  будь-яка  змінна  повинна
                            бути описана, при цьому  для  неї  резервується деяка область
                            пам’яті, розмір якої залежить від конкретного типу змінної.
                                В спрощеному випадку опис змінної обов'язково містить її
                            тип і ім’я, наприклад:
                            int8 keybuff;
                                Опис нових команд приведений в табл. 3.1.

                                Таблиця 3.1 – Команди програми
                            Команда            Пояснення             Приклад
                            enable_interrupts   Ця  функція  вмикає  enable_interrupts(INT_RB);
                            (level)            переривати  на  задано-  enable_interrupts(GLOBAL);
                                               му рівні.
                            input_b()          Зчитує  цілий  байт  з  input_b();
                                               порту.
                            bit_test(var, bit)   Вертає  значення  вка-  bit_test (keybuff,4)
                                               заного біта змінної
                                        Завдання для самостійної підготовки


                                Засвоїти теоретичний матеріал згідно з такими питаннями:
                                1  Робота  програми  мікроконтролера  при  виникненні  пе-


                                                           16
   12   13   14   15   16   17   18   19   20   21   22