این بحث شاید خیلی عمومیت نداشته باشد. واسه همین، تعجب نمیکنم که بگویید: “آخه کی در برنامه نویسی میکروکنترلر نیاز به این کار داره؟!” اما اگر به هر دلیلی به دنبال راهکاری برای مرتب یا sort کردن تعداد زیادی از اعداد در برنامه میکروکنترلر خود میگردید، شاید shell sort همان چیزی باشد که به دنبالش هستید. این پست حاصل تحقیقات چند روزهی من پیرامون این موضوع بوده.
ماسفت در نقش سویچ
تو دانشگاه خیلی چیز زیادی از ماسفت ها دستگیرم نشد. دلایلش رو مطمئن نیستم. اما سعی کردم با توجه به چیزهایی که به ذهنم میرسه، تو این پست با دیدی متفاوتتر به معرفی ماسفت ها بپردازم. شاید کمی از نگاه علمی و دقیق فاصله بگیریم. اما به نظرم این فاصله کمکمون میکنه راحتتر صحبت کنیم و بهتر اونها رو به ذهن بسپاریم. امیدوارم به اون شهودی که در نظرم هست در انتهای نوشته برسید تا بتونید ازش در طراحیهاتون با ماسفت کمک بگیرید.
معرفی پادکست رادیو دال + پیشنهاد دو قسمت دیجیلاگیستی
خیلی از ماها عاشق سفریم، سفری که به ما سبک زندگی، مدل ذهنی و سایر جنبههای زندگی مردم سایر نقاط دنیا رو تا حدی نشونمون بده. قطعاً این نوع سفر تو رشد شخصیتی یک آدم بسیار تاثیر گذار خواهد بود. اما خب برای هممون وقت، بودجه و بطور کلی امکان چنین چیزی فراهم نیست. اما این به این معنی نیست که کلاً باید بیخیال این تجربه شد. راههای دیگری هم هست که میتونه به ما در پر کردن این گپ کمک کنه. تو این پست میخوام پادکستی رو معرفی کنم که برای من حکم یکی از این راهها رو داره.
فیلتر دیجیتال در Input Capture میکروکنترلرهای STM32
تو این پست میخوام در خصوص فیلتر دیجیتال در Input Capture میکروکنترلرهای STM32 صحبت کنم. یک بخش کوچک اما مهم. اگر با این پریفرال آشنا باشید میدونید که خود این واحد زیرمجموعهای از پریفرال تایمر به حساب میاد و برای دیدن رجیسترهاش در رفرنس منوال باید سراغ بخش تایمرها برویم.
چه زمان باید از کلمه کلیدی volatile استفاده کرد؟
در این پست قصد دارم در مورد کاربرد کلمه کلیدی volatile در برنامه نویسی میکروکنترلرها به زبان c صحبت کنم. دانستن اینکه volatile چیست و چه زمان باید از آن استفاده کرد، اهمیت بالایی دارد. طوریکه استفاده نکردن از این عبارت در جای خود، میتواند موجب عمل نکردن برنامه شما شود.
تعریف کانفیگ های مختلف برنامه با کمک #define
فرض کنید شما برنامه نویس میکروکنترلر دستگاهی هستید که قرار است پس از گرفتن اطلاعات از یکسری سنسور، محاسباتی انجام دهد و نهایتاً نتیجه را بر روی نمایشگر به نمایش بگذارد. اوضاع خوش و خرم پیش میرود تا روزیکه مدیرعامل از شما درخواست یک نسخه نمایشی -Demo- برای نمایشگاه میکند. این نسخه به جای اینکه اطلاعات لازم را از سنسورها بگیرد، از مقادیر ضبط شده درون حافظه استفاده میکند. در ادامه خواهیم دید که دستور پیش پردازنده #define چگونه به ما کمک میکند تا همزمان هر دو نسخه را در یک پروژه توسعه دهیم.
TrueSTUDIO – ابزار محبوبِ من برای برنامه نویسی STM32
اینکه سالها درگیر انتخاب یک ابزار شوید بدون آنکه اقدامی انجام دهید، بدترین کار ممکن است. اما از طرفی اگر دیدید ابزاری بهره وری شما را افزایش میدهد، در تهیه و استفاده حداکثر از آن کم کاری نکنید. چراکه به مراتب بیشتر از هزینه اولیهای که بابت استفاده از آن میدهید -مادی و معنوی- به شما سود میبخشد. در ادامه به معرفی مختصری از IDE یا محیط توسعه برنامه نویسی TrueSTUDIO میپردازیم.
پروژه پیاده سازی بازی snake با دات ماتریکس – ورژن 1.0
اگر مطالب گفته شده در سلسله پستهای “دوره رایگان آموزش مقدماتی میکروکنترلر STM32” را به خوبی دنبال کرده باشید، به حدی رسیدهاید که آستینها را بالا بزنید و شروع به پیاده سازی پروژه این دوره کنید. اما قبل از اینکه دست به کار شوید لازم است که توضیحاتی در خصوص سخت افزار مورد نیازمان بدهم.
کنترل 64 led از طریق 16 پایه – ساختار داخلی دات ماتریکس چگونه است؟
در تصویر زیر شما دو عدد دات ماتریکس – Dot matrix – مشاهده میکنید. بلوکی منظم از تعدادی LED که میتواند در بعضی جاها کار ما را در چیدن LEDها سادهتر کند. مثلاً اگر به تابلوهایِ روانِ داخل بانکها یا اتوبوسها دقت کرده باشید. اغلب تشکیل شده از چندین دات ماتریکس کنار هم هستند.
اگر دات ماتریکس شما هم 64 LED تک رنگ بر روی خود داشته باشد، خواهید دید که از سمت دیگر آن تنها 16 پایه بیرون آمده. به عبارتی تنها با 16 پین قرار است 64 LED را کنترل کنید. اما چگونه؟
دوره رایگان گیت به همراه جادی
اگر میدونید که گیت چیه و به چه درد میخوره که چه بهتر. اما اگر دوست دارید علاوه بر این بدونید که چه جوری میتونید ازش در کارهاتون استفاده کنید، توصیه میکنم حتماً یک نگاه به دوره رایگان گیت جادی بندازید.