راهنمای خرید و استفاده از کد پروژه های آرم LPC2138

2 ماه پیش | 740 مشاهده شده
پروژه های lpc2138

ویژگی های کلی فریم ورک یونیورسال lpc2000

• کابرد آسان فایل ها در پروژه و ماژولار بودن فریم ورک
• استفاده از دیتا تایپ منطبق با stdint
• داشتن شماتیک پروتئوس در فریم ورک برای کمک به راه اندازی پروژه خود
• رعایت استاندارد MISRA با کمک افزونه های PC-lint و CPP-Check
• داکیومنتینگ و کامنتینگ با استفاده از doxygen
• انتشار رایگان فریم ورک تحت مجوز GPLv3
• در نسخه های اولیه فعلا بر روی lpc2138 کار شده است، در آینده سری های دیگرlpc2000 اضافه خواهد شد.
• امکان خرید پروژه های مختلف که با استفاده از این فریم ورک ساخته شده است.

نرم افزارهای مورد نیاز

• (PCB Design & VSM Simulation Suite 8 (Proteus
• (MDK Version 5 (Keil
• Git for CVS is used

لینک های فریم ورک یونیورسال lpc2000

لینک دانلود فریم ورک

راهنمای فریم ورک یونیورسال lpc2000

چرا ARM؟

ممکن است قبلا متوجه شده‌باشید که پردازنده‌های ARM در همه جا وجود دارند. وقتی به اطرافم (مودم، ال سی دی ها، ال ای دی ها، لب تاپ، تلفن، موبایل، تبلت و غیره) نگاه می‌کنم، می‌توانم دستگاه‌های  بی شماری مشاهده کنم که حداقل یک پردازنده ARM در آن ها به کار رفته است. فکر می کنم که پردازنده ARM یکی از گسترده‌ترین هسته‌های CPU در جهان شده‌است.

این برنامه آموزشی برای افرادی مناسب است که می‌خواهند برنامه نویسی میکروکنترلرهای ARM  را یاد بگیرند. به خصوص کسانی که با برنامه نویسی رجیستر ها مشکل دارند. تجربه داشتن در میکرو کنترلرهای AVR و PIC در سرعت یادگیری برنامه نویسی آرم بسیار تاثیر گذار خواهد بود. شما با این فریم ورک به راحتی قادر به کنترل کردن قسمت های مختلف میکروکنترلر  خواهید بود. اگر از کهنه کارهای برنامه نویسی آرم باشید  حتما اسم  های CMSIS, Std driver وHAL driver  شنیده اید. در این فریم ورک سعی شده لایبرری مشابه  ,CMSIS Std driver و HAL driver شرکت ST (اما کوچک و جمع  وجور) برای میکروکنترلرهای فیلیپس سری 2000 (lpc2000)  پیاده سازی شود. با این وجود چون هدف آموزش و آشنا کردن افراد با میکرو کنترلر های آرم فیلیپس سری 2000 است، ساده بودن هم از اهداف این فریم ورک بوده است.

چرا LPC2000؟

با توجه به اینکه اکثر مبتدی ها، برنامه نویسی میکروکنترلرها را در محیط پروتئوس و با میکروکنترلر های AVR  شروع کرده اند، مزیتی که این سری میکروکنترلرهای شرکت فیلیپس دارد( شبیه سازی آن در پروتئوس) کار را برای آموزش برای مدرس راحت می کند. بنابراین میکروکنترلر های آرم فیلیپس سری 2000 برای اهداف آموزشی و دانشگاه ها بهترین انتخاب است.  من هم در این وبلاگ بر روی این خانواده تاکید خاصی خواهم داشت.

فریم ورک یونیورسال lpc2000

بعد از کار کردن  بر روی میکروکنترلرهای آرم شرکت ST و مسلط شدن بر آنها تصمیم گرفتم میکروکنترلری غیری از ST تجربه کنم. با بررسی و جستجو هایی که انجام دادم، در نهایت  بین دو راهی انتخاب میکرو کنترلرهای مایکروچیپ یا فیلیپس (NXP)مردد بودم،  اما سرانجام  فیلیپس را انتخاب کردم.  علی رغم اینکه میکروهای اس تی نسبت به دو شرکت مایکروچیپ و فیلیپس ارزان قیمت تر هستند، فیلیپس  سری 2000 نسبت به اس تی برای طراح امبدد گزینه راحت تری است( در طراحی اس تی شما باید از دیباگر جی لینک و لاجیک آنالایزر و .. استفاده کنید).  علاوه بر آن شما در پروتیوس 8 قادر خواهید بود میکروکنترلر های شرکت فیلیپس را شبیه سازی کنید. همین مسئله سرعت توسعه برد شما را چندین برابر خواهد کرد( دقیقا مشابه میکروکنترلرهای ای وی ار که در دهه گذشته بین امبدد کار ها معروف شده بود).

نحوه راه اندای فریم ورک

این فریم ورک شامل دو فولدر inc و src می باشد. کافی است شما در محیط برنامه نویسی Keil فولدر inc که شامل هدر فایل ها است به پروژه اضافه کنید. علاوه بر هدر فایل ها، تمام سورس های مختلف فریم ورک که در پوشه src قرار دارد، یک بار برای همیشه به پروژه خود اضافه کنید. بعد از آن آماده اید میکروکنترلر ها را به کار بگیرید.

افزودن هدر فایل ها به پروژه
افزودن هدر فایل ها به پروژه
افزودن سورس ها به پروژه
افزودن سورس ها به پروژه
افزودن سورس ها به پروژه
افزودن سورس ها به پروژه

سخنی با کاربران

به هر طریقی که می‌‌اندیشید از جمله گزارش اشکالات، پیشنهادات، انتقادات، معرفی به دیگران، مشارکت در توسعه فریم ورک و غیره  مشارکت نمایید یقینا برای ما مایه دلگرمیست. برای حفظ حقوق نویسنده و کمک به برنامه نویسان و دانشجویان با استفاده از این فریم ورک مثال هایی به صورت پروژه های ساده  دانشجویی آماده شده است. شما با پرداخت مبلغی مناسب قادر به دانلود آنها خواهید بود.

نکته مهم: لازم به ذکر است توسعه دهنده  گان وظیفه ای بابت آموزش مباحث زبان های برنامه نویسی  سی و مباحث سطح پایین و غیره ندارد و موارد توضیح داده شده (استفاده از فریم ورک) ضروری بوده اند.

نکته مهم: کلیه حقوق مادی و معنوی این  فریم ورک مربوط به توسعه دهنگان می باشد و خریدار کسی است که به عنوان شخص حقیقی یا حقوقی اقدام به خرید و پرداخت هزینه  و استفاده از محصول می نماید. هرگونه کپی برداری و انتشار مثال های این فریم ورک بدون اجازه توسعه دهنده غیر مجاز و غیر قانونی است.

برای خرید پروژه های این فریم ورک به این لینک مراجعه کنید.



ادامه خواندن


اپن سی وی و سیستم های امبدد

4 ماه پیش | 232 مشاهده شده
پردازش تصویر

OpenCV یک کتابخانه از توابع برنامه نویسی است که عمدتا جهت پیاده سازی بینایی کامپیوتر در زمانی بلادرنگ طراحی شده است. در ابتدا توسط اینتل توسعه داده شد، بعدا توسط Willow Garage و سپس Iteez پشتیبانی شد. این کتابخانه چندسکویی است و برای استفاده( تحت مجوز BSD) به صورت اپن سورس عرضه گشته است. سیستم امبدد یک کنترل‌کننده با یک کاربرد اختصاصی در سیستم های مکانیکی یا الکتریکی بزرگ‌تر(اغلب با محدودیت‌های زمانی و سرعت ) است. این دستگاه به عنوان بخشی از یک دستگاه کامل، شامل سخت‌افزار و قطعات مکانیکی و غیره می باشد. امروزه از سیستم های امبدد در بسیاری از وسایل متداول زندگی روزمره استفاده می شود. در سال های اخیر بر روی ساخت سیستم های امبدد  با قابلیت بینایی ماشین کار شده است، علی رغم تلاش های زیادی که انجام شده، پردازش بلادرنگ تصویر در سیستم های امبدد هنوز مسئله نو و حل نشده (از نظر کاهش قیمت و سادگی کار) است. در این پست راهکارهایی که در سال های اخیر ارائه شده است مرور خواهیم کرد.

پایان نامه ای که سعی کرده پردازش تصویر را بر روی میکروکنترلرهای فیلیپس پیاده سازی کند، اما در نهایت به علت عدم در نظر نگرفتن چالش های پردازش تصویر به هدف پروژه نرسیده است. اولین چالش اینکه رم میکروکنترلرها در حدی نیست که تصاویر با کیفیت را در خود نگه دارد، نویسنده پایان نامه راه حل دوم،  ذخیره عکس بر روی حافظه فلش میکرو را بررسی کرده، با این روش  هم تصاویر با یک بار برنامه ریزی قابل تغییر نخواهد بود  ورسیدن  به هدف اولیه نا ممکن است، روش سوم استفاده از اس دی کارد است، از آنجا متدهای خواندن و نوشتن  حافظه اس دی (نسبت به پردازش بلادرنگ) کند هستند، در نهایت پردازش تصویر بر روی میکروکنترلر ها به طور کامل منتفی شده است.



ادامه خواندن



کرای انجین در مقایسه با آنریل انجین

2 سال پیش | 92 مشاهده شده
cry engine

یکی از انجین های  بازی سازی محبوب در سال های اخیر کرای انجین را می توان نام برد. چهار پنج سال پیش انجین های بازی سازی با این قدرت رایگان نبودند، اما بعد از انتشار سورس و رایگان شدن آنریل انجین4، رقابت شدیدی که بین کرای انجین و آنریل انجین ایجاد شده بود، در نهایت کرای انجین هم سورس خود را منتشر کرد و لایسنس آن رایگان شده است. البته لازم به ذکر است، هنگام نصب آنها شما باید یک اگریمنت را بپذیرید، که خلاصه آن در صورتی که فروش بازی تون از یک حد گذشت باید درصدی از فروش خود را به شرکت های صاحب موتور بازی پرداخت کنید.من که فکر می کنم لایسنس خوبی است، سال های گذشته  چنین شانسی فقط با UDK ممکن بود، که آن دارای محدودیت های  از جمله عدم فراهم بودن ابزارهای آماده مدلسازی، عدم کامپایل برای موبایل و کونسول ها البته اگه اشتباه نکنم، فقط برای پی سی و مک امکان بازی سازی بود. اما الان دو انجین بازی خیلی قدرمتند رایگان و بدون استفاده غیرقانونی در اختیار ما است، من در این پست به ویژگی های کلی کرای انجین خواهم پرداخت، در روزهای آینده همان طور که آنریل انجین را کامپایل کردیم، این انجین بازی هم کامپایل خواهیم کرد.



ادامه خواندن



کامپایل سورس کد آنریل انجین

2 سال پیش | 143 مشاهده شده
UNREAL ENGINE

در این پست با نحوه کامپایل سورس کد آنریل انجین آشنا می شویم، کامپایل کردن سورس آنریل انجین در ویندوز 8.1 انجام خواهد شد. آنریل یکی از محبوب تری موتورهای بازی سازی است، که توسط استدیو اپیک گیمز ارایه شده است. آنریل خیلی وقت نیست، که سورس آن برروی گیت هاب انتشار یافته، از طرفی برخلاف قبل رایگان شده است. برای کامپایل از ویژوال استدیو سی پلاس پلاس استفاده کرده ایم. این آموزش برای کامپایل آنریل در ویندوز 10 هم می تواند به کار رود. برای کامپایل سورس آنریل انجین باید یک سری پیش نیاز ها را فراهم کنید، که در ادامه آورده خواهد شد.



ادامه خواندن



سوکت پروگرمینگ در کیوت

3 سال پیش | 72 مشاهده شده

 

سوکت پروگرمینگ یک بحث جذاب داخل شبکه است، در اینجا به بحث سوکت می پردازم،مثال های را ارایه می کنم. ترجمه سوکت به معنای حفره یا پریز هم می باشد، و در بحث های سخت افزاری هم با این واژه به کار می بریم. در بحث سوکت نویسی بهتره بری درک بهتر دوره های از شبکه گذرانده باشیم. هر سوکت در برنامه نویسی آبجکت گرا یک آبجکت است، که این آبجکت داری دو پروپرتی خیلی مهم است، یک آدرس آی پی که  شناسه و آدرس سوکت ما می باشد. در سوکت پروگرمرینگ ما دو سمت داریم، یکی سمت کلاینت، سمت سرور، که قاعدتا کلاینت یک سرویس می گیرد،سرور هم که مشخص است سرویسی را به کلاینت ها ارایه می کند.



ادامه خواندن