TFT-LCD 'ye değişken bastırma problemi

Başlatan tesladream, 29 Eylül 2013, 17:22:36

tesladream

Arkadaslar merhaba,

SSD1289 chipli TFT-LCD kullanıyorum. Timer Interrupt  içerinde bir counter kullanıyorum program if bloguna girdikten sonra counter ı sıfırlıyorum ekrana 59 dan sonra 09,19,29,39,49 diyerek gidiyor sanırım buffer in son byte inda veri kalıyor.Ben 59 dan sonra 0 görmek istiyorum.Bu problemi nasıl çözebilirim. 
while(1){	 
	 if(counter==60){
		 counter=0;
		 buffer[strlen(buffer)-1]=0;
	 }
	 sprintf(buffer,"Counter :%d",counter);
	 LCD_DisplayStringLine(LINE(3),(uint8_t *) buffer);

}

tesladream

Arkadaşlar daha önce kimse böyle bir problemle karşılaşmadı mı?Yardımcı olursanız sevinirim.

homer380

#2
sayarken değer   60'dan büyükse değişkeni sıfıra çek.

tesladream

Bende counter i 0 a çekiyorum zaten.Problem 0 a çektikten sonra son byte hala aynı kalıyor.O byte i nasıl silebilirim.

pisayisi

sprintf(buffer,"Counter :%2d",counter);


olarak değiştirirsen çalışması lazım. tek digite düşünce çıkışın, LCD ram de saklı tutulan rakam ilgili hücrede askıda kalıyor. 2 digit olarak çıkışı formatladığında sorun kalmaması lazım...
Murat

tesladream

Teşekkür ederim usta denedim canavar gibi çalışıyor.Eyvallah