Haberler:

Eposta uyarılarını yanıtlamayınız ( ! ) https://bit.ly/2J7yi0d

Ana Menü

LCD KULLANIMI

Başlatan ahmetbudak, 17 Kasım 2014, 11:28:52

ahmetbudak

arkadaşlar herkese iyi çalışmalar..
flexy lcd kütüphanesi kullanılarak oluşturulan bir uygulamada şöyle bir problemle karşılaştım

i adında bir değişkeni lcd de göstermek istediğimizde mesela i=250 olsun
while(1)
{
printf(lcd_putc("\%d,i);
}
komutu ile ekranda 250 değeri görünüyor ,ancak  i'nin değeri mesela 1 e düştüğünde 250 sayısının 1 ler ve onlar basamağı ekranda kalarak  150 görünüyor

bu durumu nasıl düzeltebilirim
cevaplar için şimdiden teşekkürler

JKramer

Alıntı Yapprintf(lcd_putc("\f%d,i);

mehmet

250 deki üç karakteri  silip
yerine diğer sayıyı yazdırmanız
gerekmekte. Zira ekrana 1 rakamını
2 rakamının üzerine yazıyor ve siz
bunu 150 olarak görüyorsunuz.
Gerekli rakamları yazdırmadan once
eski karakterleri silip yenisini yazdırınız.
Bir de sayıların başına 0 koymak
başka bir çözüm olabilir.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

polleme

putc komutu içinde iki adet çift tırnak olması gerekmiyor mu?

JKramer

#4
Evet, zincirleme kopyala-yapıştır hatası :):
printf(lcd_putc("\f%d,i"));

Düzeltme: Eksik parantez.

RaMu

printf(lcd_putc("\f%d,i"));

Üstdeki şekilde yazılırsa ekranın tamamı silinir ve
1. satır 1. sutundan itibaren i değeri yazılır.

Ekranda mevcut hiçbir yazıyı değiştirmeden
lcd_gotoxy ile yazılacak konumun başlangıcı seçilip
herzaman aynı sayıda rakam ile i değeri yazılmak istenirse;
printf(  lcd_putc,"%03d " ,i);

kullanılabilir, burada % ile d arasına yazılan değer kadar basamak sayısı ile
i değeri ekrana yazılır,
burada 3 basamaklı yazılmış olunur,
255 ise 255 yazar
1     ise  BoşlukBoşluk1  yazar,
(yoksa 001 mi yazıyordu, hatırlayamadım)
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html