طراحی کنترلر، مدارت دلخواه، پروژه ها و تمرینات درس میکروکنترلرها
یک مدار صوتی جهت پخش فایل های صوتی MP3 و WMV با Sampling rate 8KHz-48KHz و خروجی دیجیتال به آنالوگ 24 بیتی می باشد که از حافظه های Micro SD تا 32GB و فرمت های FAT16 و FAT32 پشتیبانی می کند.در صورتی که برق شهر از حداقل تعریف شده کمتر، یا از حداکثر بیشتر شود رله خروجی قطع خواهد شد و از طریق بازر بوق هشدار پخش می شود. ولتاژ فعلی، زمان باقیمانده تا اتصال رله و پیغام ها روی نمایشگر نشان داده می شود.این پروژه در اصل یک شمارنده می باشد که می توان عبور مرور افراد از یک گیت را شمارش کرد، شمارنده هم می تواند به صورت بالا شمار و هم پایین شمار کار کند. همچنین توسط شدت نور یک عدد LED می‌توان سنسور فرستنده و گیرنده را در یک راستای مستقیم تنظیم کرد. سنسورها ار نوع مادون قرمز با برد تقریبی 120cm می باشد.ساعت دیواری دیجتال با قابلیت نمایش ساعت و دقیقه، دمای اتاق، تاریخ شمسی، روز هفته، زدن تک بوق وقتی که زمان یک ساعت جلو می رود، تنظیم ساعت و دما تنها با 2 کلید. ابعاد ساعت 33*27 سانتی متر می باشد.این پروژه در اصل یک قفل امنیتی است که می توان جلوی درب اصلی منزل (در کنار آیفون) آن را نصب کرد. از امکانات آن می توان به موارد زیر اشاره نمود: نمایش دما از 125 تا 55- درجه سانتیگراد، نمایش ساعت دقیق، نمایش تاریخ شمسی همراه با روز هفته به صورت فارسی، نمایش تعداد فرصت های باقیمانده برای وارد کردن رمز صحیح، و قفل شدن سیستم به مدت 15 دقیقه در صورتی که 4 بار رمز اشتباه وارد شود. امکان تغییر رمز و تنظیم کردن ساعت و تاریج و ...
پروژه mp3 پلیر ساده با avr به زبان C

MCP-32

پروژه mp3 پلیر ساده با avr به زبان C
پروژه محافظ لوازم برقی با avr و نمایشگر LCD

MCP-23

پروژه محافظ لوازم برقی با avr و نمایشگر LCD
پروژه شمارش افراد با سنسور مادون قرمز و avr

MCP-6

پروژه شمارش افراد با سنسور مادون قرمز و avr
پروژه ساعت دیواری دیجیتال به همراه تاریخ شمسی و دما با avr

MCP-13

پروژه ساعت دیواری دیجیتال به همراه تاریخ شمسی و دما با avr
پروژه دربازکن الکترونیکی خانه قفل رمز با avr

MCP-5

پروژه دربازکن الکترونیکی خانه قفل رمز با avr

آموزش نرم افزار گرافیکی Flowcode-AVR

www.picpars.com آموزش نرم افزار گرافیکی Flowcode-AVR 219

در این مقاله آموزشی که تنها در وب سایت برنامه نویسی میکروکنترلرها ارائه می شود تصمیم گرفتیم به آموزش و نحوی کار کردن نرم افزار قدرتمند Flowcode نسخه AVR  بپردازیم. همانطور که می دانیم این نرم افزار گرافیکی است یعنی اینکه شما برای نوشتن برنامه تان هیچ نیازی ندارید که یکی از زبان های متنی مانند اسمبلی یا سی یا بیسک را یاد بگیرید بلکه کافی است تجسمی از کار برنامه مورد نظرتان را در در ذهن داشته باشید و آن را به صورت فلوچارت با بلوک ها و ماکرو های مختلف پیاده سازی کنید. بله به همین راحتی از برنامه نویسی لذت ببرید....

شعار این نرم افزار این است:  No Coding, No Limits بدون محدودیت،  بدون برنامه نویسی (کد).  در ادامه ما به توضیحاتی در مورد محیط نرم افزار و نحوی کار کردن با آن خواهیم پرداخت.

از بخش سفارش طراحی هم اکنون درخواست خود را ثبت کنید
حل و تشریح کلیه تمرینات درس میکروکنترلر AVR
طراحی و ساخت مدارات دلخواه شما با میکروکنترلر AVR


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

ابزارهای Flowcode

  1. در صورتی که کامپایلر مخصوص این نرم افزار را داشته باشید ابتدا برنامه شما را کامپایل کرده و سپس فایل هگز خروجی را در حافظه  میکرو کپی می کند.
  2. این گزینه تنها فایل هگز را در محل ذخیره شده فایل پروژه برای شما تولید می کند. (شما می تونید این فایل را با انواع مختلف پروگرامرها روی میکروی مورد نظرتان کپی کنید)
  3. این گزینه هم تنها فایل C برای شما تولید خواهد کرد یعنی فلوچارت شما را به معادل زبان سی آن تبدیل خواهد کرد.
  4. با این گزینه شما می توانید برنامه تان را پله پله اجرا کنید.
  5. همانند گزینه 4 هست.
  6. متوقف کردن شبیه سازی
  7. مکث شبیه سازی
  8. اجرای شبیه سازی (لازم به ذکر است که خود Flowcode امکان شبیه سازی را نیز دارد)
  9. بلوک ورودی: در این بلوک شما می توانید یکی از پورت های میکرو را به صورت بیتی یا کلی به ورودی تبدیل کنید.
  10. بلوک خروجی: در این بلوک شما می توانید یکی از پورت های میکرو را به صورت بیتی یا کلی به خروجی تبدیل کنید.
  11. بلوک تاخیر: این بلوک برای شما تاخیر هایی در رنج های میکرو،میلی و ثانیه ایجاد می کند.
  12. بلوک تصمیم گیری (if): این بلوک همانند دستور if در زبان سی یا بیسک عمل می کند که دوحالت دارد یا شرط برقرار می شود یا نمی شود که هر کدام یک مسیر جداگانه دارد می توان دستورات دیگری در آنها قرار داد.
  13. بلوک سوئیچ (Switch): این بلوک هم که کاملا پیدا که چه عملی انجام می دهد. یک متغییر را به عنوان ورودی گرفته و با حالت هایی که ما برای آن تعریف کرده ایم مقایسه می کند و در صورتی که مقدار متغییر با مقدار یکی از حالات برابر باشد دستورات مربوط به آن حالت اجرا می شود.
  14. تعریف کردن برچسب (Lable): با استفاده از این بلوک شما می توانید یک برچسب در هرجای برنامه که مایل بودید ایجاد کنید تا بعد توسط بلوک شماره 15 در هر جای برنامه که خواستید کنترل آن را به برچسب مربوطه ارجاع داد.
  15. رفتن به برچسب: با کمک این بلوک شما می توانید کنترل برنامه را به قسمت دیگری از برنامه ارجاع دهید.
  16. بلوک حلقه (Loop): عمکرد این بلوک هم خیلی واضح می باشد همانند دستور Do  While می باشد یعنی ایجاد یک حلقه بی نهایت.
  17. بلوک Call Macro: عملکرد این بلوک دقیقا شبیه به ایجاد توابع در زبان سی یا بیسیک می باشد به این صورت که این ماکرو تعدادی متغییر ورودی دارد و یک متغییر برگشتی که دستورات مربوطه داخل این ماکرو نوشته می شود و به صورت یک تب جداگانه در نرم افزار ایجاد می شود، و در هرجای برنامه Main می توان آن را فراخوانی کرد و از دستورات داخل آن استفاده کرد.
  18. بلوک Call Component Macro: عملکرد این بلوک به طور خلاصه به این صورت می باشد که  وقتی شما از قسمت ماژول ها یک کامپوننت را به قسمت پنل اضافه کنید و بعد با دوبار کلیک کردن روی بلوک Call Component Macro شما می توانید با انتخاب کامپوننت مورد نظر از جعبه ماکرو  تابع دلخواه را انتخاب کنید و از عملکر آن ماکرو در برنامه استفاده کنید. به عنوان مثال اگر شما  کامپوننت LcdDisplay را به صفحه پنل اضافه کنید و بعد یک Call Component Macro به برنامه تان اضافه کنید با دوبار کلیک کردن روی آن پنجره ای باز می شود که شما در جعبه کامپوننت باید LcdDisplay(0) را انتخاب کنید تا ماکرو های آن در جعبه سمت راست آن ظاهر شود و با انتخاب ماکروی مورد نیاز و OK کردن از آن استفاده نمائید. به عبارت دیگر شما می توانید با اینکار از توابع نوشته شده LCD استفاده نمائید، که این بلوک یکی از پرکاربرد ترین ها در هر برنامه ای می باشد.
  19. بلوک Calculation: در اینجا شما می توانید هرگونه عملیات ریاضی و محاسباتی را انجام دهید که البته در این بلوک function ها و توابع مختلف ریاضی نیز موجود است.
  20. بلوک String Manipulation: این بلوک همانند بلوک calculation می باشد با این تفاوت که کلیه عملیات بر روی یک رشته انجام می شود. مثلا تبدیل عدد به رشته یا برعکس و ....
  21. بلوک Interrupt: عملکرد این بلوک هم خیلی واضح می باشد، برای مدیریت وقفه ها در میکروکنترلر استفاده می شود.
  22. بلوک C Code: در صورتی که ماکرو های flowcode نیاز شما را براورده نکرد شما خودتان می توانید به زبان C ماکرو یا تابع و ... در درون آن بنویسید.

تا اینجا با ابزارهای flowcode اشنا شدید و اکنون به سه قسمت اصلی آن می پردازیم:

  1. قسمت برنامه نویسی گرافیکی با Main: یک صفحه شطرنجی می باشد و شما برنامه مورد نظرتان را باید در این محیط  در اصل بکشید که با BEGIN شروع می شود و با END خاتمه می یابد. که شما باید با  Click drage کردن ابزار ها را بین این دو تگ قرار دهید.
  2. پنجره خصوصیات: در این پنجر شما می توانید تمامی خصوصیات یک کامپوننت را ببینید و حتی مقادیر آنها را ویراش کنید.
  3. پنل Panel: تمامی کامپوننت هایی که شما در قسمت ماژول های اضافه می کنید وارد قسمت پنل می شود که هر کامپوننت را می توانید با کلیک راست کردن بر روی آن پیکره بندی کنید که شامل بخش  های زیر می باشد: 1-Ext Properties در اینجا شما می توانید کامپوننت مورد نظر را پیکره بندی کنید 2-connections در اینجا شما می توانید اتصالات پین ها را پیکره بندی کنید 3- Custom code در این قسمت شما می توانید ماکروهای مربوط به یک کامپوننت را به صورت دستی دستکاری و یا ویرایش کنید 4- Delete پاک کردن کامپوننت مورد نظر 

تعریف متغییر:

 شما در هر جایی از برنامه می توانید یک متغییر جدید ایجاد کنید. با دابل کلیک کردن روی هر بلوکی پنجره ای باز می شود که  مطابق شکل زیر است

 انتخاب متغییر در flowcode

برای تغییر دادن نام متغییر یا نوع متغییر در شکل بالا قسمت 2 باید Rename variable و Array size برای متغییرهای رشته ای را کلیک کرده و مقادیر جدید را وارد کنید.

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

 

این مقاله همراه با توضیحات آن تنها در وب سایت www.picpars.com به صورت متن باز ارئه شده و کپی برداری از آن تنها با ذکر منبع امکان پذیر می باشد.

با تشکر فراوان سید محسن قاسمیان

ورژن نرم افزار ها: Flowcode-AVR v4

  منبع: www.picpars.com

  لطفا مقالات، آموزش‌ها و پروژه های خود را به آدرس ایمیل ارتباطی ایمیل نمائید تا آن را با نام خودتان در سایت منتشر کنیم.

به این مطلب امتیاز دهید

برچسب ها:
تاریخ ارسال پنجشنبه، 27 مرداد ماه، 1390    نویسندهنویسنده: مدیریت    نظرات 12 نظر    بازدید بازدید [ 34720 ]   پرینتنسخه چاپی
فایل پی دی اف فایل پی دی اف   ارسال به دوستان ارسال به دوستان