AVRکدویژن

راه اندازی کلید لمسی با درایور BS818A-2 توسط کدویژن

کلید touch با درایور BS818A-2

5/5 - (4 امتیاز)

چیپ BS81x قابلیت راه اندازی 2 الی 16 کلید را دارد ، که می تواند تماس بدن انسان را با تاچ پد تشخیص دهد .

چیپ های سری BS81x مجهز به رابط سریال و رابط های موازی برای برقراری ارتباط آسان با یک میکروکنترلر را دارند .

برای پینهای لمسی تمهیدات نظارتی مدار داخلی برای کاهش نویز و کاهش احتمال تشخیص نادرست و افزایش قابلیت اطمینان برنامه سوئیچ لمسی تحت شرایط نامطلوب شرایط محیطی در نظر گرفته شده است .

چیپ های سری BS81x دارای کالیبراسیون خودکار ، جریان آماده به کار کم ، مقاومت عالی در برابر نوسانات ولتاژ و سایر ویژگی ها، این طیف از دستگاه های کلید لمسی ساده و ابزار موثر اجرای عملیات کلید لمسی در طیف گسترده ای از پروژه های کاربردی را امکان پذیر می سازد .

ویژگی های چیپ های سری BS81x

• ولتاژ کاری: 2.2V~5.5V
• جریان آماده به کار کم
• کالیبراسیون خودکار
• تشخیص های لمسی قابل اعتماد
• حالت های آماده به کار و معمولی
• تشخیص حداکثر کلید در مدت زمان کوتاه
• هم رابط سریال و هم خروجی های موازی
• تنظیم حساسیت با استفاده از خازن خارجی
• حداقل تعداد اجزای خارجی

پایه ها (pinout) چیپ BS818A-2

چیپ BS818A-2 دارای 16 پایه به شرح زیر می باشد :

bs818a-2 pinout
bs818a-2 pinout
  • key1~key8 : پایه های ورودی برای اتصال 8 عدد کلید می باشد ، در صورت بلااستفاده بودن هر کلید توصیه می شود به زمین متصل شود .
  • Data-Clock/Bin0~Bin3 : آی سی BS818A-2 دارای دو مد سریال و موازی می باشد . اگر آی سی در مد موازی قرار داده شود ، وضعیت کلید لمس شده به صورت یک عدد باینری 4 بیتی بر روی پایه های Bin0~Bin3 قرار می گیرد . اگر آی سی در مد سریال قرار داده شود ، وضعیت کلید لمس شده به صورت یک عدد 16 بیتی با هر پالس پایه Clock بر روی پایه Data ارسال می شود .
  • (Output Mode Selection)OMS : آی سی BS818A-2 دارای دو مد سریال و موازی می باشد . اگر پایه OMS به VSS یا زمین متصل شود مد موازی و اگر پایه OMS به صورت (Internal Pull-Up)OPEN باشد و به جایی متصل نشود در مد سریال قرار می گیرد .
  • LSC(Lower Standby Current) : اگر این پایه به VSS یا زمین متصل شود ، مصرف جریان در حالت استندبای را کاهش می دهد .

رابط سریال چیپ BS818A-2

چیپ BS818A-2 مجهز به یک رابط سریال است که امکان اتصال آسان به یک میکروکنترلر را دارد. وقتی یک کلید لمسی فشار داده می شود ، بر روی پین Data یک سطح low ایجاد می شود و پس از دریافت این سطح پایین توسط میکروکنترلر ، سپس توسط میکروکنترلر میتوان یک سیگنال ساعت را به پین Clock چیپ BS818A-2 ارسال کنید و وضعیت کلید لمس شده را از پین Data بخوانید .

هنگامی که سیگنال ساعت پایین توسط چیپ BS818A-2 دریافت می شود ، وضعیت کلیدها توسط چیپ BS818A-2 تهیه می شود . وقتی که سیگنال کلاک توسط میکروکنترلر به سطح بالا یا high تغییر می کند ،
میکروکنترلر می تواند داده های وضعیت کلید لمسی را از پین DATA بخواند .

اگر هر گونه خطا در خواندن داده ها وجود دارد، ضروری است حدود 6 میلی ثانیه صبر کنید و سپس دوباره داده ها را بخوانید.

فرمت داده 8 کلیدی چیپ BS818A-2

پس از دریافت سیگنال ساعت توسط میکروکنترلر بر روی پین clock چیپ BS818A-2  ، یک بایت داده 16 بیتی توسط چیپ BS818A-2 تولید می شود و روی پین data به بیرون منتقل  می شود .

در مورد اینکه کدام کلیدها واقعا لمس می شوند، این اطلاعات را می توان از وضعیت داده های بیت bit7~bit0 بازیابی کرد ، برای نشان دادن اینکه کدام کلیدهای لمسی ، key8~key1  لمس شده اند .

می توان به ترتیب بیت کم ارزش bit7~bit0 را به معنای لمس کلید مربوطه key8~key1 در نظر گرفت .  اگر مقدار هربیت 0 باشد یعنی آن کلید لمس شده است و اگر مقدار بیت مربوطه 1 باشد یعنی آن کلید لمس نشده است .

(Bit0=“0”  (Key1 = touch)  ,  Bit0=“1”  (Key1 = no touch
(Bit1=“0”  (Key2 = touch)  ,  Bit1=“1”  (Key2 = no touch
(Bit2=“0”  (Key3 = touch)  ,  Bit2=“1”  (Key3 = no touch
(Bit3=“0”  (Key4 = touch)  ,  Bit3=“1”  (Key4 = no touch
(Bit4=“0”  (Key5 = touch)  ,  Bit4=“1”  (Key5 = no touch
(Bit5=“0”  (Key6 = touch)  ,  Bit5=“1”  (Key6 = no touch
(Bit6=“0”  (Key7 = touch)  ,  Bit6=“1”  (Key7 = no touch
(Bit7=“0”  (Key8 = touch)  ,  Bit7=“1”  (Key8 = no touch

بیت های داده، bit11~bit8، همچنین یک checksum تولید می کنند که محتوای آن تعداد کلیدهای لمسی لمس شده را نشان می دهد. به عنوان مثال، اگر checksum برابر با “0010” باشد، به این معنی است که دو کلید همزمان لمس شده است .

بیت های داده bit15~bit12 ، مربوط به Stop bits می باشد و انتهای داده را مشخص می کند و مقدار آن همواره ثابت و برابر 1010 می باشد .

فرمت داده سریال 8 کلیدی چیپ BS818A-2
فرمت داده سریال 8 کلیدی چیپ BS818A-2

رابط موازی چیپ BS818A-2

BS818A-2 همچنین یک رابط موازی ارائه می دهد و می تواند مستقیماً وضعیت کلید را نشان می دهد.
وقتی نوع خروجی چیپ BS818A-2 موازی انتخاب شود ، چنانچه کلیدی لمس شود ، برخلاف حالت سریال که بطور همزمان چندین کلید لمس شده را تشخیص می داد ،در حالت موازی ، داده های کلید لمس شده فقط یک حالت کلید را منعکس می کند .

وقتی هیچ کلید لمسی فشار داده نمی شود، پایه های BIN3 ~ BIN0 در سطح 1 یا high هستند . وقتی کلیدی فشار داده می شود ، پین BIN3 در سطح 0 یا low قرار می گیرد . در این حالت میکروکنترلر لمس شدن کلید را تشخیص می دهد . وضعیت پایه های BIN2~BIN0 نشان می دهد که کدام کلید فشار داده شده است.

فرمت داده مد موازی چیپ BS818A-2
فرمت داده مد موازی چیپ BS818A-2

 

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

کتابخانه به همراه مثال ، جهت راه اندازی چیپ bs818a-2 توسط میکروکنترلر avr و نرم افزار کدویژن تهیه شده است . این کتابخانه قابلیت راه اندازی در هر دو مد سریال و موازی را دارد . قابلیت تنظیم پایه های دیتا و کلاک بر روی پین دلخواه میکروکنترلر وجود دارد .

جهت تهیه کتابخانه میتوانید از این قسمت اقدام نمایید .

  نویسنده : حسین غیاثوند
 خرید و دانلود در لحظه :

Admin

در زمینه برنامه نویسی و اینترنت اشیاء (IOT) فعالیت می کنم . علاقمند به یادگیری و اشتراک گذاری آموخته های خود هستم .

نوشته های مشابه

guest
0 دیدگاه
بازخورد داخلی
مشاهده همه نظرات