button - обработка нажатий кнопки

В примере button демонстрируется использование вспомогательных функций управления кнопкой (файл misc/button.h). Исходный код примера:

/** 
 * button.cpp 
 * 
 *  VE_AVR Library LED Blink Contorl Button Example. 
 * 
 *  Created on: 11.05.2012 
 *  Author: andrey 
 */ 
#include <ve_avr.h> 
#include <misc/ve_led.h> 
#include <misc/ve_button.h>  

#define LED         DEV_GPIOB, 7    // Светодиод LED подключен к выводу PD7 микроконтроллера 
#define LED_BTN     DEV_GPIOA, 7    // Кнопка LED_BTN подключена к выводу PA7 микроконтроллера

Button  btn;  

int main() 
{
   btn.setup(LED_BTN, InstantON, true);  // Предварительная настройка вывода кнопки LED_BTN:
                                         // нажатие на кнопку соответствует логическому 0
                                         // встроенный pull-up резистор включен
   led::setup(LED);                      // Предварительная настройка вывода светодиода LED
   while(true) {
      if (btn.isReleased()) {   // Если кнопка не нажата
         led::on(LED, 150);     // мигнуть светодиодом 2 раза в секунду
         led::off(LED, 350);
      }
      else {                    // Если кнопка нажата
         led::on(LED, 50);      // мигнуть светодиодом 10 раз в секунду
         led::off(LED, 50);
      }
   } 
} 

Следующий пример: adc - считывание значения напряжения потенциометра.

Предыдущий пример: blink - мигающий светодиод.

Скачать библиотеку VE_AVR.

Автор: Андрей Шаройко <vanyamboe@gmail.com>