armeducation
3.59K subscribers
377 photos
329 videos
115 files
376 links
آموزش حرفه ای میکروکنترلرهای ARM

ادمین:
@mzarkoob
مهندس مهدی زرکوب
شروع مطالب :
https://t.me/armeducation/1
اینستاگرام :
@armeducation
کانال ایتا:
https://eitaa.com/armeducation
همراه :
09359956361
Download Telegram
armeducation
خطای GDB server تا حالا با این خطا در CubeIDE مواجه شدید؟ موقع پروگرام در محیط stm32cubeide در صورتی که میکرو اورجینال نباشد با این خطا مواجه می شوید و نمی توانید میکروتان را پروگرام کنید. در حالی که در نرم افزار Keil ممکن است صرفا یک پیغام Not a geniune ST…
گیر بودن پروگرام به آپدیت stlink
وقتی با stm32cubeide کار می کنید ممکنه با این پیغام مواجه بشید. در حالت عادی باید پروگرامر را آپدیت کنیم. ولی مسئله اینجاست که اگه اینترنت نبود باید چه کنیم؟
بله این اتفاق در این چند هفته که اینترنت قطع بود برام پیش اومد.
با کیل میشد پروگرام کرد ولی با cubeide نه.
یک راه اینه که از جیلینک استفاده کنیم. ولی اگه اونم دم دست نداشتیم چه؟
راه دیگه اینه که در IDE تنظیم کنیم بهمون هگز بده و اونو با cubeprogramer رو میکرو بریزیم. امیدوارم در این مسیر براتون مشکلی پیش نیاد که فکر نکنم دیگه راهی باشه و باید کاسه چه کنم دستتون بگیرید.
@armeducation
👍102
عدم اتصال پروگرامر با cubeprogramer
در اینجا دو پروگرامر stlink داریم. هر دو پروگرامر از کیل و IDE میشه پروگرام کرد ولی همان طور که در تصویر میبینید پروگرامر بالایی در STM32CubeProgrammer اصلا سریال را شناسایی نمی کنه، چه برسه کانکت بشه!
در قسمت قبلی گفتم گاهی لازم میشه بخواهید فایل هگز را روی میکرو بریزید. اون موقع هست که تازه متوجه میشید چه پروگرامری خریدید!!
اول گفتم در یک فیلم این موضوع را نشون بدم ولی دیدم با یک عکس هم میشه مطلب را منتقل کرد.
پروگرامر بالایی را از یک مغازه خریدند و پروگرامر پایینی برای خودمه که قبلا از کویر گرفتم.
@armeducation
👍7🙏1
armeducation
استفاده از پورت سریال و نرم افزار Flash loader برای پروگرام کردن میکروکنترلر stm32 : ابتدا کلید BOOT0 را نگه دارید و در همین حالت، کلید RESET را فشار دهید و بعد رها کنید و سپس نرم افزارFlash Loader را در کامپیوتر اجرا کنید. در اینجا بایستی پایه Tx و Rx…
بوت سریال
در نرم افزار stm32cubeprogramer میشه از گزینه سریال برای اتصال به میکرو استفاده کرد. ولی خوب یه شرط داره وگرنه مثل تصویر خطا میده. باید boot را زده باشید. البته boot0
حالا این به چه دردی می خوره؟
وقتی دیگه با پروگرامر نمیتونید میکرو را پروگرام کنید. این راهیه که میکروتون را نجات بدید. البته از نرم افزار flash loader هم میشه استفاده کرد ولی رو بعضی میکروها مکمنه کار نده.
این مقدمه مطلب بعدیه در مورد طراحی برد.
تا حالا این حالت براتون پیش اومده ؟
@armeducation
👍103
armeducation
ایجاد حالات مختلف بوت با استفاده از پایه های boot0 و boot1 بر روی برد میکروکنترلرهای stm32 @armeducation
Media is too big
VIEW IN TELEGRAM
الزامات سخت افزاری برای استفاده از بوت سریال
تا حالا شده این موارد را انجام نداده باشید و اسباب زحمت براتون شده باشه؟ می دونید کاسه چه کنم چیه و از کجا میشه تهیش کرد!؟
https://aparat.com/v/fdjp4dh
برای ریست به نظرتون چرا بعد تنظیمات لازم بعد پروگرام، برنامه ریست نمیشه؟
@armeducation
👍9🙏1
Media is too big
VIEW IN TELEGRAM
بررسی ریست شدن میکرو بعد پروگرام
به نظر شما در پروژه دوم، بعد از پروگرام، چرا میکرو ریست نشد و برنامه اجرا نشد!؟
https://aparat.com/v/kto75j7
👈 اگه برنامه بعد پروگرام، ریست نشه، تازه نبود 🔑 ریست خودشو نشون میده!
کانال تلگرام و پیج اینستاگرام :
@armeducation
👍71
Forwarded from armeducation (Mahdi Zarkoob)
فیلم آموزش مقدماتی و متوسط میکروکنترلر STM32F429 و STM32F767 و STM32H7
https://kavirelectronic.ir/eshop/film/1201311-film-stm32f429-stm32h743-stm32f767-stm32h750.html
پاسخگویی به سوالات فیلم در گروه‌های پشتیبانی.
جهت خرید :
🆔 @mzarkoob
📞 09359956361
- کامل ترین مجموعه آموزشی
@armeducation
1
armeducation
مشاهده اجرای عملی دریافت دیتا از USART و انتقال به رم به با DMA متوقف نماندن برنامه در موقع دریافت دیتا با استفاده از ویژگی DMA و عدم وقفه های متوالی سریال تکرار دریافت تعداد مشخص شده @armeducation
ارسال و دریافت سریال با DMA
در پروژه به خاطر عدم اتلاف وقت cpu گاهی لازم میشه دریافت و حتی ارسال پورت سریال را با DMA انجام بدیم. این برای مواردی هست که میکرو مرتب باید دیتای های زیادی را ارسال و دریافت کنه. حالا اگه با چندین USART میکرو این کار باید انجام شود که ضرورت استفاده از DMA خیلی بیشتر به چشم میاد. چون در غیر این صورت برای یک ارسال با تعداد کاراکتر بالا، میکرو باید منتظر بمونه و سرعت کار کم میشه و ...
در اینجا به دو صورت رجیستری و با توابع HAL میشه از DMA استفاده کرد. ولی در توابع هال انجام این کار ظاهرا کمی قلق داره. در این برنامه دیتایی که از سریال با dma دریافت شده بر روی همان سریال با dma باید ارسال شود.
اگه DMA در مد معمولی تنظیم بشه که فقط یک بار می تونید ارسال کنید و دفعه بعد کار نمیده.
اگه در مد چرخشی بذارید که بعد یک ارسال، مرتب این کار تکرار میشه. اگه بعد ارسال هم متوقف کنید که دیگه مجدد دریافت هم نمی کنه.
در چه مواردی لازم شده در این پریفرال usart از DMA استفاده کنید و با چه چالش هایی در پروژه مواجه شدید؟
@armeducation
4
armeducation
نمایش تمامی کاراکترهای یک فونت تعریف شده با تابع نمایش رشته : DisplayString48pt(5,30,"0123456789" , Red,Blue); .... @armeducation
تفاوت دو فونت ساخته شده
در نوشته بالا از نرم افزار ساخت فونتی استفاده شده که کاراکتر را وسط قرار نمیده
در نوشته پایین از برنامه دیگری استفاده شده که کاراکتر را وسط می‌ذاره
تفاوت مشخصه. در یک رشته که می خواهیم روی TFT قرار دهیم باید فاصله بین کاراکترها مناسب باشه وگرنه خیلی ضایع خواهد شد!
👈 بالاخره بعد سال‌ها در پروژه ای لازم شد و این موضوع را از پایه درستش کردم
@armeducation
👍63
Media is too big
VIEW IN TELEGRAM
تاچ خازنی و استفاده در پروژه
وقتی از برنامه تاچ خازنی در پروژه استفاده کنید یکی از مواردی که باهاش مواجه میشید همینه که در عمل مشاهده می کنید.
https://aparat.com/v/fxb84wh
چه برنامه نویسی باید انجام بشه تا این مشکل حل بشه؟
آیا از وقفه تاچ میشه استفاده کرد؟
@armeducation
👍62👏2
Forwarded from armeducation (Mahdi Zarkoob)
ورژن جدید فیلم آموزش کاربردی زبان C در میکروکنترلرهای ARM .
سرفصل :
https://kavirelectronic.ir/eshop/film/1201312-c-v2.html
جهت خرید :
🆔 @mzarkoob
📞 09359956361
پاسخگویی به سوالات فیلم در گروه‌های مربوطه.
- کامل ترین مجموعه آموزشی
- شرح تمام موارد برنامه نویسی مورد نیاز در مجموعه فیلم های آموزش میکروکنترلرهای arm
@armeducation
3👌1