seri port data işleme

Başlatan fofo, 05 Mart 2014, 13:05:20

fofo

Merhaba ETE hocam seri porttan gelen uzunluğu belirsiz datayı USART kesmesi kullanarak işlemek istiyorum. Bu konu hakkında nasıl bir yöntem kullanmam gerekiyor.

pwm3434

tamam  işle  ama pıc  tarafında hangi prog. dili  ile hazırlayacaksın eğer  varsa    kısmende  olsa  üzerinde  çalıştığın  kodları ekle.  bende yeni  yeni  seri  iletişim yapıyorum  ama seri porttan  8  bitten  daha  fazla  datayı  pıc'e  göndermiş  değilim.                           

ete

Mantığımızı çalıştıralım. Seri porttan gelen bilgi bir defa her biri 8 bitlik bilgi olmak zorunda. Uzunluğu yada başka bir deyişle kaç byte geleceği belli değil ise sürekli alma konumunda beklemen lazım bu hiçte doğru bir çalışma olmaz. Bilgiler ard arda geliyorsa (bir data paketi şeklinde) o zaman yapacak bir şey yok sürekli tek byte halinde alma yapman lazım. Ama aralık var ise o zaman işi kesmeye bağlayıp işine bakabilirsin. Her ver geldiğinde yine tek byte alır geri dönersin.

Ete

fofo

veri tek byte şeklinde gelmiyor. örneğin "DATA" şeklinde bir veri geldiğinde bunu bir değişkene aktarmam gerekiyor. Bu verinin uzunluğu değişebilir.

ete

Olmaz böyle bir şey. Önü arkası belli olmayan datalar alınıp bir yerde verilemez. Sen "DATA" olarak bilgiliningeldiğini görünce D harfi ile sondaki A harfinden ayırıp bir değişkene atarsın biliyorsunki DATA bir kelimedir. Pic nereden bilecek o işi?. Bütün kelime haznesini hafızaya yüklemek gerekirki buda imkansız bir şey.  Unut gitsin bu işi.

Ete


İlyas KAYA

Belkide yanlış bir bilgi arıyorsunuzdur.

Siz yapmak istediğiniz devre için bir plan , şema , anlatım çıkartın, bilgi kimden veya neyden ne için geliyor ve ne amaçla kullanılmak isteniyor bu bilgileri sağlayın ona göre yol gösterelim.

Tahminim o dur ki yapmak istediğiniz ile aradığınız bilgi örtüşmüyor.

Göz odur ki dağ ardını görsün,
Akıl odur ki başa geleceği bilsin.!

fofo

seri porttan gelen bütün kelimeleri işlemeyeceğim  örneğin seri porttan OPEN kelimesi geldiği zaman roleyi açacak CLOSE kelimesi geldiği zamanda role kapatacak.

pwm3434

#7
şimdi  yönten  olarak  seriporta  yazılan  verilerin  mod'u  aklıma geldi  şu an  için.  mcüt23ün deği  gibi  ortada  yöntemden  bir eser  dahi  yok.  şöyle  bir bilgi  paylaşıyım,  pc  tarafındaki  kulandığın  arayüz  prorgramında,  seriporta  yazdırıdğın  veriler  varya  bunları decimal  olarak yada  strin  veri tipi  olarak  gönderebilirsin  bu  tamammen  sana  kalmış.  şöyleki eğer  pc tarafında  seripottan gönderilen  bilgiler  decimal sayı  tipinde ise  pıc  tarafında  bu  bilgiyi alabilmen  için  yani  pıc  ile seriportu okutturup  bu  okunan bilgiyi nin çeriğini  kaydettiğin  değişkenin tipi  aynı  olması  gereklidir.  yada  pc den strin tipinde  veri  gönderiyosan pıc  tarafında da  seriportan aldığın  bilgiyi string  tipinde tanımlamalısın.     şimdilik  bu  kadar.  bu  anlatılanları  deneye  bilirsin  netten  istemediğin kadar  arayüz programı var  ve  pıc  ilede basit prog  yaz  denemeye  başla.  başlaki  sorduğun  soruları  ve  iletişim  için  ne eksik  ise  tamamlayalı.

inceleyebilirsin ilişkte ki  rar dosyasında pc' den  pıc'e bilgiler integer değişken  tipinde seriporttan gönderilip  pıc ile bu  bilgiler integer   tipindeki değişken  lile    alınıp  ve  program  tarafından  yorumlanıyor.

Powered by EzPortal