আরডুইনো ডিজিটাল পড়ুন ভুল


10

আমি আমার আরডুইনো ইউএনওকে 4 ইনপুট তারের সাহায্যে স্থাপন করেছি, তারা 10, 11, 12, 13 বন্দরের সাথে সংযোগ স্থাপন করেছে, তারা আমার ব্রেডবোর্ডের সাথে তার ছাড়া কিছুই ছাড়া সংযুক্ত রয়েছে।

আমার কোডটি সহজভাবে হবে:

Serial.println(digitalRead(13));
Serial.println(digitalRead(12));
Serial.println(digitalRead(11));
Serial.println(digitalRead(10));

জিনিসটি হল, আমি সংক্ষিপ্তভাবে একটি পিনটি 5 ভি বা 3 ভি 3 এর সাথে সংযুক্ত করার পরে, পঠন বাদামের মতো শুরু হবে: 1 0 0 1 0 1 1 1 0 1 0 1 1 0 কোনও ধারণা ছাড়াই! আমার ভিসিসির সাথে সরাসরি কোনও তারের সংযুক্ত না হয়ে (5 ভি বা 3 ভি 3) পড়াটি নিয়মিত পরিবর্তন হয়, কখন এটি শূন্য হওয়া উচিত!

আমার আরডুইনো মারা গেছে? আমি এটা কিভাবে ঠিক করবো?


ট্রিগার না হয়ে কেবল আপনার ট্রিগার পিনটি মাটিতে সংযুক্ত করুন!

উত্তর:


18

আপনার যা আছে তাকে Floatingপিন বলা হয় । ডিজিটাল ইনপুট পিনগুলি পরিবর্তন করার জন্য অত্যন্ত সংবেদনশীল এবং যদি না ইতিবাচকভাবে এক রাজ্যে বা অন্য কোনও (উচ্চ বা নিম্ন) দিকে পরিচালিত হয় তবে আশেপাশের উত্সগুলি যেমন ব্রেডবোর্ডস, মানুষের আঙ্গুলগুলি বা এয়ার থেকেও নেওয়া হবে না cap এর সাথে সংযুক্ত যে কোনও ওয়্যার সামান্য অ্যান্টেনার মতো কাজ করবে এবং ইনপুট স্থিতিকে পরিবর্তিত করবে। এবং আমি বলতে চাই যে কোনও তারের, বোর্ডে থাকা ট্রেস, ব্রেডবোর্ডে তারে, ব্রেডবোর্ড পিন এমনকি আইসি নিজেই ধাতব পিন।

এটি আরডুইনো রেফারেন্স পৃষ্ঠাতে উল্লেখ করা হয়েছে:

যদি পিনটি কোনও কিছুর সাথে সংযুক্ত না থাকে, ডিজিটালরিড () উচ্চ বা নিম্নে ফিরে আসতে পারে (এবং এটি এলোমেলোভাবে পরিবর্তন করতে পারে)।

আপনি যদি আরডুইনো ডিজিটাল পিন টিউটোরিয়ালটি দেখেন :

তবে এর অর্থ এটিও হ'ল, যে ইনপুট পিনগুলি তাদের সাথে কোনও সংযুক্ত নেই, বা অন্য সার্কিটগুলির সাথে সংযুক্ত নয় এমন তারের সাথে সংযুক্ত রয়েছে, তারা পিন অবস্থায় আপাতদৃষ্টিতে এলোমেলো পরিবর্তনগুলি, পরিবেশ থেকে বৈদ্যুতিক শব্দের বাছাই করবে বা ক্যাপাসিটিভভাবে রাষ্ট্রের সাথে সংযুক্ত করবে কাছের পিনের

কোনও ইনপুট উপস্থিত না থাকলে প্রায়শই পরিচিত অবস্থায় একটি ইনপুট পিন চালানো কার্যকর। এটি ইনপুটে একটি পুলআপ রেজিস্টর (থেকে + 5 ভি), বা একটি পুল ডাউন ডাউন রোধকারী (স্থলভাগে প্রতিরোধক) যুক্ত করে করা যেতে পারে, 10 কে সাধারণ মান হিসাবে। সফটওয়্যার থেকে অ্যাক্সেস করা যায় এমন আতমেগা চিপে অন্তর্ভুক্ত সুবিধাজনক 20K পুলআপ রেজিস্টার রয়েছে। এই অন্তর্নির্মিত পুলআপ প্রতিরোধকগুলি নিম্নলিখিত পদ্ধতিতে অ্যাক্সেস করা হয়েছে।

pinMode(pin, INPUT);           // set pin to input
digitalWrite(pin, HIGH);       // turn on pullup resistors

এই দুর্বল টান প্রতিরোধকরা ইনপুট পিনের অবস্থা একটি পরিচিত অবস্থায় জোর করে, এবং জমি বা + 5v এর সরাসরি সংযোগের মতো শক্তিশালী ইনপুট ভোল্টেজগুলি দ্বারা সহজেই ওভাররাইট করা যায়।


2
কীভাবে উল্লেখ করবেন pinMode(pin, INPUT_PULLUP)? এটি মনে রাখা সহজ, এবং স্ক্রু আপ করা সত্যিই শক্ত।
পিজিও

6

এই স্বাভাবিক. কোনও ইনপুট কোনও কিছুর সাথে সংযুক্ত না হলে এটি উচ্চ বা কম বা ক্রমাগত পরিবর্তিত দেখায়। এটি আরডুইনো ওয়েবসাইটে ডিজিটালরিড রেফারেন্স পৃষ্ঠা দ্বারা বর্ণনা করা হয়েছে ।

ইনপুট পিনটি কিছু ছোট ক্যাপাসিট্যান্সের সাথে আচরণ করে, সুতরাং 3V3 বা 5V এর সাথে সংক্ষেপে সংযোগ স্থাপনের ক্যাপাসিটেন্স চার্জ করবে। খালি আঙুল ব্যবহার করে আপনি অনুরূপ প্রভাব পেতে পারেন।

আপনি পিন এবং জিএনডি এর মধ্যে একটি বৃহত মান প্রতিরোধক যুক্ত করে সমস্যা এড়াতে পারেন।

নিজেকে জিজ্ঞাসা করুন কেন আপনি শূন্য আশা করেন?


1
পিনমোড (পিন, INPUT_PULLUP);
জিপ্পি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.