PDA

View Full Version : مشکل در پورت سریال



yalameh
سه شنبه 23 بهمن 1386, 10:17 صبح
با سلام
من یه برنامه نوشتم که اطلاعات پورت سریال را هر 50 میلی ثانیه می خونه ، اونها رو نمودار می آره و سپس در فایل ذخیره می کنه . از timer دلفی هم استفاده کرده ام . در حالت عادی که فقط برنامه من در حال اجراست مشکلی نداره ولی بعضی مواقع که سیستم درگیر کاره دیگه ای می شه تو خوندن اطلاعات مشکل پیدا می کنه و برنامه از خوندن پورت عقب می مونه .
لطفا دوستان راهنمائی کنند تا این مشکل را حل کنم .

hr110
سه شنبه 23 بهمن 1386, 11:41 صبح
بهتره نرم افزارتونو multi thread پیاده سازی کنید تا در مواقعی که سیستم درگیره هم کار شما صحیح انجام بشه،
ضمناً ممکنه توضیح بدید که از چه ابزاری برای اتصال به پورت استفاده میکنید؟

vcldeveloper
سه شنبه 23 بهمن 1386, 12:36 عصر
ولی بعضی مواقع که سیستم درگیر کاره دیگه ای می شه تو خوندن اطلاعات مشکل پیدا می کنه و برنامه از خوندن پورت عقب می مونه .
تا جایی که میدونم، ویندوز سیستم عاملی نیست که بتونه تضمین کنه شما در یک فاصله زمانی مشخص حتما به داده های پورت مربوطه دسترسی داشته باشید؛ یعنی یک سیستم عامل کاملا Real-time نیست:
http://searchdatacenter.techtarget.com/sDefinition/0,,sid80_gci213667,00.html

ولی برای کاهش تاخیرها می تونی، همونطور که آقای ربیعی گفتند، کد مربوط به دریافت داده از پورت را در یک Thread جدا قرار بدید و سطح الویت اون رو هم بالا ببرید.

yalameh
سه شنبه 23 بهمن 1386, 13:02 عصر
ممنون از جوابتون .
من از کامپوننت pcomm و از تایمر دلفی استفاده می کنم .
می شه لطف کنید و بگید چطوری می تونم از thread استفاده کنم .
این هم عکسی از برنامه :

http://i28.tinypic.com/2ltssis.jpg

شهریار بهمن پور
سه شنبه 23 بهمن 1386, 17:24 عصر
جستجو کنید .
آقای Mahmood_N یک مقاله خیلی خوب در این باره در سایت گزاشتند.

yalameh
یک شنبه 28 بهمن 1386, 08:17 صبح
من نتونستم مقاله را پیدا کنم .
می تونید ٱدرسشو بهم بگید .

vcldeveloper
یک شنبه 28 بهمن 1386, 16:58 عصر
من نتونستم مقاله را پیدا کنم .
من هم اونو پیدا نکردم، اما می تونید این تاپیک ها را ببینید:
http://barnamenevis.org/forum/showthread.php?t=1606
http://barnamenevis.org/forum/showthread.php?t=26406

و این لینک ها:
http://delphi.about.com/od/kbthread/Threading_in_Delphi.htm

این کتاب رو هم حتما بخونید:
Multithreading - The Delphi Way (http://www.eonclash.com/Tutorials/Multithreading/MartinHarvey1.1/ToC.html)