Простейший числовой индикатор с общим анодом позволит отображать цифры от 0 до 9 и конечно же точку!))
7-сегментный индикатор – очень простое устройство. Он представляет собой комбинацию 8 светодиодов (восьмой светодиод отвечает за точку) с общим катодом, которые можно включать в определенной последовательности так, чтобы они образовывали цифры. Следует обратить внимание, что в данном случае выводы 3 и 8 отведены под катод.
Код проекта:
/*
Arduino-счетчик на 7-сегментном индикаторе с общим катодом
Выводы Arduino: 2,3,4,5,6,7,8
Выводы индикатора: 7,6,4,2,1,9,10
Выводы индикатора 3 и 8 должны быть соединены с землей
Кнопка на вывод 9
Источник: http://www.electroschematics.com/9636/arduino-segment-display-counter/
*/
byte numbers[10] = {
B11111100, B01100000, B11011010, B11110010, B01100110,
B10110110, B10111110, B11100000, B11111110, B11100110
};
void setup() {
for(int i = 2; i <= 8; i++) {
pinMode(i, OUTPUT);
}
pinMode(9, INPUT);
}
int counter = 0;
bool go_by_switch = true;
int last_input_value = LOW;
void loop() {
if(go_by_switch) {
int switch_input_value = digitalRead(9);
if(last_input_value == LOW && switch_input_value == HIGH) {
counter = (counter + 1) % 10;
}
last_input_value = switch_input_value;
} else {
delay(500);
counter = (counter + 1) % 10;
}
writeNumber(counter);
}
void writeNumber(int number) {
if(number < 0 || number > 9) {
return;
}
byte mask = numbers[number];
byte currentPinMask = B10000000;
for(int i = 2; i <= 8; i++) {
if(mask & currentPinMask) digitalWrite(i,HIGH);
else digitalWrite(i,LOW);
currentPinMask = currentPinMask >> 1;
}
}
7-сегментный числовой индикатор 0.56 "(красный)
- Модель: 1459878440
- Наличие: Есть в наличии
-
25.00 р.