سرخط خبرها
خانه » avr » آموزش avr » Touch screen-صفحه لمسی-تاچ اسکرین

Touch screen-صفحه لمسی-تاچ اسکرین

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

چرا ؟

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

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

در این قسمت به شما یک صفحه لمسی را معرفی می کنیم که اندازه ان به اندازه یک ال سی دی گرافیکی ۱۲۸*۶۴ می باشد.

که بر روی Glcdقرار می دهید و با فشار دادن صفحه ( اگر با قلم های مخصوص این کار را انجام بدید خیلی بهتر است که این خود دلایلی دارد) می تونید کار خود را انجام بدهید و به دستگاه دستور بدهید.

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

در زیر شکلی از این Touch screen اورده شده است.

touch20screen-yazdkit-com

این نوع صفحه لمسی دارای ۴ سیم می باشد که به وسیله دو سیم میانی می توان مختصات x وy نقطه فشار داده شده بر روی صفحه را بدست اورد لازم است که بگوییم خروجی x و y به صورت ولتاژ می باشد که بسته به نوع موقعیت مکان فشار داده شده به صفحه، ولتاژ خروجی تغییر می کند که برای بدست اوردن مختصات باید این دو خروجی را به A/D میکرو بدهید.

برای این که بتوانیم مختصات نقطه x را بدست اوریم باید به صفحه به صورت زیرسیم های تغذیه را وصل نماییم

touch20screen-yazdkit-com203

سپس برای این که بتوانید مختصات Y را بدست اوردید باید شکل دادن تغذیه به پایه ها را تغییر دهید و به صورت زیر وصل نمایید.

touch-screen-yazdkit-com-4

باید عمل تغییر دادن ولتاژ پایه ها برای بدست اوردن X ,Y سریع صورت گیرد به همین دلیل نمی توان به طور دستی این کار را انجام داد و باید با میکرو این عمل را انجام دهید.

اگر به دو عکس با لا با دقت توجه کرده باشید می بینید که در دو صورت یکی از پایه ها باید HI-Z (های امپدانس) باشد.

برای این که بتوانید با میکرو این حالت را به وجود اورید باید به صورت زیر عمل نمایید.(این دستور برایAVR و به زبان بیسیک می باشد ).باید برای به وجود اوردن این حالت پینی که به این پایه متصل شده است را به عنوان ورودی در نظر گرفته و سپس ان را RESET نمایید.

به عنوان مثال:

Config Porta.0 = input

Reset Porta.0

در مورد تغذیه هم که می توانید ان را به ۵ ولت وصل نمایید.

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

touch20screen-yazdkit-com201-1

اما باز هم اگر دقت کرده باشددر دو حالت اتصال نقاط VCC و GND و همچنین HI-Z یکی نمی باشد برای این که سریع حالت پایه ها را برای بدست اوردن نقطه X تنظیم کنید وسپس حالت پایه ها برای بدست اوردن نفقطه Y تغییر دهید باید به صورت زیر عمل کنید که به زبان بیسیک نوشته شده است.

Config Porta.0 = Output

Config Porta.1 = Input

Config Porta.2 = Output

Config Porta.3 = Input

Set Porta.0

Reset Porta.1

Reset Porta.2

Reset Porta.3

X = Getadc(1)

X = X / 4

Waitms 10

Config Porta.0 = Input

Config Porta.1 = Output

Config Porta.2 = Input

Config Porta.3 = Output

Reset Porta.0

Set Porta.1

Reset Porta.2

Reset Porta.3

Y = Getadc(2)

Y = Y / 8

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

حالا نوبت به lcd گرافیکی می رسد.در این جا نحوه ارتباط دهی ۲ ال سی دی گرافیکی با میکرو توضیح می دهیم که یکی از ان ها به شماره Ts-12864A-2است و دیگری به شماره KXM12864J-3 می باشد که هر دو ان ها از چیپ KS0108 ساخته شدهاند و همچنین چیدمان پایه ها کاملا مثل هم است و می توان گفت که یکی هستند.

قبلا در همین سایت (یزد کیت دات کام) پروژه ایی با GLCD قرار داده شده بود که به خوبی هم کار می کند ولی شاید شما ان را ساخته باشید جواب نگرفته باشید چون در نقشه ایی که با پروتیوس کشیده شده بود طریقه چیدمان پایه ها در فایل پروتیوس با چیدمان پایه ها در ال سی دی گرافیکی با هم تفاوت داشت که این عیب ناشی از ضعیف بودن کتابخانه پروتیوس می باشد و کسی در این میان مقصر نمی باشد.

در زیر عکسی اورده شده است که پایه های ال سی دی گرافیکی را نوشته است که چیدمان پایه ها مانند چیدمان پایه ها در ال سی دی گرافیکی واقعی می ماند.

touch-screen

touch20screen-yazdkit-com202

با دستور زیر lcd گرافیکی را در avr مشخص می کنیم.

hwstack = 32

swstack = 10

framesize = 40

$lib “glcdKS108.lib”

Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portc , Ce = 0 , Ce2 = 1 , Cd = 4 , Rd = 3 , Reset = 2 , Enable = 5

در دستور بالا ce نوشته که csb است

Ce2 که csa است

Cd که d/I است

Rd که r/w است

Reset که res است

Enable که باید به e وصل شود.

برای دریافت نقشه کامل طریقه اتصال  TOUCH SCEEEN فایل زیر را که در قالب PDF است را دانلو نمایید.

دانلود “نقشه اتصال touch screen” touch-screen.pdf – Downloaded 10187 times – 7 KB

برای این که کاربران بتوانید به راحتی مدار خود را بسازید برنامه نوشته شده به زبان بیسیک را برایتان اماده کرده ایم که خودم شخصا استفاده کرده ام و به خوبی هم جواب گرفته ام در ضمن باید برنامه را با بسکام ورژن ۱٫۱۱٫۹٫۰ باز بکنید .

دانلود “برنامه و سورس touch screen” glcd-yazdkit.com.zip – Downloaded 7689 times – 19 KB

لازم به ذکر است که بگویم تغذیه کل مدار ۵ ولت می باشد و همچنین پایه های تغذیه ای سی ATMEGA32 به این صورت می باشد که پایه ۱۰ای سی را به۵ ولت پایه ۱۱ را به زمین وصل نمایید.

همچنین ببینید

ساخت دور سنج با استفاده از سنسور اثر هال UGN3503

در چندین پست قبلی سنسور اثر هال Ugn3505  معرفی گردید که میتوانید جهت دیدن ان ...

۷۹ دیدگاه

  1. سلام. من این صفحه لمسی رو از کجا می تونم پیدا کنم. در نهران کجا دارن؟
    ممنون. شمارش چنده؟
    با تشکر

  2. در سایت http://www.abzar.com میتونید سایزهای مختلف این صفحات لمسی از نوع مقاومتی رو ببینید . این صفحات دارای برد کنترلر USB و RS232 با درایور سیستم عاملهای مختلف هستند
    🙂

  3. میخواستم بپرسم برای لمسی کردن کامپیوتر چه نوع مداری لازمه ؟

  4. بالاخره تونستم راه اندازی کنم
    از این پتاسیومتر ها هم بدم میاد کار نمیکنند پایه سه رو به پایه هیجده ال سی دی وصل کردم کار کرد کاملا حل شد

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

    میشه دیتا شیت دو سه نوع تاچ رو بذارین ماله من هیچی روش نیس هیچ عدد متن یا مارک نیست تست هم کردم کار میکنه لامپ معمولی سه ولتی بستم روش تا حرکت افقی و یک بار هم با حرکت عمودی قلم روی صفحه نور آن افزایش و کاهش می یافت

  5. سلام ممنون از پروژهٔ جالبتون . یه سوالی داشتم من اگه بخوام این پروژ رو تبدیل به دفترچه نقّاشی دیجیتال کنم باید چه دستوراتی رو تو برنامش اضافه کنم

    من یه سری تغیرات دادم . مثلا دستور locate رو تغییر دادم و تو location‌های مختلف علامت . رو چاپ می‌کنم ولی‌ چون setfont ۸ * ۸ هستش اون چیزی که می‌خوام نمی‌شه . یعنی‌ فاصلهٔ بین نقطه‌ها ۸ پیکسلی میفته که باید ۱ پیکسلی باشه

    ممنون میشم راهنماییم کنید

  6. منم یکی از این ال سی دی های مسخره خریدم واقعا پشیمونم ts12864a2
    هر کاری میکنم راه انادازی نمیشه

    فقط بک لایت روشن میشه و چیزی نمیاره

    *** از پورت ADC به عنوان ورودی یا خروجی ال سی دی استفاده نکردم فقط پایه ۱۸ رو به پتانسیومتر وصل نکردم و الان تا این ساعت ۴ روزه که واقعا تلاش میکنم ولی موفق نشدم
    ***- متاسفانه سه تا هم میکرو ۳۲و۱۶ رو فیوز لاک کردم و دیگه پروگرامر نمیشناستشون

    یه خواهشی دارم بهم یه ال سی دی گرافیکی ۱۲۸*۶۴ معرفی کنید عین همون ۱۶*۲ در مرحله اول بدونه زحمت به میکرو وصل بشه

  7. سلام ببخشین من میخوام پروژه مو با پروتیوس شبیه سازی کنم یه تاچ اسکرین لازم دارم ولی تو لیست قطعات پروتیوس نیس.میشه راهنمایی کنید که چه جوری می تونم تاچ اسکرینو به کتابخونه اش اضافه کنم؟تا حالا کسی این کارو کرده؟
    ممنون میشم اگه راهنمایی کنید.

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

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

پاسخ دهید