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
کاربردی از رم به رم در DMA
همان طور که ذکر شد در بعضی مدل میکروها برای کار با ال سی دی یک فضای رمی در نظر گرفته شده است که با قرار دادن دیتا در این فضا نمایش بر روی ال سی دی انجام می شود.
https://news.1rj.ru/str/armeducation/90
https://news.1rj.ru/str/armeducation/678
همچنین یکی از اقسام انتقال دیتا رم به رم می باشد:
https://news.1rj.ru/str/armeducation/204
بنابراین به نظر شما با ترکیب این دو موضوع می توان به جای ارسال پیکسل به پیکسل توسط cpu به صورت polling به درایور ال سی دی یا خود ال سی دی از dma برای نمایش استفاده کرد!؟
آیا تاکنون این موضوع را اجرایی کرده اید؟
در اینجا هدف استفاده از امکانات میکرو برای نمایش سریع تر در TFT LCD است.
@armeducation
اولین پروژه با ARM بعد از دوره آموزشی میکروکنترلر stm32
درایور ۴ کانال موتور براشلس ، موتورهای اسکوتر
با تشکر از آقای مهندس رضا محزون بابت ارسال
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
اجرای عملی درایو ۴ کانال موتورهای براشلس
قابلیت کنترل مجزای سرعت و جهت ۴ عدد موتور براشلس
@armeducation
توضیح مختصر ارسالی از عملکرد درایور :
درایو ۴ کانال موتورهای براشلس
قابلیت کنترل مجزای سرعت و جهت ۴ عدد موتور براشلس سنسور دار (مثل موتور اسکوتر) از طریق سیگنال های مختلف ورودی (i2c,pwm,analog)

ولتاژ ورودی ۴۲ ولت و توان هر خروجی ۵۰۰ وات

کاربرد اینگونه درایو موتورها استفاده در ربات های سنگین وزن نظامی به منظور راه اندازی سیستم حرکتی ، ویلچر ، موتور سیکلت و دوچرخه های برقی و تمامی سیستم هایی که از موتورهای براشلس به منظور نیروی حرکتی استفاده میکنند
@armeducation
استفاده از IDE کد بلاکز
Code Blocks
در صورتی که بخواهید برای برنامه نویسی از یک کامپایلر استفاده کنید یکی از گزینه ها کدبلاکز است:
http://www.codeblocks.org/
البته گزینه های دیگری هم وجود دارد:
چند نمونه از ویرایشگرهای پر طرفدار و متن‌باز (به نقل از سیسوگ) :

Netbeans
Eclipse CDT
CodeLite
Geany
Qt Creator
@armeducation
Code::Blocks
The open source, cross platform, free C, C++ and Fortran IDE.
صفحه دانلود Source Code :
http://www.codeblocks.org/downloads/25
@armeducation
codeblocks-17.12-setup.rar
35.3 MB
دانلود نرم افزار کدبلاکز

پسورد :
@armeducation
armeducation pinned Deleted message
دلایل عدم ایجاد کتابخانه و نتایج :
ممکن است خیلی برای شما پیش آمده باشد که در پروژه ای وسیله ای را راه اندازی کرده اید و می خواهید در کار دیگری از آن استفاده کنید ولی بدلیل اینکه آن را مرتب نکرده اید و برای آن کتابخانه ایجاد نکرده اید و توضیحات مربوطه را هم ننوشته اید، به این سادگی ها در کار دیگری نمی توانید استفاده کنید و باید زمان بیشتری برای پورت کردن آن صرف کنید.
ایجاد کتابخانه و استفاده از آن از موارد پایه است:
https://news.1rj.ru/str/armeducation/92
که البته در این کار نحوه اعمال ورودی ها و خروجی گرفتن از توابع و ... از موارد دارای اهمیت هستند.
و اما دلایلی که باعت عدم انجام این کار می شود:
- حوصله ندارم! در اینجا ما هم حرفی برای گفتن نداریم. 😊
-وقت ندارم. در اینجا مهم از نظر شما انجام پروژه است و ایجاد دایکیومنت ها به طوری که بعدا در جای دیگری قابل استفاده باشد مهم نیست. این کار انجام می شود ولی در کار دیگری باز باید همان زمان را بگذاریم. در حالی که اگر امکانش بود با صرف وقت کمی می شد کاری کرد که قسمتی از کارمان برای کاربردهای بعد قابل استفاده باشد. عاملی دیگری که در اینجا مانع انجام این کار می شود این است که بگویم مگر این کار چقدر برایمان دارد که تازه این وقت اضافه هم برایش بگذاریم؟ البته اگر قرار باشد کارهای دیگری انجام دهیم و کار از خودمان باشد این زمان را برای خودمان داریم کار می کنیم .
- برای دیگران کار می کنیم که رعایت این چنین موارد جزیی و ... بستگی به نظر یا دقت نظر کارفرما دارد.
- بلد نیستم . اگر زمان برایتان اهمیت دارد بایستی زمانی را صرف یادگیری کنید. در کل این زمان و احیانا هزینه یک سرمایه گذاری برای کارتان محسوب می شود.
@armeducation
مهندس متبحر...

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

مهندس، این امر را به رغبت می پذیرد. او یک روز تمام به وارسی دستگاه می پردازد و در پایان کار، با یک تکه گچ علامت ضربدر روی یک قطعه مخصوص دستگاه می کشد و با سربلندی می گوید : اشکال اینجاست آن قطعه تعمیر می شود و دستگاه بار دیگر به کار می افتد. مهندس دستمزد خود را ۵۰۰۰۰ دلار معرفی می کند.

حسابداری تقاضای ارائه گزارش و صورتحساب مواد مصرفی می کند و او بطور مختصر این گزارش را می دهد:
بابت یک قطعه گچ: ۱ دلار و بابت دانستن اینکه ضربدر را کجا بزنم : ۴۹۹۹۹ دلار
کپی از asriran
—————————————————-
آیا شما از این ضربدرها زده اید؟☺️
@armeducation
👍2
Forwarded from armeducation (Mahdi Zarkoob)
مجموعه فیلم های آموزش کار با نرم افزار STM32CubeMX و توابع HAL

1-1- نحوه ایجاد پروژه در نرم افزار STM32CubeMX برای keil و پروگرام کردن بر روی برد
https://news.1rj.ru/str/armeducation/270
2-1- نحوه تنظیمات در نرم افزار STM32CubeMX برای خروجی کردن پایه ها
https://news.1rj.ru/str/armeducation/282
2-2- نحوه تنظیمات در نرم افزار STM32CubeMX برای ورودی کردن پایه ها
https://news.1rj.ru/str/armeducation/284
3-1- نحوه تنظیمات در نرم افزار STM32CubeMX برای وقفه خارجی
https://news.1rj.ru/str/armeducation/287
4-1- نحوه تنظیمات در نرم افزار STM32CubeMX برای پورت سریال و ارسال یک رشته
https://news.1rj.ru/str/armeducation/290
4-2- دریافت یک کاراکتر و رشته از پورت سریال با استفاده از توابع HAL
https://news.1rj.ru/str/armeducation/295
4-3- دریافت یک کاراکتر از پورت سریال با استفاده از وقفه در توابع HAL
https://news.1rj.ru/str/armeducation/301
5-1- راه اندازی تایمر و وقفه آن با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/331
5-2- راه اندازی PWM با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/334
6-1- راه اندازی ADC با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/341
6-2- استفاده از وقفه در راه اندازی ADC با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/343
7-1- راه اندازی DAC با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/346
8-1- راه اندازی RTC با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/353
8-2- وقفه RTC با تنظیمات در STM32CubeMX
https://news.1rj.ru/str/armeducation/358

@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
مجموعه فیلم های آموزش کار با نرم افزار STM32CubeMX و توابع HAL :

http://www.arm-education.ir/?p=342

@armeducation
عدم استفاده از printf :
برای ارسال متن و متغییر بر روی پورت سریال به سادگی می توان با اعمال تنظیماتی از تابع printf استفاده کرد:
https://news.1rj.ru/str/armeducation/135
در صورتی که نتوانید یا نخواهید از printf استفاده کنید چگونه می خواهید یک متغییر را بر روی پورت سریال قرار دهید؟
یکی از دلایل این نتوانستن این است که حجم کد بیشتری نیاز می شود و برنامه در یک میکرو کوچک جا نمی شود. همچنین برای نمایش عدد بر روی سون سگمنت از printf استفاده نمی شود.
اگر یک عدد 12345 را بخواهید به صورت کاراکتر به کارکتر نمایش دهید چطور این کار را انجام می دهید؟
ابتدا با تقسیمات متوالی یکی یکی اعداد را جدا کرده و با تابع Send_Char ارسال می کنید.
آیا نمی توان این اعداد را در یک آرایه قرار داد و از تابع Send_String استفاده کرد؟
-> همیشه بایستی یک راه حل برنامه نوسی به عنوان جایگزین برای مواقعی که برای استفاده از یک تابع یا الگوریتم یا کتابخانه دچار مشکل می شوید، داشته باشید.
https://news.1rj.ru/str/armeducation/128
@armeducation
جهت تکمیل خودکار کد در کیل
@armeducation
تاچ خازنی با درایور GT911
5-Point Capacitive Touch Controller
با استفاده از مد I2C می توان موقعیت نقاط لمس شده را قرائت کرد.
@armeducation
موقع انتخاب یک پریفرال در STM32CubeMX پایه هایی از میکرو انتخاب می شود. در صورتی که بخواهید خودتان در کدتان تنظیمات GPIO آن پایه ها را اعمال کنید به دیتاشیت مراجعه و نسبت به remap نبودن یا بودن آن اطمینان حاصل کنید.
@armeducation
مشخص بودن کارکرد یک پایه در حالت پیش فرض و حالت remap شده در دیتاشیت میکروهای stm32
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
راه اندازی اولیه OLED 128*64 هفت پایه
ارسال دیتا از میکرو به این نمایشگر در مد SPI می باشد.
به نظر شما بین راه اندازی اولیه و تغییرات متناسب با پروژه جهت استفاده عملی چقدر فاصله وجود دارد؟
@armeducation
Clear_OLED.exe
520.1 KB
یک سمپل اولیه جهت راه اندازی و رفرش OLED
سایز 64*128
هفت پایه
مد SPI .
پسورد :
👇👇👇
@armeducation
👆👆👆