faruk97
Üye
- Katılım
- 1 Haz 2020
- Mesajlar
- 38
- Puanları
- 1
- Yaş
- 27
Yardımlarınız için çok teşekkür ederim. Sonun da program çalıştı. Yardımlarınızla başarabildim.
Programın son hali registerlardan(kaydedicilerden) sonra;
(Void main içi)
Ayrıca signed char Yaz(unsigned char veri) fonksiyonunda SSP1BUF=veri; satırından sonra while(SSPSTATbits.BF); satırını ekledim. Bu satır BF bitinin 0 olmasını bekler. Yani gönderim tamamlandı demek. (Galiba bu olay PIC16F1509 vb. PIC'ler için geçerli)
Son hali;
Programın son hali registerlardan(kaydedicilerden) sonra;
(Void main içi)
Kod:
Basla();
Yaz(0x70); //Cihaz adresi ADR= GND=VEE
Yaz(0x00); //Control Register Adresi
Yaz(0x00); //static mode, i.e. continuous display of digits 1 and 2
Yaz(0x00); //1.Digit clear
Yaz(0x00); //2.Digit clear
Dur();
while(1){
for(i=0;i<10;i++){
Basla();
Yaz(0x70); //Yazma modu
//while(ACKSTAT)
Yaz(0x01); //1.Displaye yaz
Yaz(rakam[i]); //i'yi çevir yaz
Yaz(0x00); //2.Displayi sil
Dur();
__delay_ms(500);
}
}
Ayrıca signed char Yaz(unsigned char veri) fonksiyonunda SSP1BUF=veri; satırından sonra while(SSPSTATbits.BF); satırını ekledim. Bu satır BF bitinin 0 olmasını bekler. Yani gönderim tamamlandı demek. (Galiba bu olay PIC16F1509 vb. PIC'ler için geçerli)
Son hali;
Kod:
signed char Yaz(unsigned char veri){
Bekle();
SSP1BUF=veri;
while(SSPSTATbits.BF);
return (ACKSTAT);
}
Son düzenleme: