View Full Version : برنامه نویسی میکروکنترولر ها با ++C
h_c2005
یک شنبه 30 اردیبهشت 1386, 18:50 عصر
با سلام و خسته نباشید خدمت دوستان عزیز
می خواستم یه منبع خوب فارسی برای برنامه نویسی میکروکنترولر ها با زبان ++C معرفی کنید .
هر چی دنبالش گشتم نتونستم پیدا کنم. :لبخندساده:و می خواستم بدونم کسی که می خواهد برنامه نویسی ربات بکند باید تا چه حد زبان برنامه نویسی ++c رو بلد باشه .
با تشکر ...
DAMAVAND
یک شنبه 30 اردیبهشت 1386, 21:32 عصر
با سلام و خسته نباشید خدمت دوستان عزیز
می خواستم یه منبع خوب فارسی برای برنامه نویسی میکروکنترولر ها با زبان ++C معرفی کنید .
هر چی دنبالش گشتم نتونستم پیدا کنم. :لبخندساده:و می خواستم بدونم کسی که می خواهد برنامه نویسی ربات بکند باید تا چه حد زبان برنامه نویسی ++c رو بلد باشه .
با تشکر ...
بهترین کتاب در این زمینه:
پروژهایی به زبان C برای میکروکنترولر 8051
ناشر:کانون نشر علوم
خیلی لازم نیست C رو در حد بالا بدونید.
همینکه با دستورات اصلی و کار با توابع اشنا باشید کاملا کافیه.
saeid5977
یک شنبه 30 اردیبهشت 1386, 22:40 عصر
سلام
++C یا C ؟
C زیاده اما Cpp ندیدم تا حالا.
برای چه میکرویی میخوای؟ PIC ، AVR چی؟
h_c2005
یک شنبه 30 اردیبهشت 1386, 23:12 عصر
خیلی فرق میکنه که من که c++ بلدم برنامه نویسی C را در مورد میکرو کنترولر ها بخونم ؟؟
به نظر شما برای شروع کدام میکرو بهتر است ؟
saeid5977
دوشنبه 31 اردیبهشت 1386, 04:00 صبح
سلام
اگه ++C بلدی پس مشکلی نیست راحت میتونی با C کارکنی فقط یه کم دست و پات بسته تر از برنامه نویسی تو PC هست.
در مورد میکرو هم شروع کردن مهمتر از از کجا شروع کردنه
اول بهتره با خود میکرو کنترلر آشنا بشی و اصول کارشو یاد بگیری کمی هم اسمبلیش رو یاد بگیری و بعد بری سراغ C . هم pic خوبه و هم avr. اما ظاهراً pic پر طرفدارتره.
DAMAVAND
دوشنبه 31 اردیبهشت 1386, 09:51 صبح
سلام
برای برنامه نویسی برای میکروکنترولر زبان C++ نداریم.فقط C
برای یادگیری هم بهتره اول از 8051 و با اسمبلی شروع کنید .
بعدش خیلی راحت میتونید با هر میکرو و هر زبانی کار کنید.
در ضمن از لحاظ طرفدار و حجم پروژها میکروکنرولر ها اینجوری طبقه بندی میشن:
1:(8051)
2:AVR
3:PIC
powerboy2988
شنبه 05 خرداد 1386, 22:36 عصر
شما اگه می خوای رو میکرو برنامه نویسی کنی با 2تا زبان میتونی
BASCOME و CodeVision که اولی مثله زبانه بیسیکه و دومی مثله c
کتابهای فارسی برنامه نویسی میکرو با codevision رو یه نگاهی بکن
h_c2005
شنبه 05 خرداد 1386, 22:43 عصر
سلام
میشه یه کتاب خوب ر این باره معرفی کنید آقای power boy که برنامه نویسی ربات رو از پایه آموزش بده
saeid5977
شنبه 05 خرداد 1386, 22:46 عصر
شما اگه می خوای رو میکرو برنامه نویسی کنی با 2تا زبان میتونی
BASCOME و CodeVision که اولی مثله زبانه بیسیکه و دومی مثله c
کتابهای فارسی برنامه نویسی میکرو با codevision رو یه نگاهی بکن
فکر میکنم این دو تا IDE باشند. نه زبان!
sayeh007
شنبه 19 خرداد 1386, 01:42 صبح
بیس کام به نظر من بهتر از کدویوزن هستش
دز ضمن ای دی هم داره بیس کام
raminsol
چهارشنبه 03 مهر 1387, 01:49 صبح
سلام:
من علي هستم دوست عزيز
سئوالي داشتم اگه مي تونين کمکم کنيد
مي خوام پروژه اي بنويسم اما نمي دونم از چه ميکرويي استفاده کنم
پروژه شامل يک ميکرو و يک ال سي دي مثلا 20*20 سانتيمتر هست
گفتم مثلا منظورم يک ال سي دي در اندازه بزرگ هست
دونبال ميکرويي ميگردم که بتونم يک محيط تقريباّ مثل محيط موبايل
درست کنم
که بتونم براش منو و فولدر و فايل بسازم
و بتونم توش اطلاعات زيادي ذخيره کنم
من خودم با 8051 کارکردم اما بدرد اين کار نمي خوره
درضمن ميکروش توي ايران باشه و قيمتش هم زياد نباشه
از حافظه کمکي هم اگه استفاده کنه مهم نيست
مهم اينه که اون کارايي که گفتم بتونم انجام بدم
پيشاپيش از کمکتون ممنونم
navidrtl
جمعه 12 مهر 1387, 22:40 عصر
اگه موبایلا رو می بینی که این شکلی منو دارن ، این موبایلا دارای سیستم عامل هستن می شه این کار و کرد ولی باید برنامه نویسی با C رو خیلی خوب بلد باشی به برنامه نویسی شی گرا کاملاً مسلط باشی .
موفق باشی :چشمک:
navidrtl
جمعه 12 مهر 1387, 22:42 عصر
من خودم روباتیک کار می کنم معمولاً من خودم با میکروکنترلر avr AT mega32 کار می کنم. به نظر من خیلی خوب جواب میده.
موفق باشید :چشمک:
محمدامین شریفی
چهارشنبه 06 آذر 1387, 17:33 عصر
http://barnamenevis.org/forum/showthread.php?t=110663
SamaPic
چهارشنبه 06 آذر 1387, 22:01 عصر
با سلام خدمت دوست عزيز .
من مدتي است كه با ميكرو كنترل AVR كار مي كنم و پروژه هاي زيادي با آن (البته ساده ) نوشته و اجرا كردم.
افرادي كه به شما راهنمايي كردن از نظر من مدتي از حضور فعالشان در اين رشته مي گذرد ولي اميد وارم مطالبي كه در زير مي نويسم اشتباه باشه .پيشا پيش بخاطر نوشته هايم (كه اميد وارم اشتباه باشه) از شما دوستان عزيز و از همه ي فعالان اين رشته عذر مي خواهم.
با توجه به تجربيات و دانسته هاي من در ضمينه ي ميكرو كنترل هاي خطي بايد بگويم كه نوع 8051 ديگر از دور خارج شده و خط توليد آن آخرين رو هاي خودش را مي گذراند. در ضمينه ميكرو كنترل هاي PLC من هنوز با آنها كار نكردم ولي مي دونم كه با اسمبلي نوشته مي شن و از نوع مشابه يعني AVR در بعضي پروژه ها ضعيف تر هستن و بالعكس.
در حال حاضر ميكرو كنترل هاي AVR عرصه را بر رقبا تنگ كرده اند.
اين ميكرو كنترل (AVR ) با دستورات C++ نوشته مي شوند(البته با قدري تغيير) اين ميكرو كنترل قدرت انعطاف زيادي داشته و تقريبا هر كاري رو مي تواند انجام دهد.
در حال حاضر براي توليد ربات ها از اين ميكرو استفاده مي شود.
خانواده ي AVR از AT tiny 13 تا AT86RF401 وجود دارد كه من تمامي برنامه هايم را با ATmega16 يا ATmega16L نوشته و به مرحله ي اجرا در آورده ام.
برنامه نويسي آن بسيار ساده بوده توسط CodVisionAVR نوشته و توسط AVRstudio شبيه سازي (تست عملي ) مي شود.
به طو كلي بگويم كه دست شما در اين نوع بسيار باز است.
در ضمينه ي كتاب بايد كتاب ميكرو كنترل هاي خطي انتشارات نصر را بگيري چون مثال هاي عملي زيادي دارد و من تاكنون كتابي با اين تعداد مثال نديده ام و كتاب دانشگاهي اش هم ميكرو كنترل هاي خطي نوشته ي سمييان يا همچين نامي است.
بايد بگوييم من خودم برنامه نويسيم چنگي به دل نمي زند ولي به راحتي ميتوانم برنامه هاي مذكور را نوشته و اجرا كنم.اگر شما يكي از دو زبان c يا c++ را بلد بوديد كافي است چون نياز چنداني به ياد داشتن اين زبان نيست.
در ضمينه ي PLC هم من كار نكرده ام كه به شما توصيه يا حتي نظري بدهم ولي استادمان مي گفت بهترين ميكرو ، ميكرو منترل هاي خطي AVR است.
باز هم از محضر اساتيد و ريش سفيدان اين ورطه به خاطر گفته هايم عذر خواهي مي كنم .
اين هم يك نمونه برنامه ي ساده كه با CVAVR نوشته شده است . البته خيلي ساده است و مهمتر از آن اين است كه موارد رنگي را خود برنامه مي نويسد.
#include <mega16.h>
#include <delay.h>
void main(void)
{
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x0F;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00;
MCUCSR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;
while (1)
{
PORTB.0=1;
PORTB.1=0;
PORTB.2=0;
PORTB.3=0;
delay_ms(10);
PORTB.0=0;
PORTB.1=1;
PORTB.2=0;
PORTB.3=0;
delay_ms(10);
PORTB.0=0;
PORTB.1=0;
PORTB.2=1;
PORTB.3=0;
delay_ms(10);
PORTB.0=0;
PORTB.1=0;
PORTB.2=0;
PORTB.3=1;
delay_ms(10);
};
}
در پاين بگويم اين برنامه برنامه ي Step motor است.
اگر در حين تايپ اشتباهاتي داشتم (منظور تايپي) به بزرگواري خود ببخشيد.
اميد وارم مطالب زيادم سر شما را به درد نياورده باشد و همچنين شما دوست عزيز به پاسخ خود رسيده باشيد.
خدا نگهدار.
SamaPic
پنج شنبه 07 آذر 1387, 00:04 صبح
با سلام مجدد خدمت دوستان و همچنين دوست عزيز.
اين را براي دوستي گذاشتم كه در مورد LCD سوال داشتن.
اوني كه مي خواستن نيست ولي شايد بدردشان بخوره.
به اميد اين كه بدرد شان بخوره.
من اين فايل را جايي گرفتم و همان را در اتجا گذاشتم تا شايد مشكل يكي از دوستان رفع شود.
خدانگهدار.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.