armeducation – Telegram
armeducation
3.58K subscribers
367 photos
326 videos
115 files
370 links
آموزش حرفه ای میکروکنترلرهای ARM

ادمین:
@mzarkoob
مهندس مهدی زرکوب
شروع مطالب :
https://news.1rj.ru/str/armeducation/1
اینستاگرام :
@armeducation
کانال ایتا:
https://eitaa.com/armeducation
همراه :
09359956361
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
سرعت رفرش TFT وقتی به جای مد FSMC از GPIO استفاده شود.
مقایسه سرعت با:
https://news.1rj.ru/str/armeducation/52
-> برای رفرش سریع، مد gpio برای ارسال دیتا در این مدل میکروها با کلاک 72MHz کند است.
@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
دو مشکل برای کسانی که می خواهند با میکروکنترلرهای ARM شروع به کار کنند معمولا مشاهده می شود:
اول عدم آشنایی کافی با برنامه نویسی زبان سی است.
دوم عدم توانایی انجام کار است. بدین معنا که نمی توانند پریفرال های مختلف را با هم ترکیب کنند و کار مورد انتظار را پیاده سازی کنند.
ابزار آموزش باعث تسهیل کار می شود ولی چیزی جای تمرین و پشتکار را نمی گیرد.
@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
قبل از کار با میکروکنترلرهای ARM و در راه اندازی پریفرال های میکروکنترلرهای ARM، بایستی به این موضوع توجه شود که :
• پیش نیاز کار با میکروکنترلرهای ARM ، آشنایی با زبان C می باشد.
• پیش نیاز اجرای پروژه میکروکنترلرهای ARM ، تسلط به زبان C و تسلط به خود میکروکنترلر می باشد.
• تسلط به زبان C و تسلط به خود میکروکنترلرهای ARM، نیاز به تمرین و صرف زمان دارد.
در توضیح پیش نیاز بودن آشنایی با زبان برنامه نویسی سی، کارآموز در حین شرح رجیسترها و برنامه ها و کار با توابع با ایراد و سوال برنامه نویسی C مواجه نمی شود و توجه خود را صرف نحوه تنظیمات رجیسترها و نحوه استفاده از آنها و سایر تنظیمات می کند.
(فیلم آموزش کاربردی زبان سی در میکروکنترلرهای ARM :
http://goo.gl/PoYFu1
به منظور پر کردن این خلا می باشد.)
حال سوال اینجاست که صرف یادگیری راه اندازی پریفرال های میکروکنترلرهای ARM، کافیست!؟
@armeducation
در حیطه برنامه نوسی میکروکنترلرهای ARM می توان اطلاعات زیادی از منابع مختلف بدست آورد. چه از منابع آموزشی چه از رفرنس های اصلی مانند رفرنس منوال و ... . مسئله ای که در اینجا مهم به نظر می رسد این است که این همه اطلاعات در کجا بدرد می خورد و چه کارایی دارد؟ بنابراین ابتدا باید در کاری این اطلاعات لازم باشد که شما برای دانستن آن به منابع مراجعه کنید و آن را یاد بگیرید. در غیر این صورت می بینید زمان زیادی گذاشته اید و انبوهی از اطلاعات دارید که بسیاری از آنها را هیچ گاه لازم نمیشود استفاده کنید. چه بسا این زمان صرف کاری میشد نتیجه ای بهتری هم حاصل می شد. بنابراین لازم است هدف گذاری داشته باشید و مطابق آن هدف اطلاعات لازم را کسب کنید.
اجازه بدهید واضح تر بیان کنم. در توضیحات رجیسترها میبینید شرح بیت های مختلفی که از آن در حالت عمومی تر استفاده نکرده اید داده شده است. یا سمپلهایی برای حالت های مختلف یک پریفرال وجود دارد. یا کامپایلرهای دیگری هم وجود دارد... به صورت کلی یک آشنایی با عملکرد داشته باشید بد نیست تا حداقل در جایی نیاز شد بدانید این قابلیت است و به آن مراجعه کنید. ولی اینکه زمان زیادی صرف آن بکنید تا آن را انجام دهید، بدون اینکه کاری با آن داشته باشید یا کارایی داشته باشد جالب به نظر نمی رسد. از این رو خواندن هزاران صفحه منوال و ... برای شروع لازم نیست بلکه بر اساس نیاز به قسمت مربوطه مراجعه و استفاده نمود. به عنوان نمونه در کاری نیاز به استفاده از gpio و وقفه و سریال و ADC و تایمر و ال سی دی کاراکتری و SD کارت و اترنت است. در این بین ممکن است تنظیمات کلاک هم لازم شود. در حین کار ممکن است ببیند DMA هم لازم شده و نمونه گیری را با آن انجام دهد بهتر است، پس به سراغ این پریفرال هم می رود. و ... بنابراین آیا در این حین فرد وقت خود را صرف usb Device می کند!؟ طبیعتا در حیطه کاری مربوطه هر چقدر لازم باشد دانش خود را زیاد می کند.
@armeducation
👍1
به اطلاع می رساند سوالات مربوط به فیلم های مقدماتی آموزش کار با نرم افزار STM32CubeMX و توابع HAL که در کانال :
https://news.1rj.ru/str/armeducation/359
و در وب سایت :
http://www.arm-education.ir/?p=342
لینک آن قرار داده شده است، در فروم ایران میکرو تاپیک مخصوص آن مطرح نمایید:
goo.gl/g3Nvra
با سپاس 🙏
همان طور که مشاهده می شود می توان در یک پروژه البته با اد کردن کتابخانه های لازم و اعمال تغیرات در کانفیگ، از توابع RL برای NAND Flash و SPI Flash نیز همانند SD و USB Flash استفاده نمود.
@armeducation
تفاوت آموزش و پروژه در چیست؟
در آموزش مسئول انجام پروژه های شخصی فرد نمی توان بود و در پروژه مسئول آموزش فرد. مگر آنکه ذکر شود.
این به چه معناست :
- در آموزش به راه اندازی ها و عملکردها وآشنایی با نحوه عملکرد توابع و نحوه تغییرات در آنها پرداخته می شود و خود فرد با فراگیری آن و تمرین بایستی بتواند خود پروژه ای که مد نظر دارد را انجام دهد .
- در پروژه تحویل داده شده، انجام درست کار مهم است و اینکه بتوان با تغییر دیفاین ها و ... طبق نیاز کارهای متفاوتی انجام داد همین طور عملکرد کلی توابع و نحوه بهربرداری از آن، پشتیبانی و خدمات پس از فروش.
@armeducation
احتراما از دوستان تقاضا میشود فیدبک های خود را از فیلم آموزشی مقدماتی متوسط stm32
https://news.1rj.ru/str/armeducation/292
با ذکر جزییات به بنده ارسال فرمایید.
@mzarkoob
با سپاس 🙏
@armeducation
تبدیل الگوریتم به کد
یکی از مشکلاتی که در کارآموزان مختلف مشاهده شده ضعف در تبدیل الگوریتم به کد است. در اینجا دیگر مشکل راه اندازی پریفرال های مختلف نیست، بلکه مشکل نحوه پیاده سازی یک کاری با این پریفرال هاست.
در نظر بگیرید می خواهید یک عملکردی را به کد تبدیل کنید. در اینجا بایستی بستگی به نوع عملکرد بتوانید مرحله به مرحله کار را توسعه دهید تا کار مورد نظر انجام شود . مهارت برنامه نویسی چیزی است که در اینجا خود را نشان می دهد و این مهارت جز با تمرین حاصل نمی شود. تمرین هم نیاز به صرف وقت دارد. این تمرین را، خود فرد باید بعد از دیدن آموزش انجام دهد. بنابراین تمرین قسمت بعدی فرایند آموزش برای یادگیری است. در اینجا اگر این تمرینات کاربردی باشد بعدا در کارهایی که انجام می شود نیز می توان استفاده کرد.
تمرینات ترکیبی شروع خوبی برای این کار است :
https://news.1rj.ru/str/armeducation/236
همچنین تبدیل کارهای بزرگ به قسمتهای کوچکتر :
https://news.1rj.ru/str/armeducation/127

@armeducation
بعضی از دوستان این موضوع را به من منعکس می کنند که بنده دیدگاه رجیستری دارم و با استفاده از توابع اماده مخالفم! و به بعضی مطالب کانال اشاره می کنند :
https://news.1rj.ru/str/armeducation/93
https://news.1rj.ru/str/armeducation/114
https://news.1rj.ru/str/armeducation/368
https://news.1rj.ru/str/armeducation/369
روش های مختلف پیکربندی کانفیگ پریفرال ها وجود دارد. همچنین توابع مختلف. این خود فرد است که بنا به نیاز بایستی تشخیص دهد متناسب با کار چه چیز مناسب تر است. در این میان می تواند از تجربه های افرادی که در این حیطه کار کرده اند نیز استفاده کند. بنابراین خود فرد دارای حق انتخاب است.
در مجموعه فیلم های آموزشی مقدماتی و پیشرفته LPC و STM (در فروشگاه کویر ) نیز هم رجیستری گفته شده و هم cmsis و هم توابعی مانند RL کیل و در کانال نیز آموزش هایی برای کار با نرم افزار cube وجود دارد:
https://news.1rj.ru/str/armeducation/359
@armeducation
برای کسی که با حیطه میکروکنترلرها و میکروکنترلرهای ARM مواجه می شود و احیانا بخواهد در آن وارد شود این سوال مطرح است که به فرض که اینها را یاد گرفتیم، "چه فایده و چه کاربردی دارد " ؟
- مسلما کسانی که در این حیطه هستند لااقل قسمتی از کاربردها را می دانند و از اطلاعاتشان استفاده نیز می کنند و در این حین به اطلاعات خود نیز می افزایند.
- اگر بخواهید در این حیطه در جایی مشغول کار شوید که قطعا تسلط به میکروکنترلرهای ARM نیاز است. اینکه چقدر تسلط لازم است و چه میکروهایی بایستی کار کرده باشید بستگی به آن محل و نوع کارشان دارد.
- اگر هم بخواهید خودتان کار کنید که قطعا بایستی دانسته هایی داشته باشید و در حین پروژه ای که گرفته اید موارد مجهول را بتوانید حل کنید.
بهانه شروع یادگیری شما می تواند انجام یک کار باشد. مثلا ساخت X. یا ....
بهانه شروع یادگیری شما چه بوده است؟
در صورت تمایل به انتقال تجربه، بهانه شروع خود را به بنده ارسال فرمایید تا منتشر شود.
@mzarkoob
@armeducation
👍1
بهانه شروع یادگیری شما چه بوده است؟
ارسالی از طرف آقای مهدی ابوکهکی

@armeducation
🤔1
ساخت یک کنترلر CNC بهانه من برای شروع یادگیری میکروکنترلرهای ARM !
یادمه سال 1389 بعد از فارغ التحصیلی، رفته بودم خدمت یکی از مهندسین باتجربه برق مهندس شکراللهی (البته الان دیگه دکتر هستند 😊 ) ایشون پیشنهاد کردند در زمینه ساخت کنترلر CNC کار کنم و حمایت هایی را در این زمینه خواهند داشت. هر چند حمایت ها به دلایل شرایط بازار ادامه پیدا نکرد و منجر به محصول خاصی نشد ولی این "سرآغازی بود برای آشنایی با میکروکنترلرهای ARM ". در ابتدا چون از میکروکنترلر LPC2378 که آن موقع رایج تر بود می خواستم استفاده کنم لازم بود پریفرال های مورد استفاده را راه اندازی کنم. با توجه به نبود منابع آموزشی در آن زمان، وقت بسیار زیادی صرف جستجو و ... می شد تا یک راه اندازی انجام شود ، آن هم در مباحث مقدماتی! چه برسد به پیاده سازی اصل کار که هدف بود.
یادش بخیر اون قدیما در انجمن ایران میکرو به خاطر همین راه اندازی های ساده چه مباحثی بود. مثل الان خیلی آموزش ها در دسترس نبود. خیلی از دوستان و ارتباطات به خاطر همین فضاها شکل گرفت.
@armeducation
2
در صورتی که تمایل به انتشار مطلب آموزشی مفیدی دارید ارسال شود تا با نام خودتان در کانال قرار داده شود.
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
ارتباط میکرو با sim900
ارسالی از طرف آقای کاوه معینی
@armeducation
نمونه ای از فیدبک های دوستان از فیلم آموزش مقدماتی متوسط stm32f10x
@armeducation
بهانه شروع یادگیری شما چه بوده است؟
ارسالی از طرف آقای کاوه معینی
@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
در صورتی که مطالب آموزشی کانال را مفید می دانید شما معرف کانال به سایر دوستان خود باشید. 👇👇👇
با سپاس
@armeducation
بهانه شروع یادگیری شما چه بوده است؟
ارسالی از طرف آقای محمد قلی پور
@armeducation
TFT 3.2inch.rar
414 KB
سمپل راه اندازی TFT LCD 3.2" با درایور SSD1289 با میکروکنترلر LPC1768
@armeducation