Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

Binary to Hex

Başlatan xoom, 12 Kasım 2012, 20:55:35

xoom

Klein hocam bin to hex kodu harika bir koda benziyor fakat csu seviye yetmedi sanırım.. biraz açıklama yapabilirsiniz bunu koduma nasıl entegre edicem bilemedim.

Klein

eğer haberleşmen tamamsa entegrasyon kolay.  Ama CCS kodlarına çevirme konusunda pek yardımcı olamam. CCS bilmiyorum.

1 baytlık veriyi aldığında bu rutini çağıracaksın. Anlamanı kolaylaştırmak için bufferi vs.. kaldırıyorum. veriyi aldığın anda doğrudan lcd'ye yazacakmışsın gibi anlatayım.
Kütüphane fonksiyonlarını tanımadığım için LCD yazam, Seri port okuma vs.. gibi rutinler için sembolik isim kullandım. Düzeltmeleri yaparsın. Önce böyle dene, verini ekranda gör, sonra veriyi diziye alıp text olarak yazma gibi konular konuşulur.

const char hex_lookup[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}
char x=0;

seri rx alma rutini{
      bindata = Rx_Oku();
      gotoxy(x,1);
      lcd_karakter_yaz(hex_lookup[bindata & 0x0F));
      x++;
      gotoxy(x,1);
      lcd_karakter_yaz(hex_lookup[[(bindata >>4)&  0x0F));
      x++;
}


Murat Mert

S.A.
#int_RDA
void  RDA_isr(void)
{
disable_interrupts(INT_RDA); // burada kesmeler iptal ediliyor
veri[i]=getc(); // burada uarttan gelen veriler i değişkeni ile veri değişkenlerinin içine numaralandırılıp atılıyor
i++; // i değişkeni her işlemde 1 artıyor
if(veri[0]!=1){i=0;} else{time_out=0;a=0;} // eğer uarttan ilk gelen veri 1 değilse değişkenlere birşey kaydedilmiyor. eğer geldiyse time outu sıfırla
if((i>=6)){i=0;} // toplamda 6 veri geldiyse i değişkenini sıfırla ve işlem için hazırla
enable_interrupts(INT_RDA); // kesmeleri tekrar aktif et
}



#int_TIMER0
void  TIMER0_isr(void)
{ 
++time_out; // time out için say
if(time_out>10000){a=1;} // time out sayıyı bulunca alarm için bayrak aç
if((veri[0]==1)&(veri[1]==3)&(veri[4]==13)&(veri[5]==10)) // gelen verilerin doğruluk kontrolü
{isi=make16(veri[2],veri[3]);} //eğer veriler doğruysa veri2 ve veri3 adındaki 8 bitlik sayıları isi adlı 16 bitlik sayıda birleştir
}



yazıp denediğim tüm dosya:

http://s2.dosya.tc/server21/EanaG0/uartal_c_verici.rar.html

mert07