uint8_t متغیر ۸ بیتی با بازه مثبت
int8_t متغیر ۸ بیتی با بازه مثبت و منفی
unit16_t متغیر ۱۶ بیتی با بازه مثبت
int16_t متغیر ۱۶ بیتی با بازه مثبت و منفی
uint8_t متغیر ۸ بیتی با بازه مثبت
int8_t متغیر ۸ بیتی با بازه مثبت و منفی
unit16_t متغیر ۱۶ بیتی با بازه مثبت
int16_t متغیر ۱۶ بیتی با بازه مثبت و منفی
مدهای کم مصرف قابل استفاده در اردینو عبارتند از:
SLEEP_MODE_IDLE
SLEEP_MODE_ADC
SLEEP_MODE_PWR_SAVE
SLEEP_MODE_STANDBY
SLEEP_MODE_PWR_DOWN
با استفاده از میکروکنترلرهای خانواده AVR می توان آردینو ساخت. آموزش نحوه ساخت برد آردوینوی دلخواه نحوه پروگرام کردن میکروکنترلر ھای AVRبا استفاده از Arduino ISP منبع: https://t.me/ArduinoKaraneJavan https://github.com/MCUdude/MiniCore ATmega8, ATmega48, ATmega88, ATmega168, ATmega328 and ATmega328PB https://github.com/MCUdude/MicroCore ATtiny13
unsigned long time;
time = millis();
زمان را بر حسب میلی ثانیه بر میگرداند و حدودا هر ۵۰ ( ۴۹.۷۱ ) روز سر ریز می شود. به عبارت دقیق تر هر ۲ به توان ۳۲ میلی ثانیه سر ریز می شود:
۲^۳۲ = ۴۲۹۴۹۶۷۲۹۶ [ms] -> 1- 4294967296
*تابع millis مقدار بازگشتی را درون متغییر time که از نوع unsigned long
هست میریزد. چنانچه time از نوع int تعریف شود با خطا مواجه می شوید.
طرح مسئله: کلید ۳ ثانیه بایستی فشرده شود تا وارد منو شویم؛ شرط ها و سایر دستورات دلخواه را به جای a++ می نویسیم. int pin = A5,a=0; bool key=true; int duration=2500; // [ms] unsigned long Time_Low=0; void setup() { Serial.begin(9600); pinMode(pin, INPUT_PULLUP); } void loop() { if (digitalRead(A5)==LOW ) { if (key==true) {Time_Low = millis(); key=false;} } if (digitalRead(A5)==HIGH && key==false ) { if ( (millis()-Time_Low) > duration) { a++; Time_Low=0; } key=true; } Serial.print(“Key: “); Serial.println(key); //prints time since program started Serial.print(“a: “); Serial.println(a); //prints time since program started }
https://www.arduino.cc/reference/en/language/functions/advanced-io/pulsein/
مدت زمان (برحسب میکروثانیه) نگه داشته شدن کلید در یک بار طی شدن حلقه loop را میدهد. یعنی این صورت نیست که هر چه دست را نگه داشتید روی دکمه زمان آن را محاسبه کند. صرفا از زمانی که دست روی کلید رفته تا زمانی که لوپ مجدادا به خط کد pulsin باز میگردد.
HS1101 یک سنسور رطوبت خازنی می باشدکه بر اساس ظرفیت متغیر خازن عمل می کند.به این صورت که با تغییر رطوبت در محیط،ظرفیت خازن موجود در این سنسور تغییر کرده و رطوبت مورد نظر از این طریق قابل اندازه گیری است.این نوع از سنسور های رطوبت در کاربردهای مختلفی مانند اتوماسیون ادارات،کنترل هوای داخل کابین خودرو،لوازم خانگی و سیستم های کنترل صنعتی استفاده می شود. HS1101 برای راه اندازی این سنسور باید از یک آی سی ۵۵۵ استفاده کرد. با استفاده از آی سی ۵۵۵ یک نوسان ساز می سازیم . با تغییر میزان رطوبت ،میزان خازن سنسور هم تغییر…
یک ساعت=۶۰ دقیقه
۱دقیقه=۶۰ ثانیه
۱ثانیه=۱۰۰۰ میلی ثانیه
۱ دقیقه = ۶۰.۰۰۰ میلی ثانیه
۱ میلی ثانیه=۱۰۰۰ میکروثانیه
۱ ثانیه = ۱.۰۰۰.۰۰۰ میکروثانیه
درایور موتور و باز هم درایور موتور، هر درایوری ویژگیهای منحصر به فرد خود را دارد. پیش از این راه اندازی موتورهای مختلف با درایورهای متنوع را در دیجی اسپارک منتشر کردهایم. اما یکی از درایور موتورهای ساده و ارزان قیمت، که مورد توجه دانش آموزان و دانشجوها میباشد. درایور موتور L298N میباشد. تراشه این درایور خیلی قدرت و پتانسیل مناسبی ندارد. صرفا یک درایور جهت راه اندازی موتورهای ارزان قیمت و ساده است. از اینرو انتظار خیلی زیادی از این درایور نداشته باشید. در ادامه این مجموعه آموزش با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.
برای خواندن و نوشتن از پایه های دیجیتال در اردینو از دستور digitalWrite و digitalRead استفاده می شود. که در اردینو مدل uno از پایه ی ۰ تا ۱۳ به عنوان ورودی و خروجی دیجیتال در نظر گرفته شده اند. حالا اگر پایه کم آوردیم میتوانیم از پایه های آنالوگ نیز استفاده کنیم. بهصورت زیر: پایه های آنالوگ روی اردینو از شماره A0 – A5 هستند که برای استفاده در تابع pinmode باید از شماره ۱۴-۱۹استفاده کنیم. بقیه دستورات مثل استفاده از پایه های دیجیتال می باشد. توضیحات بیشتر در لینک زیر: آموزش جامع آردوینو جلسه ۱۵ کمبود پایه آموزش…