Seri haberleşmede satır atlatmak?

Başlatan gambit1244, 10 Temmuz 2011, 14:25:43

gambit1244

iyi günler arkadaslar elimde şoyle bir kod var
if(can_getd(rx_id, &buffer[0], rx_len, rxstat)) {
             printf("%LX:   (%U) ",rx_id,rx_len);


burda lx: ile (%u) arasına oyle birşey koysamki lx i yazdıktan sonra comdan izlerken satır atlatarak devam etsin boyle bir ascii komutu varmı biliyormusunuz?
şimdiden teşekkürler
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

yamak

 sırasıyla 10 ve 13 gönderin satır atlar o zaman. tabi 10 ve ascii kod.

gambit1244

decimal olarak 10 ve 13 demek istediniz sanırım teşekkür ederim
peki bu kodlara ben hex yada decimal olarak sayı nasıl girerim

printf("%LX: LF CR   (%U) ");


bu şekilde lf cr mi yazmalıyım olmazsa hex olarak nasıl girebilirim char ları seri haberleşme konusunda cok tecrübesizim oyüzden soruyorum kusura bakmayın
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

yamak

#3
direkt decimal olarak gönderseniz de olur. galiba ccs c kullanıyosun ben ccs bilmediğim için direkt kodu yazamayacam.

gambit1244

#4
olmuyor o satır arasına 10 yazınca hex olarak 31 30 gönderiyor hex olarak 10 13 nasıl gondertebilirim başına bişey yazmam lazım sanırım ama ne :(
evet ccs c kullanıyorum teşekkürler yinede yardımın için

\n\r diye birşey buldum 10 ve 13 ün karşılıgymış bu konuda blgisi olan varmı arkadaşlar?
teşekkürler..
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

yamak

printf("%LX:   (%U)\n\r ",rx_id,rx_len); i dener misiniz

gambit1244

olmadı :( benim istedigim ascii sutununda datalar birbirine karışmasın her işlemi yaptıktan sonra alta geçsin
olay şu kısaca anlatayım
rx id = 00000300
data uzunlugu rx lenght = 3 byte
data = 1e 08 00
bunu ard arda gonderiyorum
ama /r /n yaptıgım yerlerde satır atlatması gerekirken 2 nokta üst üste koyuyor alta geçmiyor 16 byte dolunca alta geçiyor :(
anlatabildimmi acaba


[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

yamak

printf("%c%c",10,13) ü dener misiniz

gambit1244

malesef aynı şekilde ascii sutununda 2 nokta olarak gorünüyor ve satır atlatmıyor sanırım benim ascii izleme programım buna uygun degil bu kodlar lcd yada grafik lcd lere gore yazılmış heralde :( nekadar minnet etsem azdır uğraştıgınız için
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

Klein

#9
Eğer izlemeyi yaptığın program , resimde gösterdiğin program ise , malesef istediğin olmaz.
Çünkü bu editör hex editördür. Bu tip editörlerin genel özelliği , veriyi hem hex hem de ascii olarak görüntülemesidir. Ancak normal editörler gibi  satır sonu , süton sonu vs.. gibi karaktereri gördüklerinde ona uygun bir eylem gerçekleştirmezler. sadece gösterirler. Çoğunlukla 1 satır 16 karakterden oluşur.
Normal editörler  string içerisinde bası karakterleri görünce bunları ekrana basmak yerine , bazı eylemler yapar. örneğin gelen veride #13 varsa alt satıra geçer , #10 varsa satır başı yapar vs.. Hex editör ise bu sayıları görüntüler.
Sadece sizin editörünüzleilgili bir sorun değil. Hiçbir hex editörde olmaz.

Editörünüzün görünüm menüsünde seçenek olabilir. hex veya ascii görünüm şeklinde.

gambit1244

tüh sağlık olsun :( açıklayıcı bilgi için çok teşekkürler hocam
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.