Мазмуну:

Cool Laptop Touchpad Hack Arduino долбоорлору үчүн!: 18 кадам (сүрөттөр менен)
Cool Laptop Touchpad Hack Arduino долбоорлору үчүн!: 18 кадам (сүрөттөр менен)

Video: Cool Laptop Touchpad Hack Arduino долбоорлору үчүн!: 18 кадам (сүрөттөр менен)

Video: Cool Laptop Touchpad Hack Arduino долбоорлору үчүн!: 18 кадам (сүрөттөр менен)
Video: A Cool Laptop Touchpad Hack! | Arduino PS/2 Touchpad 2024, Ноябрь
Anonim
Ардуино долбоорлору үчүн Cool Laptop Touchpad Hack!
Ардуино долбоорлору үчүн Cool Laptop Touchpad Hack!

Бир аз убакыттан кийин, мен Arduino микроконтроллери менен PS/2 сенсордук такта менен алек болуп жүргөнүмдө, анын борттогу эки туташуусу санариптик кирүү катары колдонулушу мүмкүн экенин билдим. Бул Нускамада, биз Arduino долбоорлорубузда колдонуу үчүн PS/2 сенсордук панелинин кошумча санариптик кириштерин кантип колдоно аларыбызды үйрөнөлү. Кел, баштайлы!

1 -кадам: Видеону көрүңүз

Image
Image

Долбоорду жакшыраак түшүнүү, кыйынчылыктар жөнүндө билүү жана кеңештерди алуу үчүн видеону көрүңүз.

2 -кадам: Бардык бөлүктөрдү жана компоненттерди алыңыз

Бардык бөлүктөрдү жана компоненттерди алыңыз
Бардык бөлүктөрдү жана компоненттерди алыңыз
Бардык бөлүктөрдү жана компоненттерди алыңыз
Бардык бөлүктөрдү жана компоненттерди алыңыз

Бул долбоор үчүн сиз төмөнкүлөрдү талап кыласыз:

  • PS/2 сенсордук такта (Synaptics бири белгилүү жана сыналгандыктан сунушталат.)
  • Сенсордук такта менен иштөө үчүн Arduino микроконтроллери (UNO, Леонардо, Нано, Микро ж. Б.).
  • 5 вольттуу туруктуу токтун булагы.
  • Кээ бир эркектен эркекке секирүүчү зымдар.
  • Кеминде 6 зым (сенсордук тактада же тасма кабелинде ширетүү үчүн.)
  • Solder зым.
  • Кандооч.
  • Solder flux (Сиз ансыз деле кете аласыз, бирок бул ширетүү жумуштарын жакшыртат.)
  • Эки баскыч (LED баскычынын демо коду үчүн.)

Айлануучу кодер. (Кошумча, айлануучу коддогучунун демо коду үчүн.)

3 -кадам: Arduino үчүн PS2 китепканасын алыңыз

Бул жерден ps2 китепканасын жүктөп алыңыз. Жүктөлүп алынган папканы рабочий столго жылдырыңыз, анткени аны табуу оңой болот. Arduino IDE ачыңыз жана Эскиз> Китепкананы кошуу> ZIP Китепканасын кошуу баскычын чыкылдатыңыз. Китепкана киргизилет жана сиз азыр ps2 китепканасын колдоно аласыз.

4 -кадам: Сенсордук тактадагы Solder Padsти аныктоо

Сенсордук тактадагы Solder Pad'терди аныктаңыз
Сенсордук тактадагы Solder Pad'терди аныктаңыз

Биринчиден, анын бөлүк номеринин жардамы менен сенсордук панелдин маалымат барагын онлайн текшериңиз. Сиз "Саат", "Маалымат", "Vcc" жана "Gnd" туташуу аянтчаларын табышыңыз керек.

Жалпысынан алганда, төмөнкү төшөмөлөр тиешелүү казыктарга туура келет:

  • 22 ~> +5 вольт (Vcc)
  • 23 ~> Жер (Gnd)
  • 10 ~> Саат
  • 11 ~> маалыматтар

5 -кадам: Зымдарды Идентификацияланган Пластинкаларга туташтырыңыз

Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз
Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз
Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз
Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз
Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз
Зымдарды Идентификацияланган Пластинкаларга Туташтырыңыз

Көбүрөөк билүү үчүн сүрөттөрдү басыңыз.

Сиз зымдарды түздөн -түз ширетүүчү аянтчаларга же бир аз ары барып, сүрөттү көрсөткөндөй ылайыктуу лентаны өзгөртө аласыз. Мен жөн эле эркек секирүүчү зымдарды сенсордук тактага байладым, анткени борттогу лента кабелинин туташтыргычы жетишерлик чоң болгон.

6 -кадам: Arduino микроконтроллерин программалаңыз

Тиркелген код менен Arduino микроконтроллерин программалаңыз.

7 -кадам: Сенсордук тактаны Arduino тактасына туташтырыңыз

Сенсордук тактаны Arduino тактасына туташтырыңыз
Сенсордук тактаны Arduino тактасына туташтырыңыз
Сенсордук панелди Arduino тактасына туташтырыңыз
Сенсордук панелди Arduino тактасына туташтырыңыз

Сенсордук тактага тиешелүү ширетүүчү аянтчаларга туташкан ар бир зымды алып, Arduino тактасы менен төмөнкү байланыштарды түзүңүз:

  • 22 ~> 5V
  • 23 ~> GND
  • 10 ~> A0
  • 11 ~> A1

8 -кадам: Arduino тактасын компьютерге туташтырып, сериялык мониторду ачыңыз

Биринчиден, сенсордук тактадагы кайсы ширетүүчү аянтчалар борттогу лента кабелинин туташтыргычы менен туташкандыгын аныктаңыз (Пластиналар менен лента кабелинин туташтыргычтарын бириктирген жез издерин издеңиз.), Биз карап жаткан нерселер алардын арасында болот.

Эркек секирүүчү зымды алып, анын бир учун Arduino тактасынын 'GND' башына туташтырыңыз. Arduino тактасын компьютерге туташтырып, Arduino IDEдеги сериялык мониторду күйгүзүңүз. Сериалдык мониторду ачууда, эгер эч нерсе көрүнбөсө, туура тактаны тандаганыңызды текшериңиз, зым байланыштарын кайра текшериңиз жана сенсордук панелдин +5 вольттогу зымын ажыратуу жана кайра туташтыруу менен сенсордук панелди кайра күйгүзүңүз. Эгерде баары туура жасалган болсо, сериялык монитор бир катар сандарды көрсөтө башташы керек. 8 санын көрсөткөн биринчи катар биз үчүн маанилүү.

Мунун баарын жасагандан кийин, бош секирүүчү зымды ширетүүчү аянтчалардын ар бирине туташтырыңыз, мүмкүн ленталык кабель туташтыргычы менен байланышкан 2ден 9га чейин. Булардын арасында боштук секиргич зым менен тийгенде, эки серпилгич болот, сериялык монитордун номери 8ден 9га же 10го чейин өзгөрөт, бул биз издеп жаткан ширеткичтер. Санды 9га өзгөрткөн тактаны 'InA' деп, ал эми номерин 'InB' деп өзгөртүүнү белгилеңиз. Мен колдонгон сенсордук тактада 6 жана 7 төшөмөлөрү бар болчу, бул сериялык монитордун номеринин өзгөрүшүнө алып келди.

Дагы бир нерсени текшериңиз, бул экөө тең GNDге туташканда, сериялык монитордогу номер 11ге өзгөрөт.

9 -кадам: Сенсордук тактага кошумча зымдарды туташтырыңыз

Кошумча зымдарды сенсордук тактага туташтырыңыз
Кошумча зымдарды сенсордук тактага туташтырыңыз

Мурунку кадамда аныкталган ширетүүчү аянтчаларга ар бир зымды ээрчиңиз. Эгерде сиз модификацияланган лента кабелин колдонуп жүргөн болсоңуз, анда кабелдик туташтыргычтын кайсы пини керектүү ширеткичтерге туташтырылганын таап, лента кабелинин тиешелүү өткөргүчтөрүнө зымдарды тиркеңиз.

10 -кадам: Arduino микроконтроллерин Демо коду менен программалаңыз

Төмөнкү код биз мурда тапкан сенсордук панелдин эки кошумча төөнөгүчүн колдонот, алардын ар бири баскыч аркылуу жерге туташтырылган.

11 -кадам: Орнотууну текшериңиз

Image
Image

Arduino микроконтроллерин программалагандан кийин, 'A' блокнотун GNDге зым же баскыч менен туташтырыңыз, бул Arduino тактасынын D13 пинине туташкан LEDдин күйүшүнө алып келет. Андан кийин, 'B' төшөгү менен да ушундай кылыңыз, бул LEDдин өчүшүнө алып келет.

12 -кадам: Ротари Encoder кошуу

Ротари Encoder кошуу
Ротари Encoder кошуу

Эгер сиз жөн гана сенсордук тактаңызга кошумча санариптик кирүүлөрдү кошуу үчүн бул бузулууну колдонууну кааласаңыз, анда ал бүттү! Бирок, эгерде сиз андан ары алууну кааласаңыз, сенсордук тактага айлануучу кодерди кошсоңуз болот. Бул жерде мен баскычтуу моторду айлануучу коддогуч катары колдондум.

13 -кадам: Arduino тактасын программалаңыз

Микроконтроллерди берилген код менен программалап, сенсордук тактаны айлануучу коддогуч менен сынап көрүңүз. Код бизге Arduino тактасынын D9 пинине туташкан LEDдин жарыктыгын айлануучу коддогучтун жардамы менен же манжаны сенсордук панелдин х огу боюнча жылдыруу аркылуу жөнгө салууга мүмкүндүк берет.

14 -кадам: Ротари коддогучтун чыгууларын сенсордук панелдин санариптик киришине туташтырыңыз

Ротари коддогучтун чыгууларын сенсордук панелдин санарип киришине туташтырыңыз
Ротари коддогучтун чыгууларын сенсордук панелдин санарип киришине туташтырыңыз

Көбүрөөк билүү үчүн ар бир сүрөттү басыңыз.

Ротари кодеринин эки чыккычын сенсордук панелдин "InA" жана "InB" туташтырыңыз.

15 -кадам: Rotary Encoder менен Touchpadти Powerке туташтырыңыз

Rotary Encoder менен Touchpadти Powerке туташтырыңыз
Rotary Encoder менен Touchpadти Powerке туташтырыңыз
Rotary Encoder менен Touchpadти Powerке туташтырыңыз
Rotary Encoder менен Touchpadти Powerке туташтырыңыз

Сенсордук тактаны коддогучтун +ve терминалын Arduino тактасынын +5 вольттуу башына жана -ve терминалын Arduino тактасынын 'GND' башына туташтырыңыз.

Көбүрөөк билүү үчүн сүрөттөрдү басыңыз.

16 -кадам: Сенсордук панелдин байланыш зымдарын Arduino тактасына туташтырыңыз

Touchpadнын байланыш зымдарын Arduino тактасына туташтырыңыз
Touchpadнын байланыш зымдарын Arduino тактасына туташтырыңыз

Сенсордук тактанын 'Саат' жана 'Маалымат' зымдарын Arduino тактасынын 'A0' жана 'A1' баштарына туташтырыңыз.

17 -кадам: Орнотууну Powerке туташтырыңыз жана Encoderди текшериңиз

Arduino микроконтроллери менен сенсордук такта ортосундагы байланыш бир аз кечигүүнү кошкондуктан, айлануучу коддогуч жогорку ылдамдыкта ишенимдүү иштей албайт.

18 -кадам: Сиз эмне кыласыз?

Эми биз Arduino сенсордук такта долбоорлоруна эки кошумча санариптик кирүүнү кантип кошууну билебиз, бул бузуку менен эмне кыласыз? Эгер сиз бул долбоорду түзсөңүз, аны "Мен жасадым!" Чыкылдатып, коомчулук менен бөлүшүүгө аракет кылыңыз.

Сунушталууда: