PDA

View Full Version : اتصال کامپیوتر به میکرو از طریق پورت سریال



ali.monje
جمعه 28 فروردین 1394, 18:15 عصر
سلام
همونطور که از عنوان هم قابل برداشت هست ، یه سری سوالات در خصوص ارتباط کامپیوتر با میکرو از طریق پورت سریال و ارسال و دریافت دو طرفه اطلاعات و نمایش اونها داشتم!

همین اول خدمتتون عرض کنم من اطلاعات زیادی در خصوص قطعات الکترونیک ندارم!!
خوب دوستان ببینید من نیاز دارم:
1) از طریق پورت سریال با میکرو ارتباط برقرار کنم
2) از طریق یک برنامه واسط نوشته شده با C#‎‎‎ یک رشته رو از طریق برنامه به میکرو بفرستم و در LCD نمایش بدم و برعکس
3) بعد یک موتور و یکی LED جهت نمایش روشن و خاموش بودن موتور روی مدار وجود داشته باشه که با فعال کردن اون از طریق برنامه موتور روشن بشه ( LED هم روشن بشه) و از طریق نوار لغزان برنامه بشه سرعت اون رو کم یا زیاد کرد و سرعت موتور رو از میکرو به برنامه فرستاده بشه و در کادر مخصوص تعبیه شده نمایش داد شه.
4) و در نهایت وجود یک RGBLED هست که باید با فرستادن مقادیر صفر تا 255 از طرف برنامه برای هر یک از رنگ های قرمز و سبز و آبی بشه یک رنگ خاص رو نمایش داد. http://www.iranled.com/forum/images/smilies2/my.gif

--> پردازنده ATMega8 یا ATMega16

راستشو بخواین دیگه از جستجو خسته شدم، تو این چند روز http://www.iranled.com/forum/images/smilies1/at.gif نحوه کار با Proteus و CodevisiosnAVR رو یاد گرفتم و همچنین ایجاد پوت مجازی با Virtual Serial Ports Emulator، نحوه کار با پورت سریال و اینکه برای دریافت و ارسال از پایه های RXD و TXD استفاده میشه و چون ولتاژ این پورت از -12 تا +12 ولت هست و در مقابل استاندارد TTL با 5 ولت و صفر کار میکنه از تراشه MAX232 استفاده میکنیم و همچنین با virtual Terminal برای نمایش مقادیر پورت در protues آشنا شدم و همچنین فهمیدم از کتابخانه Stdio.h در CodevisiosnAVR برای کار با پورت سریال استفاده میشه.
ولی با کنار هم گذاشتن همه اینها هم نتونستم کاری بکنم. http://www.iranled.com/forum/images/smilies2/sad.gif
این اولین تجربه من برای کار با مدارات هست http://www.iranled.com/forum/images/smilies2/confused.gif ، امیدوارم هر کمکی از دستتون بر می آد دریغ نکنید.http://www.iranled.com/forum/images/smilies2/shy.gif

مهدی کرامتی
شنبه 29 فروردین 1394, 10:10 صبح
چرا همین کارها رو با محیط برنامه نویسی Arduino انجام نمی دهید؟ در اون محیط بدون اینکه لازم باشه با رجیسترها و جزئیات پیچیده AVR به طور کامل آشنا باشید با استفاده از چند تابع آماده همه کارهایی که گفتید را می توان انجام داد. Core File های کار با Atmega8 و 16 رو هم داره و یا میشه براش پیدا کرد (اولی رو خودش داره).

ali.monje
شنبه 29 فروردین 1394, 15:06 عصر
چرا همین کارها رو با محیط برنامه نویسی Arduino انجام نمی دهید؟ در اون محیط بدون اینکه لازم باشه با رجیسترها و جزئیات پیچیده AVR به طور کامل آشنا باشید با استفاده از چند تابع آماده همه کارهایی که گفتید را می توان انجام داد. Core File های کار با Atmega8 و 16 رو هم داره و یا میشه براش پیدا کرد (اولی رو خودش داره).

سلام
خیلی ممنون
راستشو بخواین بنده هیچ اطلاعاتی در رابطه با Arduino ندارم و با توجه به زمان اندک باقی مونده زمان کافی برای سوئیچ رو ندارم.

مهدی کرامتی
یک شنبه 30 فروردین 1394, 17:49 عصر
اینجا رو ببین:

Overview | Arduino Lesson 5. The Serial Monitor | Adafruit Learning System
https://learn.adafruit.com/adafruit-arduino-lesson-5-the-serial-monitor?view=all

برای تستش هم یکی از این بردهای Arduino Uno تهیه کن:

اگر تهران هستی از جهان کیت می تونی بگیری. با پیک هم میفرسته: http://www.jahankitshop.com/market/d/5245

اگر هم پستی می خواهی بخری آفتاب رایانه با پست یک روزه می فرسته برات:

آردوینو Uno
http://shop.aftabrayaneh.com/Arduino_UNO_R3.html?search=uno

برد آردوینو UNO CH340G
http://shop.aftabrayaneh.com/ARDUINO_CH340G_UNO.html?search=uno