Zaten yazdığım kodda üç bölüme ayrılıyor değerler...

Kod:
str[0] = red[0];
                str[1] = red[1];
                iRed = HEXtoDEC();
                str[0] = green[0];
                str[1] = green[1];
                iGreen = HEXtoDEC();
                str[0] = blue[0];
                str[1] = blue[1];
                iBlue = HEXtoDEC();
 
Zaten yazdığım kodda üç bölüme ayrılıyor değerler...

Kod:
str[0] = red[0];
                str[1] = red[1];
                iRed = HEXtoDEC();
                str[0] = green[0];
                str[1] = green[1];
                iGreen = HEXtoDEC();
                str[0] = blue[0];
                str[1] = blue[1];
                iBlue = HEXtoDEC();



yani ;

KIRMIZI = 0x iRed;
YESIL = 0x iGreen;
MAVI = 0x iBlue;

yapabilirmiyim ? o degerler hex mi abi ?
 
Dediğin değerleri zaten int8 değişkenler içerisine atmışım.
HEX DEC ne fark eder.
Senin tam olarak amacın nedir?
 
valla yılan hikayesi oldu abi biliyorum sana da zahmet veriyorum...

Ya tuş takımı ile girdiğim HEX değeri var ya, örnek FF55DD diye bir değer girdim. benim PWM kodunun uygun yerine iki şerli olarak atansın istiyorum hepsi bu düşünüyorum düşünüyorum bulamıyorum :)

Yaptığım PWM metodunun çıkış kodu bu ;

red_duty = 0xFF ; // Buraya Tuş takımından ilk girdiğim iki Değer gelecek...
green_duty = 0x55 ; // Buraya Tuş takımından ikinci girdiğim iki Değer gelecek...
blue_duty = 0xDD ; // Buraya Tuş takımından üçüncü girdiğim iki Değer gelecek...

Hepsi bu kadar abi. ama şu birleştirme muhabbetini yapamadım.
 
Yapacağın işlem topu topu şu kadar yani:

Kod:
int8 iRed, iGreen, iBlue = 0;
int8 red_duty, green_duty, blue_duty = 0;

str[0] = red[0];
str[1] = red[1];
iRed = HEXtoDEC();
red_duty = iRed;
str[0] = green[0];
str[1] = green[1];
iGreen = HEXtoDEC();
green_duty = iGreen;
str[0] = blue[0];
str[1] = blue[1];
iBlue = HEXtoDEC();
blue_duty = iBlue;

ya da daha kısa olarak:

Kod:
int8 red_duty, green_duty, blue_duty = 0;

str[0] = red[0];
str[1] = red[1];
red_duty = HEXtoDEC();
str[0] = green[0];
str[1] = green[1];
green_duty = HEXtoDEC();
str[0] = blue[0];
str[1] = blue[1];
blue_duty = HEXtoDEC();
 
Yapacağın işlem topu topu şu kadar yani:

Kod:
int8 iRed, iGreen, iBlue = 0;
int8 red_duty, green_duty, blue_duty = 0;

str[0] = red[0];
str[1] = red[1];
iRed = HEXtoDEC();
red_duty = iRed;
str[0] = green[0];
str[1] = green[1];
iGreen = HEXtoDEC();
green_duty = iGreen;
str[0] = blue[0];
str[1] = blue[1];
iBlue = HEXtoDEC();
blue_duty = iBlue;

ya da daha kısa olarak:

Kod:
int8 red_duty, green_duty, blue_duty = 0;

str[0] = red[0];
str[1] = red[1];
red_duty = HEXtoDEC();
str[0] = green[0];
str[1] = green[1];
green_duty = HEXtoDEC();
str[0] = blue[0];
str[1] = blue[1];
blue_duty = HEXtoDEC();


evet işte bu , ama hex to dec olarak çevirdikten sonra atama yapıyor. oda bende hatalı olduğundan yanlış yapıyor. çevirmeden hex olarak atama yapsa süper olur :)

tuş takımından FF55DD değerini girdim diyelim. senin stringlerde tek tek gözüküyor. 6 stringin var onları iki iki birleştirme işlemi istiyorum valla kanser olcam aramadıgım şey kalmadı :)

red_duty = 0x + string[0] + string[1] // 0xFF
green_duty = 0x + string[2] + string[3] // 0x55
blue_duty = 0x + string[4] + string[5] // 0xDD
 
Orada girilen char türünde bir değişken.
Yani sana hexa gibi görünüyor.
Ancak hexa değil.
Desimale çevirmen lazım.
Ondan sonra kullanman lazım...
 
Abi sana söylemiştim herşeyi yapsan daha güzel olacak diye.
YARARMAN abi birde PWM ilen LED lerde olsaymış dahada güzel olurmuş......
Esasında DEC to HEX olması gerekiyordu, nedenide bizler decimal (onluk) sayı sistemini kullanıyoruz, Elektronik HEX (onaltılık) sayı sistemini.
Abi sen tuş takımından onluk olarak girilen rakamları Lcd de gösterip, onaltılık karşılıkları ile pwm sürüp gerekirse filtrelemeleride yapıp yayınlarsan işi halletmiş olursun.
Bu sistemde bence daha çok eksiklikler çıkar, herşeyi hazırlayıp vermek iyi değildir ama bu iş ancak böyle biter tahmin ediyorum.
Size kolay gelsin ben takipteyim :D
 
Abi sana söylemiştim herşeyi yapsan daha güzel olacak diye.

Esasında DEC to HEX olması gerekiyordu, nedenide bizler decimal (onluk) sayı sistemini kullanıyoruz, Elektronik HEX (onaltılık) sayı sistemini.
Abi sen tuş takımından onluk olarak girilen rakamları Lcd de gösterip, onaltılık karşılıkları ile pwm sürüp gerekirse filtrelemeleride yapıp yayınlarsan işi halletmiş olursun.
Bu sistemde bence daha çok eksiklikler çıkar, herşeyi hazırlayıp vermek iyi değildir ama bu iş ancak böyle biter tahmin ediyorum.
Size kolay gelsin ben takipteyim :D


takip edeceğine bişeyler katta bitirelim şu işi bende sunuyım şuraya :)))))

Bak YARARMAN Abimiz Char değişkeni Decimale çevir diyor o nasıl olacak onu söyle bari :D valla sıyırcam hee :)
 
Siz olayı niye anlamamakta diretiyorsunuz? :)
RGB renkler HTML kodu olarak girilecek ise HEX olarak girilmeli.
Tuş takımından girilen HEX kodu, karakter olarak değişkenlere atılıyor.
O karakter değişkenler de, yazılımda sayısal olarak kullanılabilmesi için onluk (decimal) sayı sistemine çevriliyor.
Benim yazdığım yazılım bütün istediklerini zaten gerçekleştiriyor ricetyx.
Sen sadece o onluk sayıları duty değişkenlerine atıp kullanacaksın.
Yapacağın tek şey bu...
 

Forum istatistikleri

Konular
129,801
Mesajlar
930,215
Kullanıcılar
452,603
Son üye
MFK12123

Yeni konular

Geri
Üst