grafik lcd

bbs2006

Üye
Katılım
13 Kas 2006
Mesajlar
244
Puanları
1
Yaş
48
merhaba
grafk lcd de saydırma ilemi yaptırıyorum. ancak sayıalr üstüste biniyor. yazılımı burda

/*-------------------------------------------------------------------
PORT KONTROLUNUN GRAFİK LCD UYGULAMASI
--------------------------------------------------------------------
*/
#include <16f877.h>
#fuses HS,NOWDT,NOPROTECT,NOPUT,NOLVP
#use delay(clock=20000000)
#include <HDM64GS12.c> //glcd_pixel ve glcd_init fonksiyonlarını
//kullanabilmemiz için tanımlanıyor.
#include <graphics.c> //Grafik dosyalarını kullanılması için tanımlanıyor.
#use standard_io(a) //Hangi Pinlerin giriş veya çıkış olacagını ayarlar.
#define ileri pin_A0
#define geri pin_A1
#define ileri1 pin_A2
#define geri1 pin_A3
#define ileri2 pin_A4
#define geri2 pin_A5
#define ileri3 pin_e0
#define geri3 pin_e1
unsigned char a=0,b,c,d,m;
CHAR Yaz11[5];
CHAR Yaz1[5];
CHAR Yaz2[5];
CHAR Yaz3[5];
CHAR Yaz4[5];
/*-------------------------------------------------------------------
ANA PROGRAM BAŞLANGICI
--------------------------------------------------------------------
*/


void temizle(){
glcd_init(on);}
void main(){

glcd_init(on);
CHAR A1[ ]="1. Oyuncu......";
CHAR A2[ ]="2. Oyuncu......";
CHAR A3[ ]="3. Oyuncu......";
CHAR A4[ ]="4. Oyuncu......";
CHAR A5[ ]="T.U.T.E.M.L.";
while(TRUE){

if(!input(ileri)){ //1.oyuncu
a=a+1;
delay_ms(50);
if(a==120) a=0;
}
if(!input(geri)){
a=a-1;
}
if(!input(ileri1)){ // ikinci oyuncu
b=b+1;
if(b==120) b=0;
}
if(!input(geri1)){
b=b-1;
}
if(!input(ileri2)){ // üçüncü oyuncu
c=c+1;
if(c==120) c=0;
}
if(!input(geri2)){
c=c-1;
}
if(!input(ileri3)){
d=d+1;
if(d==120) d=0;
}
if(!input(geri3)){
d=d-1;
}
sprintf(yaz1,"%u\n",a);
sprintf(yaz11,"\0", );
sprintf(yaz2,"%u",b);
sprintf(yaz3,"%u",c);
sprintf(yaz4,"%u",d);
// glcd_fillscreen(off);
temizle();
glcd_text57(105,1,yaz1, 1, 1);
glcd_text57(105,1,yaz11, 0, 1);
glcd_text57(105,15,yaz2, 1, 1);
glcd_text57(105,30,yaz3, 1, 1);
glcd_text57(105,45,yaz4, 1, 1);
glcd_text57(1,1, A1, 1, 1);
glcd_text57(1,15,A2, 1, 1);
glcd_text57(1,30,A3, 1, 1);
glcd_text57(1,45,A4, 1, 1);
glcd_text57(1,57,A5, 1, 1);
}
}
 
void loop {} yapısı kullanıp }'dan önce clear screen yapsanız ekrandakiler temizlenir sanıyorum.
 

Forum istatistikleri

Konular
128,943
Mesajlar
921,885
Kullanıcılar
451,123
Son üye
Eldost

Yeni konular

Geri
Üst