Electrobot

وبلاگ تخصصی مدارت الکترونیک و رباتیک

Electrobot

وبلاگ تخصصی مدارت الکترونیک و رباتیک

در این وبلاگ آموزش هایی از الکترونیک و رباتیک قرار داده خواهد شد و دیتاشیت مدارات کاربردی توضیح داده میشود .

طبقه بندی موضوعی

۲ مطلب با کلمه‌ی کلیدی «Avr» ثبت شده است

۰۷ بهمن۱۸:۳۲

جلسه پنجم

1- سلام خوبی
2- سلام من خوبم تو چطوری چکار می کنی
1- خوبم ولی یکم ناراحتم
2- چرا
1- بابا تمام این مثال هایی رو که گفته بودی توی نرم افزار BASCOM تست کردم همشون هم درست بود ولی چه فایده وقتی که نمی تونم توی محیط BASCOM شبیه سازیشون کنم
2- خوب من که بهت گفته بودم که برو توی نرم افزار پروتوس تستش کن
1- اره گفته بودی ولی من که یاد ندارم باهاش کار کنم
2- خوب بهت یک لینک داده بودم که بری اونجا دربارش مطلب زیاده
1- خوب درست ولی اگه توضیح بدی اونایی رو هم که از توی لینک گرفتم باهاش اطلاعاتم کامل می شه
2- خیلی خوب چاره چیه ما که این همه گفتیم اموزش پروتوس هم می گیم دیگه چی ؟؟
1- دمت گرم بابا خیلی حال دادی
2- فقط یک چیزی رو از همین الان بگم من این نرم افزار پروتوس رو بهت می گم و از اونجایی که این نرم افزار بعضی وقتا EROR های بدی میده باید مشکلتو خودت حل کنی یا توی توی انجمن مشکلت رو بگی چون من فقط در حد کارکردن با این نرم افزار سرم میشه .
1- باشه هر چی که تو بگی
2- خوب پس این جلسه نحوه نصب و کارکردن با نرم افزار پروتوس ورژن 6 رو برات توضیح می دم
قبل از اینکه نحوه نصب رو برات توضیح بدم بزار یک مقدار درباره کاربرد نرم افزار برات بگم . این نرم افزار پروتوس یک نوع شبیه ساز هستش که علاوه بر شبیه سازی قادره یک مدار رو انالیز کنه و همچنین امکان کشیدن پشت فیبر مدار چاپی رو هم میشه از امکاناتش شمرد . ما در اینجا فقط می خوایم از امکان شبیه سازیش استفاده کنیم پروتوس یک شبیه ساز بسیار قدرت مند هستش که شما می تونی هر مداری رو که می خای توش شبیه سازی کنی و نتیجه کارت رو ببینی . خود من هر وقت که می خام یک مداری رو درست کنم اول با پروتوس شبیه سازیش می کنم بعد از اینکه نتیجه گرفتم می روم و اونو روی برد پیاده می کنم . یکی از امکاناتی که نرم افزار پروتوس در اختیار ما قرار داده شبیه سازی مدارات میکروکنترل هستش و شما قبل از این که خاسته باشی مدارتو روی برد سوار کنی می تونی توی پروتوس شبیه سازیش کنی و بعد از اینکه نتیجه دلخواهت رو گرفتی اونو روی برد پیاده کنی . شما داخل این پروتوس هر قطعه ای رو که حتی تا حالا ندیدیش پیدا می کنی و باهاش کار کنی .
خوب حالا بریم سر نصب نرم افزار پروتوس ورژن6 :
برای نصب نرم افزار PROTEUS ابتدا با اجرا کردن SETUP یا INSTALL ان انرا نصب می کنیم بعد از اینکه نصب شد می ریم داخل پوشه CRACK که در داخل CD نرم افزارش هست . سه تا CRACK داخلش هست که هر سه تاشون شبیه ادمک هستند و هر سه تا رو باید کپی کنی و در داخل پوشه BIN بریزی یعنی PASTE کنی حالا این فایل BIN رو حتما از خود می پرسی که کجاست پوشه BIN همون جایی هستش که نرم افزار رو ریختی بعد از اینکه این کارا رو کردی نوبت می رسه به اجرا کردن خود CRACK هایی که ریختی که باید یکی یکی اونا رو اجرا کنی بعد از اینکه هر کدوم رو اجرا کردی یک کادر کوچیک باز می شه که سه گزینه داره اولی NEXT دومی RESTORE و سومی PATCH می باشد که بعد از باز شدن پنجره باید روی گزینه RESTORE یا PATCH که دقیقا یادم نیست کدومشون هست کلیک کنی که یک پنجره باز می شه داخل این پنجره جدید یک فایل هستش که باید اونو انتخاب کنی و هی NEXT رو بزنی تا وقتی که پغام بده CRACK SUCCESSFUL بعد از این که هرسه تا رو اجرا کردی نرم افزار اماده اجرا هستش .
1- خوب تا اینجاش که راحت بود حالا برو سر توضیح خود نرم افزار
2- باشه . خوب قصد من از اموزش این نرم افزار PROTUES فقط شبیه سازی خود میکروکنترلرAVR هستش .برای این که بتونی این کار رو بکنی پس از اینکه پروتوس رو باز کردی باید روی یک شکل که در بالای نرم افزار است کلیک کنی که این شکل شبیه یک OPAMP است و از سمت چپ اولین شکل هستش که اگر روی این شکل موس رو نگه داری نوشته COMPONENT . پس از این که روی این شکل کلیک کردی یکم پایین تر از این شکل دو تا گزینه پیدا میشه که اولیش هست P و دومیش هست L که تو باید روی P کلیک کنی تا کتابخانه قطعت ضاهر بشه که بالای پنجره این کتابخانه نوشته PICK DEVICES . خوب تو باید از داخل این پنجره قطعاتی رو که می خای انتخاب کنی مثلا اگر یک میکرو کنترلر AT90S8535 می خای باید ابتدا روی گزینه MICRO کلیک کنی تا لیست کل میکروکنترلر ها اعم از 8051-AVR-PIC رو برات نمایش بده که ما برای انتخاب میکروکنترلر AT90S8535 باید روی ان دوبار کلیک کنیم تا در کادر کناری سمت چپ نرم افزار ذخیره شود . اگر میکروسوییچ می خاستی در کادر بالایی همین پنجره گزینه ACTIVE رو انتخاب کنی که توش قصعاتی هستش که کاربرد زیادی دارند مثل باطری – موتورDC-LED- و همچنین میکروسوییچ . خوب برای این که میکروسوییچ خاستی بیاری باید روی BUTTON دو بار کلیک کنی تا اون هم در کادر سمت چپ نرم افزار ذخیره بشه منظورم از کادر سمت چپ نرم افزار کادی هستش که بالاش نوشته DEVICES و دقیقا زیر همون LوP که بهت گفتم قرار داره. در ضمن برای بزرگ نمایی صفحه نرم افزار باید از F6 و F7 استفاده کنی . یک نکته دیگه اون هم اینکه برای این که از VCC و GND نرم افزار استفاده کنی باید بری روی یک شکل دیگه که علامت دوتا پیکان هستش که مخالف جهت یکدیگردن و این شکل 7 تا شکل بعد از اون شکلی رو که گفتم شکل OPAMP هستش به سمت راست قرار داره که اگه روی این شکل با موس وایستی نوشته INTER-SHEET TERMINAL که بعد از کلیک روی این گزینه یک کادر در سمت چپ نرم افزار باز میشه که هم GND داره و هم VCC برای اینکه بتونی این دوتارو روی صفحه بیاری کافیه روش یک بار کلیک چپ کنی بعد بیای روی صفحه نرم افزار دو باره کلیک چپ کنی تا روی صفحه نرم افزار ضاهر یشه. برای دیگر قطعات هم باید همین کار رو بکنی یعنی قطعاتی رو که ذخیره کردی رو یک بار روش کلیک چپ کنی تا انتخاب بشه بعد بیای روی صفحه نرم افزار دوباره کلیک چپ کنی تا ضاهر بشه . برای پاک کردن قطعه از روی صفحه برنامه باید روی اون دوبار کلیک راست کنی . برای تنضیمات یک قطعه مثلا عوض کردن مقدار یک مقاومت یا یک باطری باید ابتدا یک بار روی اون کلیک راست کنی تا قطعه قرمز بشه بعد دوباره روش کلیک چپ کنی تا یک پنجره باز بشه و بتونی مقدار یا هر چیز دیگه شو عوض کنی ولی مواظب باش که یک وقت دوبار روی اون کلیک راست نکی چون قطعه پاک بشه و اگر یک مومقع این اشتباه رو کردی می تونی ctrl + z رو از روی صفحه کلید بزنی تا قطعه برگرده . برای این که جای یک قطعه رو روی صفحه عوض کنی باید ابتدا روی قطعه یک بار کلیک راست کنی تا انتخاب بشه بعد با کلیک چپ هر طرف که خاستی ببریش .
بزار یک کار عملی انجام بدیم تا طرز راه اندازی یا شبیه سازی میکروکنترلر رو توی محیط برنامه یاد بگیری
فرض کن که می خایم یک مدار ساده مثلا یک چشمک زن رو با AVR درست کنی که از این ساده تر دیگه وجود نداره این چشمک زن رو می خایم با هشت LED درست کنی که همه هم زمان با هم روشن خاموش می شن. برای این کار اول می یایم توی محیط پروتوس تا قطعات رو به هم وصل کنیم . خوب طبق همون روشی که گفته بودم قطعات رو می یاری میکروکنترلر رو از نوع AT90S8535 انتخاب می کنیم و همچنین اول میکرو کنترلر رو میاریم در ضمن اند این هشتا LED رو به ترتیب به پایه های A.0 تا A.7 وصل می کنیم و سر دیگر این LED ها رو به GND وصل کن GND رو هم همون طور که بهت یاد دادم بیار بعد برو روی توی منوی FILE و روی گزینه SAVE DESING AS کلیک کن و مسیری رو که برای SAVE کردن مدار ازت می خاد رو بده همون جایی که نرم افزار رو نصب کردی یعنی توی پوشه SAMPLE البته بهتره توی این پوشه قبلش یک پوشه جدید ایجاد کنی و مدارتو توی این پوشه جید SAVE کنی .
1- من یک چیز رو نفهمیدم برنامه ای نمی خای براش بنویسی و برنامه رو چطوری می خای توش بریزی
2- اگه یکم صبر کنی به اونجاشم می رسیم . خوب تا اینجا که قسمت سخت افزاری مدار رو انجام دادیم حالا باید برای این مدار یک برنامه هم بنویسیم که اونم خیلی راحته خوب BASCOM رو باز کن و یک صفحه جدید ایجاد کن و برنامه زیر رو بنویس :
CONFIG PORTA = OUTPUT
DO
TOGGLE PORTA
WAITMS 100
LOOP
برای انتخاب نوع میکروکنترلر همونطور که بهت یاد دادم برو از داخل خود BASCOM انتخابش کن و حتما AT90S8535 رو انتخاب کن و برای انتخاب فرکانس کاری هم بازم همونطوری که بهت یاد دادم از داخل خود نرم افزار انتخابش کن و بزارش روی 8000000 هرتز بعد که این تنظیمات رو انجام دادی و OK کردی بیا اول دکمه F7 رو بزن تا برنامه چک بشه تا خطا نداشته باشه وقتی که این دکمه F7 رو میزنی قبل از اینکه برنامه رو چک کنه ازت یک مسیر میخاد که برنامه رو کجا ذخیره کنه که شما باید دقیقا ادرس رو همون جایی بدی که مدارتو اونجا SAVE کردی خوب کار ما با BASCOM تمام شد و اگه حال کردی می تونی ببندیش و بری سر نرم افزار پروتوس . اول پروتوس رو باز کن بعد برو توی منوی FILE و گزینه
LOAD DESING رو انتخاب کن تا یک پنجره باز بشه بعد از طریق این پنجره برو اون جایی که مدارتو SAVE کردی و مدارتو انتخاب کن تا روی صفحه بیاد . خوب گفتی که چطوری برنامه ای رو که نوشتیم می ریزیم توی میکروکنترلر خوب الان بهت می گم برای این کار باید روی میکروکنترلر یک بار کلیک راست کنی تا انتخاب بشه و به رنگ قرمز در بیاد بعد یک بار کلیک چپ می کنی تا یک پنجره باز بشه داخل این پنجره یک جایی نوشته PROGRAM FILE که جلوش یک کادر هستش و جلوی این کادر یک شکل زرد رنگ هستش که باید روی این شکل کلیک کنی تا دوباره یک کادر دیگه باز بشه . به وسیله این کادری که الان باز شد باید بری برنامه ای که نوشتی رو از اونجایی که SAVE قبلا کردی انتخاب کنی منظور فایلی هستش که با پسوند HEX هستش بعد که انتخاب کردی و OK رو زدی برنامه خودکار توی میکرو قرار می گیره بعد باید برای انتخاب فرکانس کاری میکرو باید در کادری که نوشته CLOCK FREQUENCY مقدار فرکانس میکرو رو بنویسی البته به مگا هرتز 8MHZ . خوب کار دیگه تموم شد OK رو می زنی تا پنجره بسته بشه بعد برای اجرای این مدار باید بری پایین صفحه و روی علامتی که شبیه PLAY ضبط هستش کلیک کنی که شبیه مثلث هستش و می بینی که هر هشتا LED دارن باهم دیگه هم زمان چشمک می زنن. در ضمن اگر برنامه EROR داد این دیگه تقصیر من نیست چون من به قلق نرم افزاره مسلط نیستم و باید بری توی این تاپیکی که بهت الان لینکشو می دم و مشکلتو اونجا مطرح کنیhttp://www.eca.ir/forum2/index.php/board,181.0.html
موفق باشی.
پایان قسمت پنجم

عرفان بیگی بروجنی | ۰۷ بهمن ۹۷ ، ۱۸:۳۲
۲۷ ارديبهشت۱۸:۱۵

سلام . برای اونایی که تا حالا با میکرو کار نکردن کمی مشکله که بعضی از مفاهیم رو یاد بگیرن برای همین من اشنایی مقدماتی با avr به زبان ساده در اوردم .راستش دیگه از این ساده تر به ذهنم نرسید . دوستانی که تمایل به یادگیری avr دارن باید بدونن که باید با میانی دیجیتال اشنایی داشته باشند حداقل اینکه با گیت های منطقی اشنایی داشته باشین برای اشنایی با دیجیتال کتاب مبانی دیجیتال هنرستان یا کتاب طراحی دیجیتال نوشته موریس مانو خوبه. نوشته زیر مقدمه ای بر اشنایی با میکرو هست که گفتگوی بین دو دوست رو نشون میده که دارن درباره میکرو avr صحبت می کنن امیدوارم که مفید باشه.

1- سلام خوبی
2- سلام خوبم تو خوبی
1- اره خوبم . چکار می کنی کم پیدایی
2- اره یک چند وقتیه دارم پروژه دانشگاه رو انجام می دم
1- چی هست این پروژت
2- هیچی ساخت یک دور سنج موتور با میکروکنترلرAVR
1- چی میکروکنترلرavr ؟؟؟؟ میکرو کنترلر دیگه چیه
2- میکروکنترلر رو اگه بخام به زبون ساده بهت بگم یک کنترل کننده هستش که تقریبا هر چی ازش بخای برایت انجام میده
1- پس بگو یک رباته
2- نه منظورم هر کاری نبود ببین مثل یک کامپیوتر که بهش فرمان میدی اون هم انجام میده البته از نظر ظاهری که نگاهش کنی یک ایسی 40 پایه هستش
1- چی؟؟؟؟؟ مگه میشه یک کامپیوتر به اندازه یک ایسی چهل پایه باشه
2- نه خود کامپیوتر منظورم از کامپیوتر اینه که بهش فرمان می دی اونم انجام میده
1- بازم نفهمیدم بیشتر توضیح بده اصلا به چه دردی میخوره
2- بزار بیشتر برات توضیح بدم این یک ایسی هستش که ما به وسیله کامپیوتر برنامه نویسی می کنیم بعد برنامه رو می ریزیم توی میکرو . کاربردش هم خیلی زیاده مثلا باهاش می تونی ساعت . فرکانس متر. قفل رمز درست کنی
1- یکم بیشتر درباه خود میکرو توضیح بده
2- این میکرویی که بهت میگم یک خانواده هستش که انواع مختلفی داره که تشکیل شده از سه گروه 1-tiny 2-90s 3-mega
1- خوب فرق این سه گروه باهم چیه مثلا tiny با 90s یا با mega چه فرقی دارن
2- فرفشون توی امکاناتی که دارن هستش و همین فرق باعث شده که قیمت هاشونم باهم فرق کنه
1- منظورت از امکاناتشون چیه
2- ببین بزار بیشتر برات درباره خود میکرو توضیح بدم . از امکاناتی که این میکرو ها دارن میشه به تایمر – کانتر- تولید موج pwm – حافظه ای که اطلاعات رو توی خودش حفظ کنه – سرعت بالای انجام دستورات- I\O (یا همون ورودی خروجی خدمون) – مبدل انالوگ به دیجیتال adc – مقایسه کننده انالوگ و... . حالا که با امکاناتش اشنا شدی همینو بهت بگم که بعضی از میکرو ها توی امکاناتشون و توی مقدار حافضه با هم فرق دارن برای همین قیمتهاشونم باهم فرق میکنه
1- خوب حالا کدوم از همه امکاناتش بیشتره
2- نوع mega از همه امکاناتش بیشتر و از نظر مقدار حافضه هم از همه حافضه اش بیشتره بعد نوع 90s و در نهایت نوع tiny
1- این همه امکانات همه توی یک ایسی پس حتما باید یک صد هزار تومنی قیمتش باشه
2- نه اگه بهت بگم که بهترین نوع این میکرو که نوع mega هستش رو توی خود بازار ایران با سه هزار تومن می تونی بخری باورت نمی شه
1- چی فط سه هزار تومن اون هم بهترین نوعش اخه چطور ممکنه این همه امکانات فقط سه هزارتومن اون هم بهترین نوعش!!!!!!!!!!!!!!!!!!!!!!
2- خوب دیگه تکنولوژیه دیگه
1- راستی گفتی یکی از امکاناتش حافضه هستش بگو ببینم اصلا این حافضه به چه دردی می خوره؟؟
2- یادت میاد که بهت گفته بودم که باید به این میکرو فرمان بدیم
1- اره
2- خوب این فرمان ها رو ما با یک نرم افزار مینویسیم
1- خوب چه ربطی داره به سوال من
2- یکم صبر داشته باش . این برنامه ای که مانوشتیم توی این حالفضه قرار می گیره
1- بیشتر توضیح بده
2- حافضه میکرو avr دو تا هستش یکی حافضه بلند مدت که بهش می گن eeprom و دومی هستش حافضه کوتاه مدت که بهش می گن flash
1- خوب فرقشون باهم چیه
2- فرقشون در اینه که در حافظه کوتاه مدت با قطع تغذیه (ولتاژ) میکرو اطلاعات از بین می ره ولی در حافضه بلند مدت با قطع شدن تغذیه میکرو اطلاعات از بین نمیره
1- اها فهمیدم . خوب یادم میاد بهم گفتی که هر کاری ازش بخایم برامون انجام میده چطوری باید بهش بگیم که فلان کار رو انجام بده ؟
2- خوب بزار به صورت کلی بهت بگم که گیج نشی . ما برای کارهایی که از این میکرو می خایم باید بهش برنامه بدیم این برنامه توسط نرم افزار نوشته می شه
1- چه نرم افزاری؟
2- نرم افزارای مختلفی هستش که باهاش برای میکرو برنامه می نویسن برنامه هایی رو که من می شناسم bascom –codvision و ... هستش که من با bascom کار می کنم. خوب حالا بزار ادامه مطلب رو بگم . برنامه ای رو که ما می نویسیم زبان های مختلفی داره
1- منظورت انگلیسی یا فارسی هستش
2- نه بابا منظورم زبان های برنامه نویسی هستش که عبارتند از baisic-c –اسمبلی
1- یعنی باید همه ای زبان های برنامه نویسی رو بلد باشیم
2- نه بابا ناراحت نباش من خودم وقتی که می خاستم میکروکنترلر یاد بگیرم هیچ کدوم از این زبان ها رو یاد نداشتم . چقدر سوال می کنی منو از موضوع پرت کردی . هر کدوم از این زبان ها در یک نرم افزار خاص خودش نوشته می شه مثلا اگه دوست داشتی برنامه رو با زبان بیسیک بنویسی باید با نرم افزار baisic کار کنی اگه خاستی با زبان c برنامه بنویسی باید با نرم افزار codvision برنامه بنویسی . خوب حالا وقتی که برنامه رو نوشتی باید برنامه رو بریزی توی میکرو . حتما می خای بپرسی چطوری برنامه رو میریزن توی میکرو خوب بهت می گم با یک پروگرامر
1- چی پروگرامر دیگه چیه؟
2- نترس پروگرامر وسیله ای هستش که میکرو رو روی اون قرار میدی ویک سر دیگش وصل می شه به پرینتر کامپیوتر بعد که به کامپیوتر نصب شد از طریق نرم افزار فرمان ارسال برنامه به داخل میکرو رو میدی مثلا در نرم افزار بیسکام که بعدا مفصلا بهت توضیح میدم با زدن کلید F4 برنامه ریخته می شه داخل میکرو
1- ببین من نفهمیدم نقش این پروگرامر این وسط چیه
2- پروگرامر واسطه ای هست میان میکرو و کامپیوتر . خوب اخه مرد حسابی برنامه ای که تو برای میکرو نوشتی باید بره توی میکرو یا نه . پس از روی هوا هم که نمی شه برنامه رو فرستاد پس میان یک پروگرامر وصل می کنند به کامپیوتر و میکرو رو روی این پروگرامر قرار میدن بعد از توی کامپیوتر فرمان ارسال برنامه رو می دن
1- ببین درست فهمیدم یا نه پروگرامر تنها نقشی که داره اینه که برنامه ای که ما توی کامپیوتر نوشیتم رو بریزه توی میکروکنترلر
2- افرین
1- بازم سوال دارم
2- بگو
1- این امکاناتی رو که گفتی میکرو داره چطوری می تونیم ازش استفاده کنیم
2- این کار رو موقع برنامه نویسی بهش می گیم . مثلا می خایم از کانتر میکرو ( کانتر به معنی شمارنده ) استفاده کنیم . باید در اول برنامه بنویسیم که از کانتر می خا هیم استفاده کنیم . به این کار در اصتلاح می گویند config . البته بعدا درباره برناه نویسیش – نحوه کار با نرم افزار – اتصال سخت افزاری میکرو برای کامل توضیح می دم
1- یک مثال می تونی بزنی که کاربرد این میکرو و امکاناتش چیه؟؟؟
2- اره ولی قول بده که نترسی که برنامه شو بنویسم چون که بعدا درباره کل دستورات برنامه نویسی و نحوه کار با نرم افزار برات توضیح می دم
1- باشه
2- خوب گفتی یک مثال بزن منم یم مثال خیلی ساده میزنم . فرض کن که با دو تا میکروسوییچ می خایم یک led رو روشن خاموش کنیم . برای این کار اول باید برنامه توسط نرم افزار نوشته بشه که من در اینجا از زبان بیسیک برای نوشتن برنامه استفاده میکنم :

کد:
$regfile = "8515DEF.DAT"
$crystal = 8000000  
Config Porta = Output
Config Pinb.0 = Input
Config Pinb.1 = Input
Config Debounce = 25
Do
Debounce Pinb.0 , 1 , Sett , Sub
Debounce Pinb.0 , 1 , Resett , Sub
Loop
End

Sett:
Set Porta.0
Return
Resett:
Reset Porta.0
Return


1- خوب درباره اینا توضیح بده
2- صبر داشته باش اسیاب به نوبت گفتم که بعدا درباره تک تک دستورات و نحوه کار با نرم افزار برات توضیح می دم
1- قول می دی
2- قول می دم که تک تک دستورات رو با مثال زباد برات توضیح بدم
1- خوب حالا من چکار کنم
2- فعلا برو نرم افزار بیسکام (bascom) رو نصب کن تا بعد
1- باشه پس فعلا تا بعد

منبع: iranled.com

عرفان بیگی بروجنی | ۲۷ ارديبهشت ۹۷ ، ۱۸:۱۵