مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

نحوه ارتباط صفحه کلید با میکروکنترلر avr


رابط صفحه کلید با میکروکنترلر AVR

در پایین ترین سطح ، صفحه کلیدها در ماتریسی از ردیف ها و ستون ها سازماندهی می شوند. پردازنده از طریق درگاه ها به هر دو ردیف و ستون دسترسی پیدا می کند ، بنابراین با دو پورت 8 بیتی ماتریس کلیدهای 8 X 8 می تواند با میکروکنترلر متصل شود.

با فشار دادن یک کلید ، یک ستون و یک ردیف با هم تماس می گیرند. در غیر این صورت ، هیچ ارتباطی بین ردیف ها و ستون ها وجود ندارد. در صفحه کلیدهای PC x86 ، از یک میکروکنترلر واحد برای رابط نرم افزار و سخت افزار صفحه کلید استفاده می شود.

اتصال صفحه کلید ماتریس با پورت 1 و پورت 2 میکروکنترلر AVR در زیر نشان داده شده است:

 

رابط صفحه کلید AVR

اسکن و شناسایی کلید

شکل بالا یک ماتریس 4 X 4 را نشان می دهد که به دو پورت متصل است. ردیف ها به یک پورت خروجی و ستون ها به یک پورت ورودی متصل می شوند. اگر هیچ کلیدی فشرده نشده باشد ، با خواندن پورت ورودی ، برای همه ستون ها 1s داده می شود زیرا آنها به بالا (VCC) متصل هستند. اگر همه ردیف ها زمین گیر شده و کلید فشرده شود ، یکی از ستون ها 0 دارد زیرا کلید فشرده شده مسیر زمین را فراهم می کند. این عملکرد میکروکنترلر است که صفحه کلید را به طور مداوم اسکن می کند تا کلید فشرده را شناسایی و شناسایی کند.


ردیف های زمینی و ستون های خواندن

برای تشخیص کلید فشرده ، میکروکنترلر با قرار دادن 0 به قفل ورودی ، تمام ردیف ها را زمین می زند و سپس ستون ها را می خواند. اگر داده های خوانده شده از ستون ها D3-D0 = 1111 باشد ، هیچ كلیدی فشار داده نشده است و روند ادامه می یابد تا زمانی كه كلید فشرده شده توسط سیستم شناسایی شود.

با این حال ، اگر یکی از بیت های ستون صفر باشد ، این بدان معنی است که فشار کلید اتفاق افتاده است. به عنوان مثال ، اگر D3-D0 = 1101 ، به این معنی است که یک کلید در ستون D1 فشار داده شده است. پس از تشخیص فشار کلید ، میکروکنترلر از مراحل شناسایی کلید عبور می کند.

با شروع از ردیف بالا ، میکروکنترلر دلیل ایجاد آن فقط برای ردیف پایین تا ردیف D0 است. سپس ستون ها را می خواند. اگر داده های خوانده شده همه 1s باشد ، هیچ کلیدی در یک ردیف فعال نمی شود و روند کار بیشتر به ردیف بعدی منتقل می شود.

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

برنامه C برای خواندن صفحه کلید و ارسال نتیجه به پورت D در زیر آورده شده است:

PC0-PC3 به ستونها متصل است

PC4-PC7 به ردیف ها متصل است

 

 

رابط ADC0804 با میکروکنترلر AVR


اتصالات ADC0804 Pin-out و معمولی

برای ارتباط با ADC0804 با هر میکروکنترلر ، حداقل 11 پین از Analog to Digital Converter برای رابط با میکروکنترلر مورد نیاز است. از 11 پایه ADC0804 8 پایه به عنوان پایه داده و 3 پایه به عنوان پایه کنترل استفاده می شود.

همانطور که در تراشه مدار زیر نشان داده شده است ، اگر ما از پورت میکروکنترلر برای هرگونه مالتی پلکسینگ محیطی دیگر استفاده نمی کنیم ، پین را می توان کم کرد.

 

ADC0804 رابط 1

برای استفاده از مدار مجتمع (IC) از قانون جهانی استفاده می شود. همه ما برای مطالعه صفحه داده IC که به ما نشان می دهد چگونه می توان داده را ارسال کرد ، کدام سیگنال را برای ارسال و در چه زمانی سیگنال باید کم یا زیاد شود و غیره مطالعه کنیم.

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

نمودار زمان بندی شروع شروع در زیر نشان داده شده است:

ADC0804 رابط 2

نمودار پایان زمان تبدیل در زیر نشان داده شده است:

ADC0804 رابط 3

نمودارهای زمان بندی فوق از صفحه داده ADC0804 است. نمودار اول در شکل 10A نحوه شروع تبدیل را نشان می دهد. با استفاده از نمودار زمانبندی می توانید ببینید که کدام سیگنال باید ادعا شود و در چه زمانی ما نیاز به شروع تبدیل داریم.

از مراحل زیر برای شروع فرآیند تبدیل آنالوگ به دیجیتال استفاده می شود:

  • سیگنال انتخاب تراشه (CS) را به عنوان کم پیکربندی کنید.
  • پیکربندی سیگنال نوشتن (WR) کم است.
  • پیکربندی انتخاب تراشه (CS) زیاد است.
  • صبر کنید تا پین INTR کم شود (به این معنی است که تبدیل به پایان می رسد).

پس از تکمیل فرآیند تبدیل در ADC ، داده ها در داخل قفل خروجی ADC در دسترس هستند. شکل 10B نمودار زمانبندی نحوه خواندن مقدار تبدیل شده از فرآیند قفل خروجی ADC را نشان می دهد. داده های فرآیند تبدیل جدید برای خواندن در دسترس است پس از ADC0804 با پایین آمدن تبدیل ، پین INTR پایین می آید.

مراحل زیر برای خواندن خروجی از ADC0804 استفاده می شود:

  • پین انتخاب تراشه (CS) را به عنوان کم پیکربندی کنید.
  • پیکربندی سیگنال read (RD) کم است.
  • داده ها را از پورتی که ADC متصل است بخوانید.
  • سیگنال read (RD) high را پیکربندی کنید.
  • سیگنال انتخاب تراشه (CS) را پیکربندی کنید.

برنامه AVR C برای ADC0804 در زیر آورده شده است:

 

 

AVR UART / ارتباط سریال

در میکروکنترلر AVR ، از مجموعه ثبت های زیر برای برقراری ارتباط از طریق UART استفاده می شود:

  • UCSRA: در این پرچم ها برای اشتباهات مختلفی که ممکن است هنگام انتقال داده رخ دهد ، استفاده می شود. به عنوان مثال خطای قاب ، خطای برابری و غیره
  • UCSRC: در این ثبات ها می توان بیت های متوقف ، حالت برابری و غیره را تنظیم کرد.
  • UCSRB: در این رجیستر بیت های فعال بسیاری را ارائه می دهیم. به عنوان مثال بیت های مختلف وقفه فعال برای انتقال و دریافت بیت های فعال.
  • UBRRH & UBRRL: در رجیستر UBRRL ، بایت کمتری برای ذخیره نرخ Baud مورد نیاز و در رجیستر UBRRH ، بایت بالاتر برای ذخیره سازی نرخ Baud مورد استفاده قرار می گیرد.

اطلاعات بیشتر در مورد رجیسترهای فوق را می توان در یک صفحه داده از میکروکنترلر AVR مورد استفاده قرار داد.

مقدار اولیه ثبت های ارتباطی سریال به زبان اسمبلی در زیر آورده شده است:

 

مقدار اولیه ثبت های ارتباطی سریال به زبان C تعبیه شده در زیر آورده شده است:

برای انتقال سری به داده ها ، ما باید داده ها را برای ارسال در 8 بیتی ثبت اطلاعات UART (UDR) قرار دهیم و بافر خالی انتقال را در شرایط تعیین شده نظرسنجی کنیم. هنگام دریافت داده از پرچم دریافت ، هنگام تنظیم داده دریافت شده از ثبت UDR. در زیر مثالی برای پیاده سازی این در زبان اسمبلی آورده شده است:

 

برای انتقال سری به داده ها ، ما باید داده ها را برای ارسال در 8 بیتی ثبت اطلاعات UART (UDR) قرار دهیم و بافر خالی انتقال را در شرایط تعیین شده نظرسنجی کنیم. هنگام دریافت داده از پرچم دریافت ، هنگام تنظیم داده دریافت شده از ثبت UDR. مثالی برای پیاده سازی این در زبان C تعبیه شده در زیر آورده شده است:

فصلِ: 1 , تعداد قسمت ها: 6 , سطح: مقدماتی

این فصل در یک نگاه:

LED - motor - GND - power - logicstate - صفر و یک - معرفی سه عملگر اصلی - معرفی آیسی های 74 - راه اندازی 7404، 7408 و 74…

مجموعه آموزش پروتئوس شامل 6 قسمت 8 الی 10 دقیقه ای است که به زبان فارسی از صفر تا صد این نرم افزار کارآمد را توضیح می دهد.هم چنین در کنار آن به آموزش عملگر های اصلی  در محیط رنگارنگ پروتئوس …
فصلِ: 1 , تعداد قسمت ها: 19 , سطح: صفر تا صد

این فصل در یک نگاه:

آردوینو (Arduino) یک پلتفرم اوپن سورس الکترونیک است. بدین معنی که نرم‌افزار و طرح سخت‌افزار آن به صورت آزاد در اختیار تم…

در دنیای الکترونیک برای یادگیری هرچه بهتر مدارها و بوردهایی که میتوان روی آنها برنامه نویسی کرد مثل بورد آردینو هیچ آموزشی و هیچ کتابی بهتر از آموزش های پروزه محوز و سریالی و پشت سرهم نیست و…
فصلِ: 2 , تعداد قسمت ها: 102 , سطح: صفر تا صد

این فصل در یک نگاه:

معرفی سنسور ها و قطعات خروجی…

توضیحات کلی مجموعه: ... با سلام خدمت شما کلیک سایتی های عزیز با جذاب ترین و کامل ترین دوره آموزش الکترونیک در خدمت شما هستیم. گاهی اوغات ایده ها یا اختراعی در حوزه الکترونیک به ذهن شما میرس…
فصلِ: 10 , تعداد قسمت ها: 301 , سطح: صفر تا صد

این فصل در یک نگاه:

کلام پایانی:-بازار کار-نحوه ی دیدن دوره-میکروکنترلر های مختلف-و...…

فصل اول: در این فصل: -ابتدا به گفتن مقدمه ای درمورد این دوره و میکروکنترلر Avr میپردازیم، -درمورد مباحث ریاضی مورد نیاز صحبت میکنیم، -درمورد مبنا های مختلف صحبت میکنیم، -درمورد تبدیل مبنا …

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید