نمایش/عدم نمایش سایدبار
رفتن به بالای صفحه
أَللّهُمَّ ارْزُقْنی شَفاعَةَ الْحُسَیْنِ یَومَ الْوُرُودِ
مهدی دمیرچیلو

آموزش جامع آردوینو جلسه ۹ توابع متفرقه

174

به نام خدا : تو این مطلب از آموزش آردوینو جلسه ۹ میخوام یه سری توابع متفرقه که کمتر نیازمون میشه رو بگم.

آموزش جامع آردوینو جلسه ۹ توابع متفرقهآموزش جامع آردوینو جلسه ۹ توابع متفرقه


Bits and Bytes

خوب یه خبر خوب ؛ اگه حال ندارید میتونید مطلب رو نخونید؛ چون توابع این مطلب فعلا زیاد مهم نیستن و در آینده کاری فک نکنم باهاشون داشته باشیم.(البته خدا رو چه دیدی crazy )…..البته اینم بگم که آسون ترین مطلب هستش؛ این مطلب.

lowByte : این تابع کم ارزش ترین بایت(و نه بیت) رو بر میگردونه, در زیر به جای x متغییرمون(یا دیتامون) رو قرار میدیم.

highByte : پر ارزش ترین بایت(و نه بیت) رو بر میگردونه, در زیر به جای x متغییرمون(یا دیتامون) رو قرار میدیم.

توجه مهم : در دو تا بع بالا وقتی میگم بایت کم ارش و پر ارزش رو برمیگردونه حواستون باشه که روی بایت تاکید میکنم؛ عمرا متوجه شده باشید pardon؛ مثال زیر رو ببینید :

تو این پروژه آردوینو یه متغیر به نام x تعریف کردم و میخوام بایت پر ارزش و کم ارزشش رو به پورت سریال ارسال کنم(تا اون جا نمایش داده بشه، البته شما میتونید از LCD کاراکتری استفاده کنید ولی این راحت تره) >>>>همون طور که میبینید متغییر X شونزده(۱۶) بیت داره که پایت پر ارزشش برابر of هستش و بایت کم ارزشش برابر f0 هستش>>>>> اما اگه مثلا متغییر x بابر زیر بود بایت پر ارزش و بایت کم ارزش با هم برابر میشدند.(چون همش ۱ بایت بیشتر نداریم laugh ) >>>اگه کسی متوجه نشد بگه rtfm.>>> laugh

bitRead : به این تابع یه متغییر میدی و میگی بیت i امش رو بخون و ببین ۰ هستش یا نه و بعد مقدارش رو برگردون(اگه ۰ بود ۰ برگردون و اگه ۱ بود ۱ برگردون)

تو مثال زیر، مقدار بیت ۰ ام متغییر x به پورت سریال ارسال میشه:

bitWrite : نوشتن ۱ بیت در یک متغییر، یا مییشه گفت اضافه کردن یک(یا چند) بیت با مقدار مشخص(۰ یا ۱) به یک متغییر.

توی این تابع ما برا متغییر x میخوایم یه بیت روش بنویسیم که ۰ یا ۱ بودنش رو توسط bit تعیین میکنیم و جایگاهش رو توسط i.
مثلا  اگه بخوایم تو مکان ۱۰ ام یه بیت با مقدار ۱ اضافه کنیم باس به صورت زیر عمل کنیم.

در مثال بالا توجه کنید که x در ابتدا ۸ تا بایت داره، وقتی توسط تابع فوق یه بیت با مقدار ۱ در مکان ۱۰ ام X اضافه میکنیم در مکان ۹ یه بیت ایجاد میشه با مقدار ۰ >>>> مثلا اگه در مکان ۱۵ ام یه بیت با مقدار ۱ اضافه میکردیم در مکان های ۹ام تا ۱۴ ام بیت هایی با مقدار ۰ ایجاد میشد.(که دلیلش واضح هستش و اگه ندونید باس برید کتاب مدار منطقی موریس مانو رو بخونید،چون مدار منطقیتون ظعیفه و کوچولو ترین چیز رو نمیدونید و چون شما پول برا این چیزا خرج نمیکنید چون فکر میکنید پول حروم کردنه لذا همون بهتر که متوجه نشید diablo)

bitSet : نوشتن ۱ در بیت i ام متغییر x

که میتونید مثال زیر رو هم ببینید(میتونید هم نبینید :-D)

ابتدا بیت ۱۰ ام متغییر x رو ۱ میکنیم و بعد میگیم که متغییر x رو بفرست به پورت سریال تا ببینیمیش(تو پورت سریال نمایشش بده)

bitClear : اینم مثل تابع بالا فقط این که بیت i ام متغییر x رو ۰ میکنه(بر خلاف تابع بالا که ۱ میکنه)

تو مثال زیر متغییر X که همه ی بیت هاش ۱ هستش رو ؛ بیت اولش رو ۰ میکنیم و بعد تو پورت سریال نشونش میدیم(مقدارش رو ارسال میکنیم، یا این ک مقدارش رو نمایش میدیم) که مقدارش برابر ۲۵۴ میشه.

bit : این تابع هم یه عددی(n) بهش میدی و عدد ۲ رو به توان n میرسونه و بعد مقدارش رو در پورت سریال نشون میدیم.(که همن بحث باینری ماینری هستش، ۲ به توان صفر، ۲ به توان ۱ و…)

مثال زیر ر وببینید:

 

Random Numbers

random : تولید یه عدد تصادفی، این تابع به دو صورت زیر نوشته میشه که در شکل اولی فقط مقدار max تعیین میکنیم و در فرم دومی مقدار min و max رو تعیین میکنیم که عددی بین این min و max به صورت تصادفی انتخاب میشه.

یه مثال از تابع دومی در زیر میبینید(که هر ۳۰۰ میلی ثانیه یه عدد به صورت تصادفی بین ۵ تا ۱۰ انتخاب میکنه و تو خروجی سریال نمایش میده.) :

randomSeed : اینو من تا حالا متوجه نشدم روال کارش چطوریه، معلومه که برا تولید اعداد تصادفی هستش ولی این که از چه روشی و متدی استفاده مکنه و این که با تابع بالا چه فرقی داره رو من متوجه نشدم؛ کسی اگه میدون یا فهمید به ما هم بگه؛ اینم لینک تابع در صفحه ی سایت آردوینوrandomSeed

Math

خوب یکی از دوستان گفت ۲ تا تابع رو توضیح بدیم که نداده بودیم، ما هم عوضش ۴-۵ تا تابع زیر رو گفتیم heart .

pow : این تابع برا اینه که یه عددی رو(A) به توان یه عدد دیگه(B) برسونیم.

این مثال زیر رو هم میتونید تست کنید.(پروگرام کنید و صفحه پورت سریال رو باز کنید.)

sqrt : این تابع جذر عدد A رو میگیره.

مثال زیر رو هم ببینید :

abs : این تابع قدر مطلق عدد A رو بر میگردونه.

مثال زیر رو هم ببینید :

constrain : این تابع ۳ تا ورودی داره ، یه عدد بهش میدی(A) و اینو با X و Y مقایسه میکنه اگه بین این ۲ تا عدد بود خود A رو تابع بر میگردونه، اگه بزرگتر از Y بود، Y رو تابع بر میگردونه و اگه از X کوچکتر بود، X رو بر میگردونه.

مثال زیر و بازم پور سریال laugh …..تو پورت سریال یه عدد وارد میکنید و میبینید که تابع چه عددی بر میگردونه تا با نحوه کار تابع بهتر آشنا بشید. crazy

map : این تابع هم چیز جالبیه mosking …. یه عدد بهش میدی و نسبتش رو تغییر میده(عمرا گرفته باشین pardon ) >>> بزار بیشتر توضیح بدم؛ تو تابع زیر به جای value عددمون رو قرار میدیم و رنج عددمون رو در fromLow و fromHigh قرار میدیم(رنج فعلی) و به رنجی که قراره تبدیل بشه رو در toLow و toHigh قرار میدیم.

مثال زیر بازم با سریال هستش laugh …..عدد میفرستین و رنجش رو تغییر میده و براتون ارسال میکنه…کار بر نامه زیر همینه.
مثل تو مثال زیر A قراره از رنج ۱-۲۵۵ تبدیل بشه به به رنج ۱-۱۰۲۳٫٫٫٫٫حواستون باشه که عددی که وارد میکنید باس بین ۱-۲۵۵ باشه….البته بالاتر باشه تابع باز یه چیزو برمیگردونه ولی از نظر عقلی وقتی رنجتون بین ۱-۲۵۵ نباید عدد بزرگتر بدی جون غیر ممکن هستش…..حالا بیا توضیح بده چرا غیر ممکن هستش…. cry

یه سری تابع هستش که من دیگه عمرا توضیشون نمیدمbb، ولی اگه خواستین میتونید خودتون برید بخونید diablo ……

فعلا بسه تا همین جا، عیدتون هم مبارک، فعلا یا علی.

تعداد مطالب : 367 تا
جنگ ما فتح قدس را به همراه خواهد داشت. [ امام خمینی (ره) ]
بقیه جلسات : آموزش جامع آردوینو
ارسال دیدگاه
70
نظرات این مطلب بسته شده است.
  1. یوسف

    مهمان

    یوسف

    خداخیرت بده بامرام

  2. Amin

    مهمان

    Amin

    سلام مهندس خسته نباشی‌.
    من یه اهم متر درست کردم با آردینو
    ولی دقتش 2رقم بعد ممیز هست(6.78) میخوام دقتش 1رقم بعد اعشارکنم(6.7) چطوری دقت متغیر کاهش بدم؟؟؟
    چون lcd کاراکتری به دلیل تغیرات سریع عدد دوم بعدممیز هنگ میکنه

  3. m

    مهمان

    m

    سلام اقا مهدی و در ضمن اسم من هم مهدی هست smile
    من یه اردوینو مگا2560 R3 دارم و برام سواله که هیچ کدوم از تابع های بخش بیت و بایت روش کار نمیکه و ارور میده shock
    و اینکه اردوینو سالمه و بقیه دستورات روش درست کار میکنه!!!!!!!!
    ایا چیزی از این کد ها هست که توسط اردوینو مگا ساپورت نمیشه؟؟؟؟

    مشاهده پاسخ ها (1)
    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام
      تو سایت Arduino چیزی درباره این که توابع فوق برا مگا جواب میدن یا نمیدن، ذکر نکردن ( من ندیدم )
      متن خطا رو بفرستید.

  4. عباس

    مهمان

    عباس

    سلام
    من یک تابع به صورت زیر تعریف کردم و میخاهم جند جای برنامه اصلی فرخوانی کنم ولی وقتی یکبار فرخوانی کنم عدد برگشتیی من درست هست ولی اگر دوبار فرخانی کنم عدد صفر بر میگرداند

    مشاهده پاسخ ها (6)
    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام / کدتو زیپ کن بفرست / اینی که فرستادی چیزی ازش نفهمیدم..

      • عباس

        مهمان

        عباس

        سلام این قسمتی از برنامه هست
        http://s6.picofile.com/file/8391161534/3.zip.html

        • مهدی دمیرچیلو

          نویسنده این مطلب

          مهدی دمیرچیلو

          سلام مجدد.
          0) سعی کن کدتو مرتب و زیبا بنویسی، هم تو پیدا کردن مشکل کمکت میخونه و هم تو خوانایی برنامه.
          1) تابع farmanminut به صورت void تعریف شده
          2) متغییر a هم ازش اومدی تو تابع فوق استفاده کردی و هم در goto !!!
          3) بنظرم اگه میخوای در این زمینه فعالیت کنی، بیخیال پروژه فوق بشو و برو سراغ کدنویسی و یادش بگیر.

          • عباس

            مهمان

            عباس

            ممنون
            امکان دارد یه برنامه هر چی میخاهد باشد برام بدهید که از زیر بزنامه استفاده کرده باشد و دو بار فراخوانی شود

          • مهدی دمیرچیلو

            نویسنده این مطلب

            مهدی دمیرچیلو

            http://paste.debian.net/plain/1135174

          • عباس

            مهمان

            عباس

            سلام
            این برنامه را میگویم
            میخاهم ابتدا از کی پد عدد بگیرد
            اگر ورودی 10 بود برود داخل یک تابع از کیپد دوباره عدد بگیرد ضزبدر 2 کند اگر عدد گرفته شده اول یک بود ضربدر 3 شود
            http://s6.picofile.com/file/8391654500/3.zip.html

  5. آرش

    مهمان

    آرش

    سلام
    لطفاً بفرمایید چطور می تونم به طور مثال 12 عدد ساخته شده در تابع رندوم رو به یک عدد 12 رقمی تبدیل کنم
    باتشکر از مطالب آموزنده و عالی تون help heart

    مشاهده پاسخ ها (1)
    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام / بازی ریاضیه دیگه : یه عدد 64 بیتی میشه،
      x0 + x1*10 + x2*100 + ....

  6. ناشناس

    مهمان

    ناشناس

    سلام مهندس میشه نحوه بکار بردن یا ایجاد این جور توابع هم بگین مثلا
    void loop(){
    () void disconnect

    مشاهده پاسخ ها (3)
    • مهدی دمیرچیلو

      نویسنده این مطلب

      مهدی دمیرچیلو

      سلام
      اولی شبیه همون (1)while هستش.
      دومی رو نمیدونم.

      • ناشناس

        مهمان

        ناشناس

        سلام منظورم اینه که طرف امده یه تابع توی لوپ ایجاد کرده برای صدای بازر چطوری این کارو انجام بدم مثلا یکی بالایی برای قطع اتصال هست.
        یه گفته بود به جای استفاده از دستور GOTO از تابع استفاده کنید .
        میشه راهنماییم کنید میخوام توی کدم پرش داشته باشم با چی اینکار رو انجام بدم؟

        • مهدی دمیرچیلو

          نویسنده این مطلب

          مهدی دمیرچیلو

          نمیدونم میخوای چیکار کنی دقیقا.
          متوجه نشدم.

  7. Ali

    مهمان

    Ali

    سلام دوست عزیز من ی سوالی دارم اگه تو تابع راندوم دو تا عدد بنویسی همیشه عدد بین این دوتا خواهد بود یا میتونه برابر اعداد تعیین شده هم باشه؟
    کمک کنید لطفا کارم خیلی گیره …

    مشاهده پاسخ ها (2)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      طبق لینک زیر
      https://www.arduino.cc/reference/en/language/functions/random-numbers/random/
      و توضیح زیر از لینک بالا :
      Returns : A random number between min and max-1
      لذا شامل min میشه ولی شامل عدد max نمیشه لذا اگه میخوای عدد max ات هم شامل بشه، به تابع random به پارامتر دومش max+1 بده و min هم که تغییر نمیدی

      • Ali

        مهمان

        Ali

        ممنون دوست گرامی از پاسگوییتون

  8. رضا

    مهمان

    رضا

    سلام مهندس.ساختن اینو مدیون شمام.
    https://youtu.be/RiwgEOWKf6Q

    مشاهده پاسخ ها (6)
    • رضا

      مهمان

      رضا

      سلام مهندس
      نوشتن
      boolean T[]={0,0,0,0,1,1,1,1,1,1,0,0,0,0,1};
      چه کاری انجام میده؟

      • مهدی دمرچیلو

        نویسنده این مطلب

        مهدی دمرچیلو

        سلام
        اینو من کجای مطلب نوشتم؟ پیدا نکردم.
        این خب یه آرایه از نوع Bool هستش (۰و۱) که اومده هنگام تعریف کردنش مقدار دهی اولیه هم بهش داده

        • رضا

          مهمان

          رضا

          این دستور از اینجا گرفتم مهندس
          http://www.instructables.com/id/How-to-Make-a-Fan-POV-Display/
          مگه بولن فقط دو.مقدار ترو و فالس نمیگیره مهندس؟

          • مهدی دمرچیلو

            نویسنده این مطلب

            مهدی دمرچیلو

            آره دیگه – true برابر ۱ و false هم برابر ۰ هستش – فرق نداره از کدوم استفاده کنی.

        • رضا

          مهمان

          رضا

          سلام مهندس.ممنونم از راهنمایی و وقتتون.امکان داره شمارتون رو داشته باشم تو تلگرام مزاحم بشم؟
          پلییییز

          • مهدی دمرچیلو

            نویسنده این مطلب

            مهدی دمرچیلو

            سلام – تو گروه تلگرامی سایت میتویند سوالاتونو مطرح کنید – ولی خب تو pv معمولا جواب نمیدم. sorry

  9. ariyana

    مهمان

    ariyana

    سلام
    تروخدا کمکم کنید help
    دیگه اخرین جایییییی که به ذهنم رید کمک گرفتن از تو همین سایتتتتتتتت بوووودشششش
    عاقاااا من زمانی که میخوام کدا رواپلووود کنم این ارورو میده
    Arduino: 1.8.4 Hourly Build 2017/08/01 12:33 (Windows 7), Board: “Arduino Yún”
    Sketch uses 4182 bytes (14%) of program storage space. Maximum is 28672 bytes.
    Global variables use 147 bytes (5%) of dynamic memory, leaving 2413 bytes for local variables. Maximum is 2560 bytes.
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = “þ”; type = È
    Software Version = (.
    کمک کتنننننننننننننننننننننننننننننننننننیییییییییییییییییییییییییییییییییییید
    اووووووووووووووووووووووووووووووووووووووف
    ممنون
    اگه میشه جوابو به ایمیلم ارسال کنید

    مشاهده پاسخ ها (11)
    • ariyana

      مهمان

      ariyana

      بعد بردمم arduino uno r3 بعد تو این ارئرم فک کنم بردو اردوینو yun انتخاب کردم
      نمیدونمم چرا اردوینو uno r3 ندارم wink dash

      • ariyana

        مهمان

        ariyana

        سلامی دوباره
        من بردو
        arduini genuino uno
        اتخاب کردم این ارورو داد
        Arduino: 1.8.4 Hourly Build 2017/08/01 12:33 (Windows 7), Board: “Arduino/Genuino Uno”
        Build options changed, rebuilding all
        Sketch uses 982 bytes (3%) of program storage space. Maximum is 32256 bytes.
        Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe4
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe4
        Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
        This report would have more information with
        “Show verbose output during compilation”
        option enabled in File -> Preferences.

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          نمیدونم.

    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      اینو تو گوگل بسرچ عینا :
      avrdude: butterfly_recv(): programmer is not responding
      به جواب میرسی…

      • Ariyana

        مهمان

        Ariyana

        باش ممنون

      • Ariyana

        مهمان

        Ariyana

        سرچ کردم ولی به نتیجه ی خاصی نرسیدم
        ولی فک کنم com رو نمیخونه
        فق com1 هستش و وقتی میرت دوایس منیجر اردوینو رو شناسایی نکرده dash

    • رضا

      مهمان

      رضا

      سلام مهندس متوجه شدید Randomseed(); چیکار میتونه؟

      • مهدی دمرچیلو

        نویسنده این مطلب

        مهدی دمرچیلو

        سلام
        نه – پیگیرش نشدم.

        • رضا

          مهمان

          رضا

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

          • مهدی دمرچیلو

            نویسنده این مطلب

            مهدی دمرچیلو

            good
            یه پروژه کوچیک، برا تست این تابع بنویس و بده بزارم قسمت مربوط به این تابع.

        • رضا

          مهمان

          رضا

          چشم. بفرمایید:
          رندوم بدون رندوم سید:
          https://youtu.be/CdvFsakMTBQ
          رندوم با رندوم سید:
          https://youtu.be/S7TOXy9Ck68

  10. ناشناس

    مهمان

    ناشناس

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

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – ممنون از شما –
      متن کامل سخرانی آقایون رو خاطرم نیست، ولی اگه شما کامل مطالعه کردید – چشم برمیدارم – ممنون از شما.

      برای افراد تحصیل کرده بهتر است وارد این مقولات نشوند

      واضح تر منظورتون از این حرف رو بگید ممنون میشم.

  11. امیرحسین

    مهمان

    امیرحسین

    سلام من بخوام توابع مثلثاتی رو هم یاد بگیرم چه منبعی رو پیشنهاد میکنین؟

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      یه کتابخونه هستش به نام math – تو گوگل بزنی آموزش کار با توابعش الی ما شا الله ریخته

  12. ali

    مهمان

    ali

    سلام،مطالب. خیلی عالی هستن،
    یه سوال دارم،برای آردینو سنسور حایرو گذاشتیم،و شتاب سنج،الان میخایم یجوری از شتاب برسیم ب سرعت،
    طبق قوانین فیزیک مشتق سرعت میشه شتاب،و بر عکس انتگرال شتاب میشه سرعت.حالا چحوری مقداری که شتاب سنج میده رو،انتگرال بگیریم ب سرعت برسیم؟با چ تابعی؟

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام – به استاد دانشگاه ها مراجعه کنید بهتر راهنمایی میکنن.

  13. علی

    مهمان

    علی

    با سلام اقا مهدی چطور میشه یه کتابخانه که اضافه کردیم به نرم افزار از قسمت shetch از نرم افزار حذفش کنیم؟؟؟؟

    مشاهده پاسخ ها (3)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      حدف کردن :
      C:\Users\MAHDI\Documents\Arduino\libraries
      به جای MAHDI نام کاربری ویندوزت رو بزار

      • علی

        مهمان

        علی

        اقا مهدی این نرم افزار بشکل پرتابله؟ من دانلود کردم از زیپ در اوردم اجرا شد منظورم چییزی نصب نشد

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          آردوینو؟ هم پرتابلش هستش و هم نصبیش

  14. علی

    مهمان

    علی

    با سلام خدمت ادمین محترم اقا مهدی بعد هر بار نوشتن برنامه و بعد کامپایلر کردن حافظه ارینو از برنامه قبلی اشغال نمیشه که؟ منظورم برای وارد کردن برنامه برنامه قبلی پاک میشه در چه صورت حافظه پر میشه؟

    مشاهده پاسخ ها (3)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام-حافظه میکرو/؟ آخرین برنامه پروگرام شده حافظه رو اشغال میکنه – برنامه جدید پروگرام کنی رو میکرو – برنامه قبلی پاک میشه و برنامه جدید قرار میگیره

      • علی

        مهمان

        علی

        اره منظورم تو اردینو حافظه میکرو و SRAM و EEPROM ؟؟؟؟؟؟؟؟؟

        • مهدی دمرچیلو

          نویسنده این مطلب

          مهدی دمرچیلو

          خب EEPROM هم همین طور هستش – تا زمانی که پروگرامش نکنی تغییر نمیکنه – مگه این که تو میکرو کارت با حافظه ایپرام باشه که در این حالت از طریق خود میکرو هم میشه ویرایشش کرد.
          حافظه SRAM هم با رفتن برق مقادیرش پاک میشه ( مقدار متغییر ها ) و توسط میکرو و پروگرامر تغییر میکنه.

  15. عرفان

    مهمان

    عرفان

    تشکر از راهنمایوتون

  16. عرفان

    مهمان

    عرفان

    سلام اقا مهدی
    دریک کلام
    مطالبتون عالیه واقعا دستتون درد نکنه
    من دانش اموز(هنرجو)رشته الکترونیک هستم
    و سوالی دارم اونم اینکه اردوینو در اینده میتونه منبع درامد خوبی باشه؟

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      بستگی به خودت داره – منبع درامد هم فقط این نیست که با آردوینو موشک! بسازی – میتونی شیلد آردوینو بسازی و بدی بازار…. مثلا

  17. حمید

    مهمان

    حمید

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

  18. رضا

    مهمان

    رضا

    مطالبتون عالیه
    راستی میشه آموزش برد های RASPBERRY رو هم به این خوبی در سایت قرار بدین

  19. alirezaaghaee

    مهمان

    alirezaaghaee

    سلام
    در مورد تابع randomseed باید بگم این تابع برای تولید اعداد واقعا رندوم است. تابع رندوم خالی در حقیقت واقعا رندوم نیست و pseudorandom است. مثلا اگر شما ماکس رندوم را هزار بزارید و ده بار برنامتون رو اجرا کنید هر دفعه اولین عدد 807 خواهد بود که نشان میدهد این تابع یک رندوم واقعی نیست و فقط یک دنباله شبه تصادفی است. برای نزدیک شدن رندوم ما به رندوم واقعی (رندوم واقعی تقریبا اصلا نداریم) باید یا هسته (seed) رندوم از ورودی توسط کاربر وارد شود و یا از زمان به عنوان هسته استفاده شود.

  20. f@eze

    مهمان

    f@eze

    هیچیsmile
    اینکه گفتین هنوز اول راهیم و کلی مونده هنوز.
    آخه من برای یاد گیری و پروژه ام وقت زیاد ندارم. cry
    حدودا فکر می کنین چند جلسه دیگه آموزش تموم بشه؟
    خدا قوت bb

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      والا هر چقدر بخوای میتونی مطالب رو ادامه بدی….
      مهم اینه که شما به کدوم قسمتش نیاز دارید
      وگرنه میشه تا ۱۰۰ جلسه هم ادامش داد و میشه تو ۳ جلسه همش رو گفت laugh

  21. f@eze

    مهمان

    f@eze

    dash wacko

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      چیه؟
      چی شده؟

  22. Hodrin

    مهمان

    Hodrin

    سلام میشه لطفا تابع های
    map()
    pow()
    توضیح بدین

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      الان توضیحشون رو به مطلب اضافه میکنم….ولی دیگه کاربرد pow خیلی تابلو هستش….

  23. مهرداد

    مهمان

    مهرداد

    سلام
    جلسه ۱۰ رو کی میذارین؟

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      ۱-۲ روز آینده……

  24. f@eze

    مهمان

    f@eze

    آقای دمر چیلو این مطلبتون هم مثله بقیه عالی بود.
    برای آردوینو فقط همین ۹ جلسه رو داشتین؟
    خدا قوت مهندس. victory

    مشاهده پاسخ ها (1)
    • مهدی دمرچیلو

      نویسنده این مطلب

      مهدی دمرچیلو

      سلام
      نه فعلا مونده….تازه چرت و پرت هاش رو گفتم(البته غیر از Serial laugh )

  25. محمد

    مهمان

    محمد

    مرسی و تشکر
    عیدتونم موبارک laugh