اس ٹیوٹوریل میں ہم اے ٹی ایم ای جی اے 8 مائیکروکنٹرولر کے ساتھ فلکس سینسر کو انٹرفیس کرنے جارہے ہیں ۔ اے ٹی ایم ای جی اے 8 میں ، ہم اس کام کے ل 10 10 بٹ اے ڈی سی (اینالاگ سے ڈیجیٹل تبادلوں) کی خصوصیت استعمال کر رہے ہیں۔ اب ATMEGA میں ADC + 5V سے زیادہ ان پٹ نہیں لے سکتا ہے۔
فلیکس سینسر کیا ہے؟
ایک FLEX سینسر ایک ٹرانس ڈوائس ہے جو اس کی شکل تبدیل ہونے پر اس کی مزاحمت کو تبدیل کرتا ہے۔ یہ نیچے کے اعداد و شمار میں دکھایا گیا ہے.
یہ سینسر خط میں تبدیلیوں کو سمجھنے کے لئے استعمال ہوتا ہے۔ لہذا جب FLEX سینسر جھکا ہوا ہے تو مزاحمت کافی مڑی ہوئی ہے۔ یہ نیچے کے اعداد و شمار میں دکھایا گیا ہے.
اب اس تبدیلی کو مزاحمت میں تبدیل کرنے کے ل voltage ولٹیج میں تبدیلی کے ل we ، ہم وولٹیج ڈیوائڈر سرکٹ استعمال کرنے جارہے ہیں ۔ اس مزاحمتی نیٹ ورک میں ہمارے پاس ایک مستقل مزاحمت اور دوسری متغیر مزاحمت ہے۔ جیسا کہ ذیل کی شکل میں دکھایا گیا ہے ، یہاں R1 ایک مستقل مزاحمت ہے اور R2 FLEX سینسر ہے جو مزاحمت کے طور پر کام کرتا ہے۔ شاخ کا وسط نقطہ پیمائش پر لیا جاتا ہے۔ جب مزاحمت R2 تبدیل ہوجاتا ہے تو ، وؤٹ اس کے ساتھ یکساں تبدیل ہوجاتا ہے۔ تو اس کے ساتھ ہمارے پاس وولٹیج ہے جو خط کے ساتھ بدلتا ہے۔
اب یہاں نوٹ کرنے والی اہم بات یہ ہے کہ ، کنٹرولر کی جانب سے ADC کے تبادلوں کے لئے لیا گیا ان پٹ 50µAmp تک کم ہے۔ مزاحمت پر مبنی وولٹیج ڈویائڈر کا یہ بوجھ اثر اہم ہے کیونکہ وولٹیج ڈویائڈر کے وؤٹ سے نکالا جانے والا موجودہ غلطی کی فیصد کو بڑھاتا ہے ، اب ہمیں لوڈنگ اثر کے بارے میں فکر کرنے کی ضرورت نہیں ہے۔
ہم دو ریزٹرز کو لے کر ایک ڈویائڈر سرکٹ تشکیل دے رہے ہیں تاکہ 25 وولٹ وین کے ل we ، ہمیں 5 وولٹ وؤٹ ملے۔ لہذا ، حقیقی ان پٹ وولٹیج حاصل کرنے کے لئے ہمیں پروگرام میں ووٹ ویلیو کو "5" سے ضرب کرنا ہے۔
ضروری اجزاء
ہارڈ ویئر : اے ٹی ایم ای جی اے 8 ، بجلی کی فراہمی (5 وی) ، اے وی آر - آئی ایس پی پروگرامر ، جے ایچ ڈی_162ALCD (16x2LCD) ، 100uF کاپاکیسیٹر ، 100 این ایف کیپسیٹر (5 ٹکڑے) ، 100KΩ ریزٹر۔
سافٹ ویئر: ایٹمل اسٹوڈیو 6.1 ، پیشرفت یا فلیش جادو۔
سرکٹ ڈایاگرام اور ورکنگ وضاحت
سرکٹ میں PORTD کا ATMEGA8 ڈیٹا پورٹ LCD سے منسلک ہے۔ 16x2 LCD میں اگر وہاں پیچھے کی روشنی ہے تو وہاں 16 پن ہیں ، اگر پیچھے کی روشنی نہیں ہے تو 14 پن ہوں گے۔ کوئی بیک لائٹ پنوں کو طاقت یا چھوڑ سکتا ہے۔ ابھی 14 پنوں میں 8 ڈیٹا پنز (7-14 یا D0-D7)، 2 بجلی کی فراہمی پنوں سے ہیں (1 & 2 یا VSS & VDD یا GND & + 5V)، 3 RD برعکس کنٹرول کے لئے پن (VEE کنٹرولز کس طرح موٹی حروف ہونا چاہیے دکھایا گیا ہے) اور 3 کنٹرول پن (RS & RW & E)
سرکٹ میں ، آپ مشاہدہ کر سکتے ہیں کہ میں نے صرف دو کنٹرول پن لئے ہیں۔ اس کے برعکس تھوڑا سا اور READ / WRITE اکثر استعمال نہیں ہوتے ہیں لہذا ان کو زمین پر چھوٹا جاسکتا ہے۔ یہ ایل سی ڈی کو سب سے زیادہ برعکس اور پڑھنے کے موڈ میں رکھتا ہے۔ ہمیں حرف اور ڈیٹا بھیجنے کے لئے صرف انبل اور آر ایس پنوں کو کنٹرول کرنے کی ضرورت ہے۔
اے ٹی میگا 8 کے ساتھ ایل سی ڈی رابطے مندرجہ ذیل ہیں:
PIN1 یا VSS سے گراؤنڈ
پن 2 یا وی ڈی ڈی یا وی سی سی سے + 5 وی پاور
PIN3 یا زمین سے VEE (ابتدائی کے لئے زیادہ سے زیادہ اس کے برعکس بہترین دیتا ہے)
PIN4 یا RS (انتخاب کا اندراج) UC کے PB0 پر کریں
گراؤنڈ میں پن 5 یا آر ڈبلیو (پڑھیں / لکھیں) (LCD کو پڑھنے کے انداز میں رکھتا ہے جس سے صارف کے لئے مواصلات میں آسانی ہوجاتی ہے)
یو سی کے پی بی 1 سے پن 6 یا ای (قابل)
یو سی کے PIN7 یا D0 سے PD0
یو سی کے PIN1 یا PD1 سے PD1
یو سی کے PIN9 یا D2 سے PD2
یو سی کے PIN10 یا D3 سے PD3
یو سی کے PIN11 یا D4 سے D4
یو سی کے PIN12 یا D5 سے PD5
یو سی کے PIN13 یا D6 سے PD6
یو سی کے PIN14 یا D7 سے PD7
سرکٹ میں آپ دیکھ سکتے ہیں کہ ہم نے 8 بٹ مواصلات (D0-D7) کا استعمال کیا ہے لیکن یہ لازمی نہیں ہے ، ہم 4 بٹ مواصلات (D4-D7) استعمال کرسکتے ہیں لیکن 4 بٹ مواصلاتی پروگرام تھوڑا پیچیدہ ہوجاتا ہے لہذا ہم صرف 8 بٹ کے ساتھ چلے گئے مواصلات. (اس ٹیوٹوریل کو بھی چیک کریں: اے وی آر مائکرو قابو پانے والے کے ساتھ 16x2 LCD انٹرفیسنگ)
لہذا مندرجہ بالا جدول سے محض مشاہدے سے ہم ایل سی ڈی کے 10 پنوں کو کنٹرولر سے جوڑ رہے ہیں جس میں 8 پنوں میں ڈیٹا پن ہیں اور 2 پنیں کنٹرول کے لئے ہیں۔
R2 میں وولٹیج پوری طرح لکیری نہیں ہے۔ یہ شور مچائے گا۔ شور کو چھاننے کے ل cap اعداد و شمار کے مطابق جیسا کہ ڈیزائنر دکھائے گئے ہیں اس کو تقسیم کرنے والے سرکٹ میں ہر ایک ریزسٹر کے اس پار رکھ دیا جاتا ہے۔
یہاں 1K برتن اے ڈی سی کی درستگی کو ایڈجسٹ کرنے کے لئے ہے۔ اب آئی ٹی ایم ای جی اے 8 کے اے ڈی سی کے بارے میں بات کرتے ہیں۔
اے ٹی ایم ای جی اے 8 میں ، ہم پی او آر ٹی سی کے کسی بھی چار چینل کو ینالاگ ان پٹ دے سکتے ہیں ، اس سے کوئی فرق نہیں پڑتا ہے کہ ہم کون سا چینل منتخب کرتے ہیں جیسا کہ سب ایک جیسے ہیں ، ہم PORTC کا چینل 0 یا PIN0 منتخب کرنے جارہے ہیں۔
اے ٹی ایم ای جی اے 8 میں ، اے ڈی سی 10 بٹ ریزولوشن کا ہے ، لہذا کنٹرولر کسی بھی احساس کو ویرف / 2 ^ 10 میں کم سے کم تبدیلی کا پتہ لگاسکتا ہے ، لہذا اگر ریفرنس وولٹیج 5V ہے تو ہمیں ہر 5/2 ^ 10 = 5mV میں ڈیجیٹل آؤٹ پٹ انکریمنٹ ملتا ہے۔. لہذا ان پٹ میں ہر 5mV اضافے کے ل digital ہمارے پاس ڈیجیٹل آؤٹ پٹ میں اضافہ ہوگا۔
اب ہمیں درج ذیل شرائط کی بنیاد پر اے ڈی سی کا رجسٹر ترتیب دینے کی ضرورت ہے ،
1. سب سے پہلے ہمیں اے ڈی سی میں اے ڈی سی کی خصوصیت کو فعال کرنے کی ضرورت ہے۔
2. یہاں ADC تبادلوں کے لئے زیادہ سے زیادہ ان پٹ وولٹیج حاصل کرنے جا رہے ہیں + 5V لہذا ہم زیادہ سے زیادہ قیمت یا ADC کا حوالہ 5V پر مرتب کرسکتے ہیں۔
The. کنٹرولر میں ٹرگر تبادلوں کی خصوصیت ہوتی ہے جس کا مطلب ہے کہ ADC تبادلوں صرف بیرونی محرک کے بعد ہی ہوتا ہے ، کیونکہ ہم یہ نہیں چاہتے ہیں کہ ہمیں مسلسل مفت چلانے کے موڈ میں چلنے کے لئے اے ڈی سی کے لئے رجسٹر ترتیب دینے کی ضرورت ہے۔
any. کسی بھی اے ڈی سی کے ل convers ، تبادلوں کی فریکوئنسی (ینالاگ ویلیو سے ڈیجیٹل ویلیو) اور ڈیجیٹل آؤٹ پٹ کی درستگی متضاد متناسب ہیں۔ لہذا ڈیجیٹل آؤٹ پٹ کی بہتر درستگی کے ل we ہمیں کم تعدد کا انتخاب کرنا ہوگا۔ عام ADC گھڑی کے لئے ہم ADC کا نسخہ زیادہ سے زیادہ قیمت (2) پر مرتب کر رہے ہیں۔ چونکہ ہم 1MHZ کی داخلی گھڑی استعمال کررہے ہیں ، لہذا ADC کی گھڑی (1000000/2) ہوگی۔
یہ صرف چار چیزیں ہیں جن کی ہمیں ADC کے ساتھ شروع کرنے کے لئے جاننے کی ضرورت ہے۔
مذکورہ بالا چار خصوصیات دو رجسٹروں کے ذریعہ مرتب کی گئی ہیں۔
سرخ (ADEN): یہ تھوڑا اے ٹی ایم ای جی اے کی اے ڈی سی خصوصیت کو چالو کرنے کے ل set مقرر کرنا ہوگا۔
نیلی (REFS1 ، REFS0): یہ دو بٹس ریفرنس وولٹیج (یا زیادہ سے زیادہ ان پٹ وولٹیج جو ہم دینے جا رہے ہیں) طے کرنے کے لئے استعمال ہوتے ہیں۔ چونکہ ہم ریفرنس وولٹیج 5V رکھنا چاہتے ہیں ، لہذا ٹیبل کے ذریعہ ، آر ای ایف ایس 0 ترتیب دینا چاہئے۔
پیلو (ADFR): ADC کے لئے یہ بٹ لگانا لازمی ہے تاکہ اسے چلانے کے ل ((مفت چلانے کا موڈ)۔
پنک (MUX0-MUX3): یہ چار بٹس ان پٹ چینل کو بتانے کیلئے ہیں۔ چونکہ ہم ADC0 یا PIN0 استعمال کرنے جارہے ہیں ، لہذا ہمیں کسی بٹس کو ترتیب دینے کی ضرورت نہیں ہے جیسا کہ ٹیبل کے مطابق ہے۔
براؤن (ADPS0-ADPS2): یہ تینوں بٹس ADC کے لئے نسخہ ترتیب دینے کے لئے ہیں۔ چونکہ ہم 2 کا نسخہ استعمال کررہے ہیں ، اس لئے ہمیں تھوڑا سا طے کرنا ہوگا۔
ڈارک گرین (ADSC): یہ تھوڑا سا تبادلہ شروع کرنے کے لئے ADC کے لئے سیٹ کیا گیا ہے۔ جب پروگرام میں ہمیں تبادلوں کو روکنے کی ضرورت ہو تو یہ تھوڑا سا پروگرام میں غیر فعال ہوسکتا ہے۔
ذیل میں دیئے گئے C کوڈ میں اے ٹی ایمگا 8 کے ساتھ ایف ایل ایکس ایکس سینسر انٹرفیسنگ کی مرحلہ وار وضاحت کی گئی ہے۔