arduino hatası yardım

Başlatan YK44, 13 Nisan 2017, 11:58:33

YK44

Merhaba,

warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

nokia 5110 lcd denemesi yapmaya çalışıyorum hazır programlardan indirdim sadece ekranı aktif etmek için ama hepsindede yukarıdaki hatayı alıyorum .



#include <LCD5110_Basic.h>

extern uint8_t SmallFont[];
LCD5110 myGLCD(8, 9, 10, 11, 12); // CD pinlerinin hangi Arduino pinlerine bağlı olduğunu belirtiyoruz
extern uint8_t arduino5110[]; // Eklemek istediğimiz resimi belirttik
void setup()
{
  pinMode(7, OUTPUT); // LCD ekranın arkaplan aydınlatmasına giden pini çıkış olarak ayarlıyoruz
  digitalWrite(7, HIGH); // Ekrana aydınlatıldı
  myGLCD.InitLCD(); // Ekranı başlatıldı
  myGLCD.setContrast(70); //0 ila 127 arası bir değer verilebilir
}
void loop()
{
  myGLCD.clrScr(); //Ekranı temizliyoruz.
  myGLCD.drawBitmap(0, 0, arduino5110, 84, 48); //Resmi çizildi.
  delay(1000); //1 sn bekle
  myGLCD.clrScr(); //Ekranı temizliyoruz
  myGLCD.setFont(SmallFont);
  myGLCD.print("TEMRINLERIM", CENTER, 12);
  myGLCD.print(".ORG", CENTER, 18);
  myGLCD.print("05443420138", CENTER, 36);
  delay(1000); // 1 sn bekle
}


#include <avr/pgmspace.h>
const unsigned char arduino5110 [] PROGMEM={
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0,
0xC0, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0, 0xC0, 0xC0, 0x80, 0x80,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x80, 0xE0, 0xF8, 0xFC, 0xFE, 0xFF, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x07, 0x07,
0x07, 0x07, 0x07, 0x07, 0x07, 0x0F, 0x1F, 0x1F, 0x3F, 0x7F, 0xFE, 0xFC, 0xF8, 0xF0, 0xE0, 0xF0,
0xF8, 0xFC, 0xFE, 0xFF, 0x3F, 0x1F, 0x1F, 0x0F, 0x0F, 0x07, 0x87, 0xC7, 0xC7, 0x87, 0x07, 0x07,
0x0F, 0x0F, 0x1F, 0x3F, 0xFF, 0xFE, 0xFC, 0xF8, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0x80, 0x00, 0x00,
0x00, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE1, 0xFB,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF1, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x0E, 0x0E, 0x7F, 0x7F,
0x7F, 0x7F, 0x0E, 0x0E, 0x00, 0x00, 0x00, 0x80, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0F, 0x1F,
0x1F, 0x3F, 0x7F, 0x7E, 0x7C, 0xFC, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xFC, 0xFC, 0x7C, 0x7E, 0x3F,
0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x3F, 0x7E, 0x7E,
0x7C, 0xFC, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xFC, 0x7C, 0x7E, 0x7F, 0x3F, 0x1F, 0x1F, 0x0F, 0x07,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x80, 0xE0, 0x60, 0xE0, 0x80, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x20, 0x20, 0x20, 0xE0, 0xC0, 0x00,
0x00, 0xE0, 0xE0, 0x20, 0x20, 0x60, 0xC0, 0x80, 0x00, 0x00, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0xE0,
0xE0, 0x00, 0x00, 0xE0, 0xE0, 0x00, 0x00, 0xE0, 0xE0, 0xC0, 0x00, 0x00, 0xE0, 0xE0, 0x00, 0x00,
0x80, 0xC0, 0x60, 0x20, 0x20, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x60, 0x7C, 0x1F, 0x13, 0x10, 0x13, 0x1F, 0x7C, 0x60, 0x00, 0x7F, 0x7F, 0x04, 0x04,
0x0C, 0x3F, 0x73, 0x40, 0x00, 0x7F, 0x7F, 0x40, 0x40, 0x60, 0x3F, 0x1F, 0x00, 0x00, 0x3F, 0x7F,
0x40, 0x40, 0x40, 0x7F, 0x3F, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x01, 0x07, 0x1C,
0x7F, 0x7F, 0x00, 0x00, 0x1F, 0x3F, 0x60, 0x40, 0x40, 0x60, 0x3F, 0x1F, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

Kabil ATICI

Programın sana bozuk atması normal.


extern uint8_t arduino5110[]; // Eklemek istediğimiz resimi belirttik
[/size]burada uint8_t olarak çağırıyorsun
[/size]ama kütüphanende
[/size]const unsigned char arduino5110 [] PROGMEM={ ....
[/size]olarak veriyorsun.
[/size]
[/size]en azından
[/size]const uint8_t arduino5110 [] PROGMEM={ ....
[/size]olarak vermiş olman gerekir.
[/size]Çünkü fonksiyon içinde belirli bir değişken formatı için kullanımı var.
ambar7

YK44

Bu internetten hazır bulduğum bir kod, arduino kullanmıyorum biraz daha açıklayıcı bilgi verirmisiniz  Kabil ATICI

mehmet

Const olunca progmem kısmına gerek
olacak mı?
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

YK44

const mesela 2sn görünüp sonra program kısmında işlem yapabilmeliyim

Kabil ATICI

#5
Belirttiğim gibi kütüphaneyi incele;
myGLCD.drawBitmap(0, 0, arduino5110, 84, 48)
fonksiyonundan
const unsigned char arduino5110 [] verilerini nasıl alıyor?
burada senin programın başında
extern uint8_t arduino5110[];
şeklinde olacağını belirtmiş, senin kullandığın program bunu nasıl işliyor. Farklı veri tiplerinden dönüşümler bazı durumlarda sıkıntı olabiliyor. Arduino help dosyalarını inceleyebilirsin.

Bu arada Mehmet beyin belirttiği
PROGMEM yeni arduino program sürümlerinde kullanılmıyor, sanırım kütüphaneleri içine gömülmüş. Aynı şekilde
#include <avr/pgmspace.h> ifadesi de kullanılmıyor.

Biliyorsun Const sadece okunabilir veri tipine ifade ediyor. Dolayısı ile işlemcinin bunu okuma hızı hali ile program işleme hızı ile aynıdır.

Arduino kullanmıyorsun, kullanmıyorsun, bilemem ama konu başlığın öyle diyor.
ambar7