I2C چیست؟ آموزش SDA و SCL
0

I2C چیست؟ آموزش SDA و SCL

I2C چیست؟

I2C یک باس سریال دو سیمه است که امکان اتصال چند دستگاه را با آدرس‌های مختلف فراهم می‌کند.

SDA و SCL

SDA خط داده و SCL خط کلاک است.

Pull-up

هر دو خط معمولاً به مقاومت Pull-up نیاز دارند.

آدرس‌دهی

هر دستگاه روی باس با یک آدرس مشخص شناسایی می‌شود.

جمع‌بندی

I2C برای سنسورها و تجهیزات کم‌سرعت با سیم‌کشی کم بسیار محبوب است.

ادامه مطلب
تایمر در میکروکنترلر چیست؟
0

تایمر در میکروکنترلر چیست؟

تایمر چیست؟

تایمر یک شمارنده سخت‌افزاری است که بر اساس کلاک میکروکنترلر یا سیگنال خارجی افزایش می‌یابد.

Prescaler

Prescaler فرکانس ورودی تایمر را تقسیم می‌کند تا بازه زمانی قابل استفاده افزایش یابد.

Overflow

وقتی شمارنده از بیشترین مقدار عبور کند، سرریز رخ می‌دهد و می‌تواند وقفه ایجاد کند.

کاربردها

تولید تاخیر دقیق، PWM، اندازه‌گیری فرکانس و زمان از کاربردهای اصلی تایمر هستند.

جمع‌بندی

تایمر یکی از مهم‌ترین واحدهای جانبی در برنامه‌نویسی میکروکنترلر است.

ادامه مطلب
وقفه یا Interrupt چیست؟
0

وقفه یا Interrupt چیست؟

Interrupt چیست؟

وقفه به میکروکنترلر اجازه می‌دهد هنگام رخداد رویداد خاص، اجرای عادی را موقتاً متوقف و کد مربوط به آن رویداد را اجرا کند.

ISR چیست؟

تابع سرویس وقفه یا ISR باید تا حد امکان کوتاه و سریع باشد.

Polling در برابر Interrupt

Polling دائماً وضعیت را بررسی می‌کند، اما وقفه تنها هنگام رخداد رویداد فعال می‌شود.

نکات طراحی

انجام پردازش سنگین در ISR می‌تواند پاسخ‌دهی سیستم را کاهش دهد.

جمع‌بندی

وقفه ابزار مهمی برای طراحی سیستم‌های واکنش‌گرا و کارآمد است.

ادامه مطلب
GPIO در STM32 با HAL
0

GPIO در STM32 با HAL

GPIO در STM32

پایه‌ها می‌توانند در حالت‌های Input، Output، Alternate Function و Analog تنظیم شوند.

Pull-up و Pull-down

مقاومت‌های داخلی قابل تنظیم هستند.

سرعت خروجی

سرعت لبه خروجی در بسیاری از خانواده‌ها قابل تنظیم است.

HAL API

توابع HAL_GPIO_WritePin و HAL_GPIO_ReadPin برای کنترل پایه‌ها استفاده می‌شوند.

جمع‌بندی

تنظیم صحیح Mode و Pull برای عملکرد پایدار GPIO ضروری است.

ادامه مطلب
پروگرام کردن AVR با ISP
0

پروگرام کردن AVR با ISP

ISP چیست؟

ISP روشی برای برنامه‌ریزی AVR در داخل مدار است.

خطوط اصلی

MOSI، MISO، SCK، RESET، VCC و GND معمولاً موردنیاز هستند.

مزیت

تراشه بدون خارج شدن از برد قابل برنامه‌ریزی است.

نکته طراحی PCB

قرار دادن کانکتور پروگرام روی برد، توسعه و سرویس را ساده‌تر می‌کند.

جمع‌بندی

ISP یکی از روش‌های استاندارد توسعه پروژه‌های AVR است.

ادامه مطلب
CAN چیست؟ آشنایی با شبکه CAN Bus
0

CAN چیست؟ آشنایی با شبکه CAN Bus

CAN چیست؟

CAN یک شبکه مقاوم در برابر نویز برای ارتباط چند گره در محیط‌های صنعتی و خودرویی است.

خطوط CANH و CANL

انتقال داده به صورت تفاضلی انجام می‌شود.

Termination

در دو انتهای باس معمولاً مقاومت 120 اهم قرار می‌گیرد.

کاربرد

خودرو، اتوماسیون و تجهیزات توزیع‌شده از کاربردهای مهم هستند.

جمع‌بندی

CAN برای محیط‌های پرنویز و شبکه‌های چندگرهی گزینه‌ای بسیار مناسب است.

ادامه مطلب
Watchdog Timer چیست؟ جلوگیری از هنگ کردن سیستم
0

Watchdog Timer چیست؟ جلوگیری از هنگ کردن سیستم

Watchdog چیست؟

Watchdog تایمری است که اگر نرم‌افزار در بازه مشخص آن را تازه‌سازی نکند، می‌تواند سیستم را ریست کند.

چرا مهم است؟

در سیستم‌های صنعتی یا بدون حضور کاربر، بازیابی خودکار از خطا اهمیت زیادی دارد.

روش استفاده

برنامه باید تنها زمانی Watchdog را Refresh کند که بخش‌های حیاتی سیستم سالم باشند.

خطای رایج

Refresh کردن Watchdog در هر حلقه بدون بررسی سلامت واقعی برنامه، ارزش حفاظتی آن را کاهش می‌دهد.

جمع‌بندی

Watchdog یک لایه مهم برای افزایش قابلیت اطمینان سیستم است.

ادامه مطلب
EXTI در STM32 چیست؟
0

EXTI در STM32 چیست؟

EXTI چیست؟

EXTI واحد وقفه خارجی در STM32 است که می‌تواند به تغییر سطح یا لبه روی پایه‌ها واکنش نشان دهد.

لبه Rising و Falling

وقفه می‌تواند روی لبه بالا، پایین یا هر دو تنظیم شود.

NVIC

برای فعال شدن وقفه باید مسیر مربوطه در NVIC نیز تنظیم شود.

کاربرد

کلید، سنسور حرکت و سیگنال Ready از کاربردهای رایج هستند.

جمع‌بندی

EXTI برای پاسخ سریع به رویدادهای خارجی بسیار مناسب است.

ادامه مطلب
GPIO در AVR و رجیسترهای DDR PORT PIN
0

GPIO در AVR و رجیسترهای DDR PORT PIN

DDRx

رجیستر DDR جهت هر پایه را به‌عنوان ورودی یا خروجی تعیین می‌کند.

PORTx

در حالت خروجی مقدار پایه و در برخی حالت‌های ورودی Pull-up داخلی را کنترل می‌کند.

PINx

برای خواندن وضعیت منطقی پایه استفاده می‌شود.

کاربرد

کنترل مستقیم رجیسترها سرعت و درک عمیق‌تری از سخت‌افزار فراهم می‌کند.

جمع‌بندی

این سه رجیستر پایه کار با I/O در AVR هستند.

ادامه مطلب
RS232 چیست؟ تفاوت RS232 با UART
0

RS232 چیست؟ تفاوت RS232 با UART

RS232 چیست؟

RS232 یک استاندارد فیزیکی ارتباط سریال با سطوح ولتاژ متفاوت از منطق TTL است.

تفاوت با UART

UART قالب داده را مشخص می‌کند، اما RS232 سطح الکتریکی و رابط را تعریف می‌کند.

مبدل سطح

برای اتصال میکروکنترلر به RS232 معمولاً از آی‌سی‌هایی مانند MAX232 استفاده می‌شود.

کاربرد

تجهیزات صنعتی و دستگاه‌های قدیمی هنوز از RS232 استفاده می‌کنند.

جمع‌بندی

اتصال مستقیم RS232 به پایه UART میکروکنترلر صحیح نیست.

ادامه مطلب