Тип данных byte представляет собой 8-ми разрядное беззнаковое целое число, находящееся в диапазоне 0 … 255. В памяти, соответственно занимает один байт.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
const int led1 = 12; // вывод 12 Arduino, к нему подключён красный светодиод const int led2 = 11; // вывод 11 Arduino, к нему подключён жёлтый светодиод const int led3 = 10; // вывод 10 Arduino, к нему подключён синий светодиод const int led4 = 9; // вывод 9 Arduino, к нему подключён зелёный светодиод byte val = 0; // переменная типа byte void setup() { pinMode(led1, OUTPUT); // вывод 12 конфигуриуем как выход pinMode(led2, OUTPUT); // вывод 11 конфигуриуем как выход pinMode(led3, OUTPUT); // вывод 10 конфигуриуем как выход pinMode(led4, OUTPUT); // вывод 9 конфигуриуем как выход interrupt } void loop() { while (val < 8) { digitalWrite(led1, bitRead(val, 0)); // зажигаем/гасим красный светодиод digitalWrite(led2, bitRead(val, 1)); // зажигаем/гасим жёлтый светодиод digitalWrite(led3, bitRead(val, 2)); // зажигаем/гасим синий светодиод digitalWrite(led4, bitRead(val, 3)); // зажигаем/гасим зелёный светодиод delay(1000); val++; } val = 0; } |
В данном примере в функции setup() задаётся режим работы цифровых выводов № 12 … 9 Arduino — как выходы (светодиоды). К выводу № 12 … 9 через резистор 220 Ом подключаются светодиоды. В функции loop() реализован алгоритм включения/выключения светодиодов, в зависимости от состояния переменной val (от её двоичного значения — первых 4-х разрядов).