Skip to content

Instantly share code, notes, and snippets.

@ecehan-civril
Created April 20, 2021 07:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ecehan-civril/93234f783bbeb98a989d953dcfca3d19 to your computer and use it in GitHub Desktop.
Save ecehan-civril/93234f783bbeb98a989d953dcfca3d19 to your computer and use it in GitHub Desktop.
Vumetre Neopixel
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h>
#endif
int ara_deger,ara_deger2;
// aradeger2 0 ve 1 olamaz
float hassasiyet = 0.2; // 0 ile 1 arasında bir float değer girin örnek 0.444 bu değer analogtan okuduğumuz değeri yumuşak bi şekilde yansıtmak için
#define PIN 6 // hangi pindne çıkış alacaksanız onu girin pwm olması gerekli
#define NUMPIXELS 12 // Popular NeoPixel ring size
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
#define gecikme 40 // kaç ms beklesin tekrar hesaplama yapması için 20 nin altına inmeyin bu değer değiştirğinde hassasiyet dolaylı yoldan değişir
void setup() {
#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
clock_prescale_set(clock_div_1);
#endif
Serial.begin(9600);
pixels.begin();
}
void loop() {
pixels.clear();
ara_deger2 = (1-hassasiyet) * ara_deger2 + hassasiyet * analogRead(0);
ara_deger = map(ara_deger2, 0, 623, 0, 13);
// Serial.println(ara_deger);
if(ara_deger >= 1 && ara_deger <=3 )
{
for(int i=ara_deger ; i<=12 ; i++)
pixels.setPixelColor(i, pixels.Color(11, 0, 0)); // 3 ana rengide 0 - 255 arasında bir değere set edebilirsiniz
pixels.show();
delay(gecikme);
}
else if(ara_deger >= 4 && ara_deger <= 6 )
{
for(int i=ara_deger ; i<=12 ; i++)
pixels.setPixelColor(i, pixels.Color(0, 11, 0)); // 3 ana rengide 0 - 255 arasında bir değere set edebilirsiniz
pixels.show();
delay(gecikme);
}
else if(ara_deger >=7 && ara_deger <= 9 )
{
for(int i=ara_deger ; i<=12 ; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 11)); // 3 ana rengide 0 - 255 arasında bir değere set edebilirsiniz
pixels.show();
delay(gecikme);
}
else if(ara_deger >=10 && ara_deger <= 12 )
{
for(int i=ara_deger ; i<=12 ; i++)
pixels.setPixelColor(i, pixels.Color(11, 0, 11)); // 3 ana rengide 0 - 255 arasında bir değere set edebilirsiniz
pixels.show();
delay(gecikme);
}
else {
for(int i=ara_deger ; i<=0 ; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 0)); // 3 ana rengide 0 - 255 arasında bir değere set edebilirsiniz
pixels.show();
delay(gecikme);
}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment