Acayip bir durumla karsikarsiyayim

Başlatan yamak, 05 Aralık 2013, 18:09:12

yamak

Qt ile cross platform için bir uygulama tasarliyorum uygulama kaba taslak sunu yapiyo. Zigbee üzerinden gelen komutlara gore ADC den veri topluyor ve yine zigbee üzerinden gelen dur komutuna ADC eden veri toplama yi durduyo ve topladigi verilerin grafiğini çiziyor. Grafik çizdirmek için QcustomPlot adinda yaklasik 18 bin satirik 3.parti bi kütüphane kullaniyorum.
Simdi sorun su:
Uygulama yi ilk tasarladigimda görsel olarak bi qcustomplot ve bi tane TextEdit vardi ve bu haliyle zigbee üzerinden gelen verileri düzgün bi şekilde alip ADC eden verileri toplayip grafiği cizdiriyodum. Ama Gui yi biraz daha geliştirdikten sonra (bir kaç radio button,bir kaç text box ve bi tane progresso bar ekledim) program düzgün calismamaya başla di. Uart üzerinden gelen verileri kavurmaya başladi.

Uygulamadan her eksilttigim komponent te program biraz daha düzgün caliyo. Fakat sadece qcustomplot u sildigimde de program gayet düzgün caliyo.
Boyle bi sorunla kars ulaşan oldu mu? Nedir bunun mantigi. Cross platform olarak BeagleBone Black kullaniyorum.

Burak B

Sorun threading problemi gibi geliyor kulağa.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

yamak

Hocam ben de o şekilde düşünüyorum.Takılan flash belleği mount etmesi için bit tane thread im var.Ondan şüpheleniyorum.Çünkü uart tan veriyi tam thread i çalıştırmaya başladığımda alıyorum.

yamak

Hocam sorun halloldu.Sizin de önerinizden esinlenerek mount thread imi kaldırdım timer kurarak hallettim.Fakat sorun yine tam düzelmemişti.Sonra seri porttan her veri geldiğinde okunan verinin kaç byte olduğunu ekrana yazdırdım.Normalde ben 23 byte lık veri gönderiyodum fakat 15 byte lık veri okunuyodu.Ben de seri porttan veri okuma slot unun içine veriyi okumadan önce QserialPort sınıfının WaitForReadyRead adında bi fonksiyonu var onu koydum ve sorun halloldu.Öneriniz için teşekkür ederim.

Burak B

"... a healthy dose of paranoia leads to better systems." Jack Ganssle