# برنامه نویسی میکروکنترلر (MicroController) ها و MicroProcessor ها > برنامه نویسی سیستم های Embeded > سوال: کنترل توسط پرت usb

## Felony

دوستان میخوام توسط کامپیوتر 10 رله رو با پورت usb کنترل کنم ...
چه راهی پیشنهاد میکنید ؟

----------


## shaniaki

با عرض ادب:
از آنجا که تعدادی خروجی می خواهید که نیازی نیست با سرعت بالا تغییر کنند، ساده ترین راه استفاده از درگاه موازی (پورت پرینتر) است که با آن از نظر نرم افزاری روی تک تک بیت های خروجی به سادگی کنترل دارید.

یه ... ...

----------


## Felony

بله حرف شما درسته ولی مادربوردهای جدید پورت موازی و پارالل ندارند ...
مادربرد من هم که برای این کار میخوا ازش استفاده کنم همینطوره ...
یعنی به جای این دو پورت 4 تا usb اضافه شده بهش و از درگاه ps2 هم خبری نیست ...

----------


## MohsenB

با سلام
شما چند راه دارید:
یکی از ساده ترین راه که با اون میتونین 16 رله رو کنترل کنین استفاده از 8 پورت خروجی پرینتر و بستن اونا به شکل ماتریسیه . ولی اشکالش اینه که در هر لحضا فقط میتونین 1 رله رو روشن یا خاموش کنید . البته می تونین از رله های دو وضعیتی هم استفاده کنین .

راه حل بعدی استفاده از میکرو کنترلر و برنامه نویسیه : با سخت به مبدل سریال به موازی میتونین از هر خروجی پرینتر 8 خروجی داشته باشین . و یا یه جوری برنامه بنویسین که بتونین با همون پورت سریال کامپیوتر هرچقدر که بخواین خروجی داشته باشین -> به این صورت که یه عدد رو به پورت سریال بفرسین و بر مبنای اون عدد یه خروجی فعال یا غیر فعال بشه .

----------


## Felony

> یکی از ساده ترین راه که با اون میتونین 16 رله رو کنترل کنین استفاده از 8 پورت خروجی پرینتر و بستن اونا به شکل ماتریسیه . ولی اشکالش اینه که در هر لحضا فقط میتونین 1 رله رو روشن یا خاموش کنید . البته می تونین از رله های دو وضعیتی هم استفاده کنین .
> 
> راه حل بعدی استفاده از میکرو کنترلر و برنامه نویسیه : با سخت به مبدل سریال به موازی میتونین از هر خروجی پرینتر 8 خروجی داشته باشین . و یا یه جوری برنامه بنویسین که بتونین با همون پورت سریال کامپیوتر هرچقدر که بخواین خروجی داشته باشین -> به این صورت که یه عدد رو به پورت سریال بفرسین و بر مبنای اون عدد یه خروجی فعال یا غیر فعال بشه .


دوست عزیز من گفتم که مادربورد بنده پارالل و ... نداره ، فقط و فقط USB دراه .

----------


## mhmmdshirazi

منظورتو از کامپیوتر ده رله نفهمیدم بیشتر توضیح بده من با usb خیلی کار کردم.

----------


## MTrezaei

سلام
میتونی آی سی FT232 یا FT245 بخری و به یه میکرو وصل کنی.

----------


## l3ai3ak

با سلام 
برای استفاده از USB حتماً باید چیزی سمت USB را هاست کند . یعنی به شکلی که . داده های ارسال شده توسط سیستم عامل را پردازش و پاسخ گویی نماید . برای این کار روشهای بسیاری وجود دارد .
استفاده از FPGA ها و MicroControler ها ولی با توجه به سوال شما من فکر می کنم شما اطلاعات خوبی در رابطه با این دو مورد ندارید . 

به نظر من استفاده شما از رابط های USB->LPT بهترین راهکار خواهد بود .
چنانچه در رابطه با اجرای پروژه از روشهای فوق را نیاز داشتید مطرح کنید من با میکرو PIC و VB مثالی را توضیح دهم .

----------


## مبین

با عرض سلام ساده ترین راه اینه که با استفاده از یک برنامه مثلا به زبان #C با پورت USB ارتباط برقرار کنی . اونم با استفاده از آی سی های شرکت FTDI . بعد   یه چند تا Command به hiperterminal به میکروکنترولر بفرستی و با میکرو رله هات رو راه بندازی. من اینکار رو خیلی وقت پیش انجام دادم. :چشمک:

----------


## kernel

چیزهاییی که لازم داری

ATMEGA 16
FT232
نرم افزار : windriver - Code vision or bascom - proteus  + پروگرامر خوب !
در ضمن به جای رله به نظر من بهتره از Optocoupler استفاده کنی ( باعث میشه رو مدار نویز نیافته )

----------


## Felony

من تا فردا اینها رو تهیه میکنم ، بعد ازتون سوالاتم رو میپرسم ، اگه دوستانی که تو این کار تجربه دارن جواب بدن ممنون میشم .

----------


## MohsenB

تو اینترنت دنبال این موضوع بگردین, من این مطلبو دارم هرکس خواست بهم ایمیل بزنه:
avr usb to RS232
که توش دوتا مداره که غیر از تبدیل به پورت سریال تمام پورتهای میکروی بکار رفته رو هم می تونید کنترل کنید. این مثالها با 2313 و mega8 انجام شده.

----------


## msd163

سلام 
من هم تازه ميخوام كار با usb رو شروع كنم
يه سري آي سي هست كه مستقيما با usb كار مي‌كنند و نيازي به تبديل به 232 نيست
يعني به جاي اينكه يه واسط بين usb و rs232 باشند خودشون اطلاعاتو پردازش و كنترل مي‌كنند
آسي هاي شركت سيپرس از اين گروهند.

كسي هست كه با اين اي سي ها كار كرده باشه؟
توصيه شما چيه؟

از تراشه‌هاي سيپرس استفاده بشه يا ftdi?
با تشكر

از

----------


## farzadsw

اگه به سرعت بالا یا مدهای خاص usb نیازی ندارید ، سریع ترین و راحت ترین راه استقاده از همون تبدیل ها هست ، در غیر این صورت شاید تو user manual و app note شرکت سازنده چیپ اطلاعات مفیدی پیدا بشه (من با خود پروتکل usb کار نکردم)

----------


## msd163

البته كه سرعت بالا نياز دارم
حجم اطلاعات زيادي بايد بين ميكرو و pc رد و بدل بشه
--------------------
در هر صورت از راهنماييتون ممنونم
--------------------
اگه مرجعي در اين زمينه سراغ داريد لطفا معرفي كنيد

----------

