PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : [سوال] یافتن پورت سریال مورد نظر در c#



Aghaeifar
26-04-2014, 11:37
سلام

من یه مبدل سریال به usb روی بردم دارم که یه سری داده رو به رایانه منتقل کنم. توی رایانه هم با سی شارپ اینترفیسی می نویسم که داده ها رو بخونه. می شه پورت های سریال در دسترسی رایانه رو هم با سی شارپ در آورد. میشه کاری کرد که به صورت خودکار خود برنامه بدونه کدوم پورت سریال همونی هست که قراره برد من بهش داده ارسال کنه؟ چون ممکنه چندتا پورت سریال دیگه هم در رایانه موجود باشه و مایل نیستم کاربر به صورت دستی پورت مورد نظر رو از لیست پورت ها انتخاب و باز کنه.
ممنون می شوم اگر کسی تجربه در این مورد داره راهنمایی کنه.

تشکر.

processor
26-04-2014, 12:07
سلام
شما باید یه تابع بنویسی که در پورت سریال های موجود جستجو کنه
میتونی جای انتخاب پورت یه قسمت بزاری جستجوی خودکار و کاربر با زدن اون پس از چند لحظه به دستگاه وصل بشه مثل پروگرامر در avr studio

Aghaeifar
26-04-2014, 12:36
سلام
شما باید یه تابع بنویسی که در پورت سریال های موجود جستجو کنه
میتونی جای انتخاب پورت یه قسمت بزاری جستجوی خودکار و کاربر با زدن اون پس از چند لحظه به دستگاه وصل بشه مثل پروگرامر در avr studio

منظور شما این است که به همه ی پورت سریال های موجود یه پیام ارسال کنه. اونی که جواب مورد نظر رو داد، اون رو انتخاب کنه؟ ممنونم.
البته این ایده رو در stackoverflow دیدم اما دوست داشتم کاش می شد به محض اتصال دستگاه من به پورت usb (که از مدل سریال به usb دارم استفاده می کنم) خود نرم افزار بشناسدش و کانکت بشه.
خیلی ممنون از ایده تون.

DIMITRY
26-04-2014, 12:37
سلام
خیلی راه حل داره راه حل درستش اینه که ID مبدل بگیرید و توی پورت سریال جستجو کنید

فقط برای اطلاع میگم از dll خود ftdi استفاده نکنید چون برای نوشتن روی پورت مشکلی نداره ولی برای خوندن حدود 3 ثانیه تاخیر میندازه که حوصله پیدا کردن مشکل نداشتم خودم از اول بسته به نیاز درش اوردم فقط اگه حجم ارسال و دریافت زیاده باید ترد بندیش کنید چون صفحه قفل میشه

sadmonew
26-04-2014, 12:49
سلام دوستان
اين برنامه كوچيك رو نگاه كنيد اميدوارم به كارتون بياد
تمام پورت هاي سريال روي كامپيوتر رو ليست ميكنه

Aghaeifar
26-04-2014, 13:28
سلام
خیلی راه حل داره راه حل درستش اینه که ID مبدل بگیرید و توی پورت سریال جستجو کنید

فقط برای اطلاع میگم از dll خود ftdi استفاده نکنید چون برای نوشتن روی پورت مشکلی نداره ولی برای خوندن حدود 3 ثانیه تاخیر میندازه که حوصله پیدا کردن مشکل نداشتم خودم از اول بسته به نیاز درش اوردم فقط اگه حجم ارسال و دریافت زیاده باید ترد بندیش کنید چون صفحه قفل میشه

ممنون ازتون.
ممکنه بپرسم این ID مبدل رو چطور میشه در سی شارپ بدست آورد؟
البته من با ftdi کار کردم تا حالا در خوندن با تاخیر 3 ثانیه مواجه نشدم تا جایی که یادمه به صورت آنی بود.

DIMITRY
26-04-2014, 14:52
احتمال داره اصلاح شده باشه این مورد من حدودا 2 سال پیش تست کردم که این مشکل داشت

برای ID هم راحت ترینش دانلود کلاس های خود FTDI از سایتش هست فقط 1 اشکال یادم داشت که ID درسته که پیدا میشه ولی اگه 2 تا ماژول هم زمان متصل بشه اون فقط 1 دونه رو به شما میده البته احتمال داره این مورد هم حل شده باشه

FTDIChip-ID (You can see links before reply)

ppittl
27-04-2014, 01:03
دوست عزیز اگر از ft استفاده می کنید
تابع getnum port رو صدا بزنید
البته قبلش باید هندل پورت رو بدست اورده باشی
خیلی راحته
من با بیسیک کار کردم ، اگر خواستی برات مثال بزارم
موفق باشی