شناسایی پورت دستگاه ها

بله ممنون میشم

استاد منظور من از پورت در واقع ارتباط شبکه هست یه جورایی که با لوازم و ابزار جانبی ارتباط برقرار می کنه و میخواستم بدون چطور یه چیزی مثل پورت usb به چند دستگاه وصل میشه و هرکدوم رو هم به عنوان خودش میشناسه یعنی cd driver رو به عنوان خودش یو اس بی رو هم به عنوان خودش می شناسه این شناسایی از کجا اتفاق می افته ؟ و اینکه برای پیاده سازی یه همچین چیزی باید چی کار کنیم؟

سلام استاد خسته نباشید ببخشید استاد یک سوال دارم در پروژه هایی که برای مثال نیاز داریم به چند پورت مختلف وسیله های مختلف وصل کنیم در حالتی که خودمان نمی دانیم کدوم پورت برای کدوم وسیله هست باید چی کار کنیم یعنی باید چی کار کنیم که دستگاه ما بتونه هر کدام را به عنوان خودش بشناسه ؟

من منظورم از پورت شبکه، پورت های tcp/ip بود. شما در جواب سوال من گفتید که منظورتون شبکه هست ولی توضیحی که در ادامه دادید به نظر میاد که منظورتون پورت های سریال هست. (usb هم یک نوع ارتباط سریال است ) اگر درست متوجه شدم تایید کنید تا usb و شبکه های اون تیپی رو توضیح بدم براتون.

البته منظور من در کل سمت درایور ها بود و درایور نویسی و اینکه لوازم جانبی رو از هم دیگه تشخیص بده دستگاهی که میسازیم

سلام دوست عزیز، منظورتون از پورت در ارتباط شبکه هست یا منظورتون پورت های سریال هست؟ اگر ممکن هست بیشتر توضیح بدید.

کلا دستگاه هایی که با استفاده از ارتباط سریال با هم شبکه میشن، معمولا یک master دارن که اون شبکه رو کنترل می کنه و بقیه به صورت slave به اون وصل میشن. وقتی که شما دستگاه usb رو به کامپیوترتون وصل می کنید، کامپیوتر شما به عنوان یک host میاد به usb ها ادرس میده. usb ها هم موقع معرفی خودشون، PID/VID که vendor id و product id هستن و مشخصات لازم خودشون رو برای host ارسال می کنن. اینطوری هست که یک host می فهمه که این دستگاه یک mouse هست یا یک پرینتر.
سیستم های master/slave هم اینطوری هستن که همه slave ها آدرس دارن و master هرموقع بخواد، یک slave رو صدا میزنه و باهاش داده رد و بدل میکنه. توی usb2.0 انتقال داده یکطرفه هست و یا master با slave حرف میزنه و یا برعکس. ولی در usb3.0 این انتقال می تونه همزمان هم رخ بده.
اگر شما دارید دستگاهی میسازید که قرار هست بهش usb وصل بشه، دقت کنید که باید usb host داشته باشه میکروکنترلری که استفاده می کنید و اونجا می تونید وقتی دستگاهی وصل شد، با استفاده از pid و vid بفهمید که اون دستگاه چیه.