Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

DEGISKEN YARDIM LUTFEN

Başlatan dursunyaman, 25 Temmuz 2013, 17:57:05

dursunyaman

SAYIN ARKADASLAR  BİR ÖRNEK YAPTIM SAYAC

BU SAYAC SONSUZ OLACAK ŞEKİLDE LCD VE 16F877A İLE
BUTONA BASTIKCA DEĞİŞKEN TANIMLADIM SÜREKLİ ARTIYOR

!!!!!!!!!!!! FAKAT 255 E KADAR DAHA SONRA 0 OLUYOR

int32 sayac=0;

sayac++;

özetle bu şekilde yaptım fakat ne yaptıysam bir türlü 255 den sonrası lcd ekranda göstermiyor
bu değişken sonsuz sayı eklemek istiyorum butona tıkladıkça yardımlarınız için şimdiden teşekkür ederim

not: tüm değişkenleri denedim 255 den fazlası olmuyor ayrıca eproma kayıt ettim içinde malesef

birde hariçi eproma kayıt et oku örneği lazım çok acil tekrar teşekkür ederim ccs c


yldzelektronik

Alıntı yapılan: dursunyaman - 25 Temmuz 2013, 17:57:05
SAYIN ARKADASLAR  BİR ÖRNEK YAPTIM SAYAC

BU SAYAC SONSUZ OLACAK ŞEKİLDE LCD VE 16F877A İLE
BUTONA BASTIKCA DEĞİŞKEN TANIMLADIM SÜREKLİ ARTIYOR

!!!!!!!!!!!! FAKAT 255 E KADAR DAHA SONRA 0 OLUYOR

int32 sayac=0;

sayac++;

özetle bu şekilde yaptım fakat ne yaptıysam bir türlü 255 den sonrası lcd ekranda göstermiyor
bu değişken sonsuz sayı eklemek istiyorum butona tıkladıkça yardımlarınız için şimdiden teşekkür ederim

not: tüm değişkenleri denedim 255 den fazlası olmuyor ayrıca eproma kayıt ettim içinde malesef

birde hariçi eproma kayıt et oku örneği lazım çok acil tekrar teşekkür ederim ccs c



İftar saati yaklaştı hemen yemek hazırlamam lazım kendime ondan denemeden yazıyorum.


Ekrana veri basarken printf kullanıyorsan long olacak şekilde yazdırmayı dene.Printf(lcd_putc,"Sayi: %lu",sayac); şeklinde dene.

Bahsettiğin örnekler ccs nin kendi examples klasöründe mevcut.Sabit diskinde nereye kurduysan oraya git ve examples klasörünü bul.Ex_EE gibi bir şeydi sanırım ismi.

Hayırlı iftarlar.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Yuunus

16f877 32bit'i destekliyor mu?

yldzelektronik

Alıntı yapılan: digiman - 25 Temmuz 2013, 20:25:36
16f877 32bit'i destekliyor mu?
Destekliyor mu derken?

Diyelim ki hafızada 0x70 adresine veri yazmak istiyoruz.32bit 4byte eder.Derleyici bizim için bu değişkeni 0x70den itibaren yerleştirir.0x70-0x73 e kadar.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

Yuunus

bu şekilde elbetteki olur ben register bazlı düşünmüştüm.

yldzelektronik

Alıntı yapılan: digiman - 25 Temmuz 2013, 21:50:16
bu şekilde elbetteki olur ben register bazlı düşünmüştüm.


Anladım.Mcu 8 bit.Bu bilinen bir gerçek.Yani haklısınız.
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

sadogan


printf(lcd_putc"%lu"sayac);

bu şekilde yazması gerekiyor
Kullandığınız harici eeprom nedir?

dursunyaman

arkadaşlar 24c 12 32 64 gibi epromlara bilgi yazmak okumak amacım öncelik

degisken 1 = 053666666
degisken 2 = 445555

button1 write eprom yazdı

button2 tıkladım lc ekranda okumak amacım

button2 tıkla read eprom degisken1
button3 tıkla read eprom degisken2

şeklinde ama sayı sınırı olmadan yaz oku 255 karekter sınırını aşmak

232323242432423  3432432423432 9088898 şeklinde  iç epromda yaptım 255 den sonra olmuyor

harici epromlara veri yaz oku ayrıca kayıt olunan veriden bilgi çekmek ekrana yazdırmak

teşekkür ediyorum herkese saygılarımı sunuyorum

dursunyaman

S.A malesef burdaki verilen kodlar hiç bir şekilde olmadı yapmakistediğim

telefon : 05367888888
tc : 124566999
yas : 99

şeklinde veri yaz okumak kendi yapmış olduğum uygulamayı sizinle paylaşıyorum harici ve dahili eprom yaz oku
burda herşey normal fakat önemli olan burda verilerin okunup yazılabilmesi istedğim verileri yazamıyorum okuyamıyorum 60 000 e kadar yaz oku normal fakat her nedense bir türlü istenilen girilen verileri okuyup yazamıyorum ilgili çalışmayı paylaşıyorum umarım yardımlarınızı esirgemessiniz sayın hocalarım mümkünse uygulama olarak yardımalrınızı bekliyorum kodlarla olmuyor bit türlü......... tekrar teşekkürlerimi sunuyorum..

NOT :    TELEFON TC KIMLIK YAS BİLGİLERİNİ YAZIP DAHA SONRA LCD EKRANDA OKUMAK İSTİYORUM
ÖRNEKDE BUTTON1 E YAZMAYI YAPTIM  BUTTON2 YE OKUMAYI   !!!!!!!!!!!! ACABA GİRİLEN VERİ TAMAM OLUYORDA GOSTERIRKEN LCD MI DESTEKLEMIYOR FAKAT SABIT OLARAK TELEFON = 0536 7899999 VERIP LC DE YE OKUTABİLİYORUM DEĞİŞKENLERE TELEFONU AKTARAMIYORUM  1789 TAMAM AMA 053699999999  GİBİ BİLGİYİ GİREMIYORUM ÇALIŞMALARIMI HARICI VE DAHILI OLARAK AYRI AYRI YAPTIM

http://dosya.co/b03d710c6f9e0657/YARDIM_EPROM.rar

sadogan

Telefon numarası bir sayı gibi düşünme.Bir dizi gibi düşün.
Tel no: 12 hane
tc no : 9 hane
yas :3 hane
toplam 24 elemanlı bir dizin var (bunlar her veri için aynı olmalı)
bu diziye verilerinizi yerleştirin daha sonra diziyi eeproma kaydetmeniz gerekiyor.
örenek olması açısında kodunuzu modifiye ettim gerisini siz halledin.
not: yineliyorum 'C' değişken tiplerini inceleyin.
#include <16f877.h>    
#use delay(clock=4000000)  
#use rs232 (baud=9600, xmit=pin_C6, rcv=pin_C7, parity=N, stop=1) 
#include <2402.c> //24C02C
#include <external_eeprom.c> // dahili eprommmmm  !!!!!!!!!!!!
#define buton1 PIN_B0
#define buton2 PIN_B1
int8 telefon[15];
int8 tc[15];
int8 yas[5];
int8 okunan_veri[15];
int32 tel_oku,tc_oku,yas_oku;
void main ()
{
setup_psp(PSP_DISABLED);        // PSP birimi devre dışı
setup_spi(SPI_SS_DISABLED);     // SPI birimi devre dışı
setup_timer_1(T1_DISABLED);     // T1 zamanlayıcısı devre dışı
setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayıcısı devre dışı
setup_adc_ports(NO_ANALOGS);    // ANALOG giriş yok
setup_adc(ADC_OFF);             // ADC birimi devre dışı
setup_CCP1(CCP_OFF);            // CCP1 birimi devre dışı
setup_CCP2(CCP_OFF);            // CCP2 birimi devre dışı

while(1)
{
   char i;
 if(input(buton1)==1) // eprom yazZZZZZZZZZZZZZ
{

   sprintf(telefon"05321234567");
   sprintf(tc"112233123");
   sprintf(yas"23");
   for(i=0;i<11;i++)
   {
      write_eeprom(i,telefon[i]);
   }
   


}
if(input(buton2)==1)// eprom okuUUUUUUUUUUUU
{
for(i=0;i<11;i++)
{
   okunan_veri[i]=read_eeprom(i);
}
okunan_veri[i]=0;
printf("\f ");
printf("TELEFON : %s",okunan_veri);
delay_ms(1000);
printf("\f ");
printf("TC KIMLIK : %s",tc);
delay_ms(1000);
printf("\f ");
printf("YASI : %s",yas);
}
}
}

dursunyaman

hocam çok teşekkür ediyorum uygulamalar için çok değerli mantıklar benim gibi bir sürü yeni başyalan kişiler için altın değerinde tekrar sonsuz teşekkürler ediyorum ayrıca form kurucularınada teşekkür ediyorum çok yararlı faydalı form...

dursunyaman

s.a hocam öok güzel denedim çalışıyor fakat sadece telefon için geçerli diğer değişkenleri kayıt yapamadım bir türlü tc ve yaş için nasıl bir yol prosdur izleye bilinir burda tlefonu kayıy yapıyor kapa aç yaptım tc ve yas kayıtlı değil sadece telefon yardımlarınız lazım  :-\ :-\ :-\