Жеке макро -механикалық пернетақта: 12 қадам (суреттермен)
Жеке макро -механикалық пернетақта: 12 қадам (суреттермен)
Anonim
Жеке макро механикалық пернетақта
Жеке макро механикалық пернетақта
Жеке макро механикалық пернетақта
Жеке макро механикалық пернетақта
Жеке макро механикалық пернетақта
Жеке макро механикалық пернетақта
Арнайы макро механикалық пернетақта
Арнайы макро механикалық пернетақта

Бұл нұсқаулықта мен сізді Arduino басқаратын 6 пернелі макропадты құрудың негіздерімен таныстырамын. Мен сізге қажет нәрсені, оны қалай жинауды, қалай бағдарламалауды және оны қалай жақсартуға немесе оны өзіңізге айналдыруға болатынын түсіндіремін.

Көптеген зерттеулерден кейін мен макро пернетақтаны немесе жалпы қолмен сымды пернетақтаны жасау туралы керемет нұсқаулық таба алмадым. Сондықтан мен мұны диодсыз, резисторсыз және басқа ешнәрсесіз қарапайым түрде жасауға шешім қабылдадым. Мен сондай -ақ бірегей модульдік пернетақтаны алғым келді, онда мен өзіме қажет бөлшектерді ала аламын, бұл басқа көптеген бөліктердің біріншісі. Бұл модульдің шабыты пернетақтадағы көрсеткі пернелерден болды, оны қалтаңызға сыйғызу және кез келген уақытта кез келген жерден алып кету, егер сізге жолда бірнеше қосымша түймелер қажет болса.

Бұл пернетақта қалай жасалғанына байланысты, сатып алу туралы шешім қабылдамас бұрын нұсқаулықты оқып шығуды ұсынамын.

Мен сондай -ақ нұсқаулықты логикалық тәртіпте жасауға тырыстым, бірақ мен логикалық түрде құрастырмаймын, сондықтан сіз қалай құрастырғаныңызға байланысты қадамдар ретімен айналып өту жақсы болар еді.

1 -қадам: бөлшектерді алу

Бөлшектерді алу
Бөлшектерді алу

Ең ұзақ қадам дәл осы жерде, бөлшектерді сатып алу және олардың жеткізілуін күту. Amazon сілтемелері канадалық Amazon болады. Сізге қажет бөлшектер:

  1. Механикалық кілттер қосқыштары

    • Мен осы жерден мөлдір шыңдары бар Гатерон қосқыштарын таңдаймын (Таза шыңдар келесі қадамды жеңілдетеді, коммутаторлардың ең кең таралған түрлері де сол жерде қамтылған)
    • Сатып алуға болатын басқа жерлерді сүйікті коммутатор бөлімінен табуға болады

      Мен сондай -ақ мұнда «Сезімдер» бөлімінде қандай қосқышты қалайтынын зерттеуді ұсынамын

  2. Механикалық пернелер тіркесімі

    • Олардың сіз таңдаған қосқышқа сәйкес келетініне көз жеткізіңіз!

      Түсті өзгерту үшін олардың артқы жарықпен үйлесетініне көз жеткізіңіз

    • Жеткізушілерді мұнда «Жаңалықтар кілттері (стандартты өндіріс)» бөлімінен табуға болады, егер сіз толық пернелер жиынтығын алғыңыз келмесе.
  3. Мекенжайланатын RGB жарықдиодты жолақтар (қосымша, бірақ өте ұсынылады)

    • Мен бұған ұқсас нәрсені Amazon -дан сатып алдым

      • Жарықдиодты шамдар WS2812B екеніне көз жеткізіңіз, олар төмен кернеуді қабылдай алады.
      • Сіз сондай -ақ сүйікті түсті 3 мм тұрақты жарықдиодты сатып ала аласыз, бірақ сізге резистор қажет
  4. HID үйлесімді микроконтроллер (мен Pro Micro қолдандым)

    • Мен оларды Amazon -дан ең жақсы мәмілеге сатып алдым

      Сіз басқа микроконтроллерлерді сатып ала аласыз, бірақ олардың Arduino мен HID (адам енгізу құрылғысы) үйлесімді екеніне көз жеткізіңіз

  5. 128x32 I2C OLED дисплейі

    Мен мұны Amazon -дан сатып алдым

  6. 3D принтерге қол жеткізу

    • Айналаңыздағы жергілікті кітапханалармен немесе мектептермен танысып көріңіз және олардың 3D принтері бар -жоғын біліңіз
    • Мен ешқашан жеке онлайн қызметін қолданған емеспін, бірақ сіз оны да қолдана аласыз (мысалы)
  7. Жіңішке сым
  8. Қажетті жалпы құралдар

    • Дәнекерлеуіш пен дәнекерлеуіш
    • Бүйірлік кескіш қысқыштар
    • Шағын файлдар (міндетті емес)
    • Ыстық желім пистолеті мен желім
    • Сіз таңдаған бұрағыш пен бұрандалар

2 -қадам: пернелер тіркесімін өзгерту

Перне қосқышының модификациясы
Перне қосқышының модификациясы
Перне қосқышының модификациясы
Перне қосқышының модификациясы
Перне қосқышының модификациясы
Перне қосқышының модификациясы

Сіз сатып алған қосқыштарды бөлшектей бастаңыз. Біз мұны жарықтың біздің пернелер қақпағымызға жақсы жетуі үшін жасаймыз. Егер сіз RGB қолдамайтын пернелерді таңдасаңыз, бұл қадамды өткізіп жіберіңіз.

2 кішкене сыналарды алыңыз (мен жалпақ бұрағыштың 2 ұшын қолдандым) және қосқыштың бүйіріндегі ілгектердің астына басыңыз. Содан кейін жабылмауы үшін үстіңгі және астыңғы жағына бір нәрсе салыңыз. Басқа жақтың ілгектерін итеруді жалғастырыңыз, сондықтан ешқандай қойынды әлі де үстіңгі жағынан ұстамауы керек. Осыдан кейін, аяқтаңыз және қосқыштың жоғарғы жағын шығарыңыз. Әдетте корпустың үстіңгі және астыңғы, серіппелі және бағаналы төрт бөлігінен тұрады (кілт қақпағын ұстайтын қосқыштың жылжымалы бөлігі).

Жарықтың өтуіне мүмкіндік беру үшін корпустың түбінен кішкене бөліктерді кесуді бастаңыз. Алдымен пластинадағы қосқышты ұстайтын құлақшаны кесіңіз. Содан кейін бастапқы жарықдиодты аздап кесіңіз (4 саңылауы бар бөлік, олар жарықдиодты аяқтарға арналған). Төменге түсу үшін ішіндегі табақшаны баяу кесіңіз. Содан кейін серіппені ұстайтын қосқыштың цилиндрлік ортасына дейін кесуге өтіңіз. Бізге бұдан әріге барудың қажеті жоқ. Осыдан кейін тесікті сәл кеңейтіңіз, алдын ала қалыпталған тіректермен екі жағын баяу кесіңіз. Тағы бір қосымша қадам - оны қағазға түсіру, оны әдемі және аз қозғалатын ету. Корпустың ішінде пластикалық бөлшектердің жоқтығына көз жеткізіңіз, себебі сіз қосқыштың жабысып қалуын қаламайсыз. Бұл кесулерді баяу және кішкентай етіп жасағаныңызға көз жеткізіңіз, себебі мен корпусты бір -бірінен ажырататын бүйірлік кескіштердің енінен бірнеше корпусты сындырдым.

Егер коммутатордың жоғарғы жартысы анық болмаса, оны жарықтың түсуіне мүмкіндік беру үшін өзгертуге тырысыңыз. Коммутаторды бұзбай біртіндеп көріңіз, себебі сіз сабақтың құлап кетуін қаламайсыз. Кәдімгі жарық диодты ұстайтын пластмассаны кесіп тастау және сабақты жабық күйде қалдырып, оны тек қағазға түсіру мүмкін болатын шешім болуы мүмкін.

3 -қадам: 3D басып шығару

3D басып шығару
3D басып шығару

Сізге төмендегі zip файлдарының бірін жүктеп алып, оларды 3D форматында басып шығару қажет болады. Сіз қалаған нәрсеге байланысты әр түрлі нұсқалар болады. Барлық қалыпты stl файлдары бар қалта болады (KeybArrowSTLFiles), және Autodesk ойлап табушы файлдары бар (KeybArrowSourceFiles), осылайша сіз файлдарды өзгерте және оларды өз қажеттіліктеріңізге қарай өзгерте аласыз. Файлдар мен басып шығарғаннан біршама ерекшеленеді, себебі дизайнның кейбір кемшіліктері болды және мен оларды жақсартуға болатынын сездім. Мысал істің жақтары болар еді, менікі тым жоғары болды, сондықтан пернелер тіркесімі төмен түспейді, жаңа файлдар оны түзетуі керек.

Олардың дизайны өте күрделі, 30+ қадамнан тұрады. Менің айтайын дегенім, егер сіз басқа өлшемдегі корпусты жасағыңыз келсе, сізде 3D -дің біршама күрделі дизайнымен тәжірибесі бар екеніне көз жеткізіңіз. Бұл 3D дизайнын жаңадан бастаған адамдар үшін емес.

Корпус файлдарының екеуі де 3 градус бұрышта екенін ескеріңіз және оларды төсекке тегіс бұрышпен қою керек

4 -қадам: Сізде бар нәрсені жинау

Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау
Әзірге қолда барды жинау

Енді бізде барлық бөлшектер бар, және бізде 3D басып шығарылған бөліктер бар, оны сәл жинайтын уақыт келді!

Барлық 6 қосқышты табаққа салыңыз да, орнына жабыстырыңыз. Біз оларды желімдеуіміз керек, себебі біз оны бекітетін ілгектерді кесіп тастадық. Мен OLED -ді қоюды күтуді ұсынамын, себебі сіз оның көлбеу болғанын қаламайсыз.

Содан кейін 6 жарықдиодты өшіріп, оларды жарық диодты тақтаға салыңыз. Пластинадағы төртбұрыштар светодиодтарды туралауға көмектеседі. Төртбұрышты светодиодтар оларға сәйкес келеді, осылайша туралауға көмектесу үшін басқасын 3d басып шығаруға немесе оны артқы жағына қоюға болады. Көрсеткілер басқа жарық диодты көрсететініне көз жеткізіңіз, себебі DO DI -ге дәнекерленген болады. Светодиодтарды ыстық желіммен жабыстыру үшін сол квадраттарды қолданыңыз, оларды орнында ұстаңыз және желімнің ұсталуын күтіңіз.

Мен светодиодты (суреттерде) ұстау үшін қосқыштар үшін прототип тақтасын қолдандым, себебі мен жіптерді ысырап етуді ұнатпаймын және қайта пайдалануға шешім қабылдадым. Жаңа файл ештеңеге әсер етпейді, тек туралауды жеңілдетеді.

5 -қадам: OLED орнату

OLED орнату
OLED орнату
OLED орнату
OLED орнату
OLED орнату
OLED орнату

Мен осы нұсқаулықты мұқият қарау үшін қолдануды ұсынамын. Олар оны түсіндіру үшін өте жақсы жұмыс жасады.

Код жұмыс істеуі үшін сізге осы кітапхананы және осы кітапхананы жүктеу және импорттау қажет болады.

Алдымен оны сымға қосыңыз. VCC -ді VCC -ге, ал GND -ге GND -ге қосыңыз. Содан кейін SDA және SCL түйреуіштерін қосыңыз. SDA және SCL түйреуіштері әр Arduino -дан әр түрлі болуы мүмкін, бірақ микро -микрофонда SDA 2 -ге дейін, ал SCL -3 -ке дейін сыммен қосылады. және SCL қосылады.

Келесі - бұл суреттерді көрсету және жасау. Төменде оны қалай жұмыс істеуге болатыны туралы файлдар болады. Бірінші қадам - ScreenScan кодын қолдану (бастапқыда Arduino осында берілген). Кодты Pro Micro -ге жүктеп, Сериялық оқу құралын ашыңыз (жоғарғы жағындағы құралдар қойындысының астында). Ол сізге OLED мекенжайын және кері байланысын оқиды. Егер сіздің мекен -жайыңыз 0x3C болса, сізге ештеңені өзгертудің қажеті жоқ. Егер олай болмаса, онда ssd1306_128x32_i2c кодындағы адресті және соңғы кодты (ArrowKeypad деп аталады) дұрыс жұмыс істеу үшін өзгерту керек.

Енді 128x32 i2c коды үшін (ssd1306_128x32_i2c деп аталады) Adafruit ssd1306 кітапханасына енгізілген мысал кодын тексеріңіз.

Осыдан кейін Arduino -ны қосулы күйде ұстаңыз және коммутатор тақтасындағы OLED -ді реттеуге тырысыңыз, содан кейін оны өшіріп, орнына жабыстыруға тырысыңыз. Сіз бұл әрекетті бірінші рет қабылдай алмайсыз, бірақ оны аяқтаған кезде ол бұрылмайтын етіп реттеуге тырысыңыз. Мен бір жағын сәл жабыстыруды ұсынамын, ал екінші жағын көлбеу емес екенін тексерместен бұрын тексеріңіз.

Кодты қазір жүктеп алыңыз және осы нұсқаулықтың 8 -қадамындағы басқа код файлдарын қолданыңыз

6 -қадам: дәнекерлеу

Дәнекерлеу
Дәнекерлеу

Fritzing файлы төменде қол жетімді болады. Бұл сізге схемамен өзара әрекеттесуге мүмкіндік береді, егер сіз тышқанның сол жақ батырмасын басып тұрсаңыз, файлды ашпас бұрын Фритзингке импортталуы қажет барлық сымдар қосылғанын (сары нүктелермен белгіленген) көре аласыз (үшін Pro Micro және LED).

«MOSI, MISO немесе SCLK» белгісі бар түйреуіштердің ҚОЛДАНЫЛМАҒАНЫНА көз жеткізіңіз, әйтпесе OLED ақауларын тудырады

6 светодиодты бір жолаққа кесіп, пластинаға жапсырғаннан кейін. Дәнекерлеу үтігін мыс жастықшаларға салыңыз да, олардың әрқайсысына дәнекер қосыңыз. Сымның кішкене бөліктерін кесіп, жартысын алып тастаңыз, бұраңыз, содан кейін екінші жартысын алыңыз да, сымды бұраңыз. Сымды қысқышпен немесе дәнекерлеуші көмекші қолмен ұстау керек, ал сіз оны дәнекермен ұстаңыз. Оны жақсы ұстау үшін көбірек дәнекерлегішті қосыңыз. Қатардағы барлық светодиодтарды бірге дәнекерлеңіз. Сымды кесіп, оны бірінші қатардағы жарықдиодты «DO» немесе «D-» белгісімен дәнекерлеп, екінші жолдағы бірінші диодты «DI» немесе «D+» белгісімен жалғаңыз. '. Сіз мұны 5v және GND көмегімен де жасай аласыз, бірақ әр қатардағы алғашқы 5v және GND светодиодтары сыммен қосылса, оңайырақ болады. 5 вольтты сымды VCC -ге, деректер түйреуішін кез келген цифрлық пинге (коды 10 деп орнатылған) және GND -ті Arduino -дағы GND -ге жалғаңыз.

Arduino кірісті тануы үшін коммутаторлар жерді деректер түйреуішіне қосу керек. Осылайша, барлық 6 ажыратқышты жерге қосу үшін бір сымды дәнекерлеуге болады. Әр сөндіргішке бір сымды дәнекерлеңіз және мүмкіндігінше сымның түстерін өзгертуге тырысыңыз. Сымдарды жарық диодты пластина арқылы беріңіз және оларды Arduino-дегі түйреуішке жалғаңыз (мен бұл үшін 5-9 деректер түйреуіштерін қолдандым)

Бүйірдегі екі қосқыштың әр түрлі функциялары бар: біреуі бағдарламалауға арналған қалпына келтіру қосқышы, екіншісі - түймелердің функцияларын жылдам өзгерту үшін пернетақта қабаттары арасында ауысатын функция қосқышы. Жоғарғы қосқыш (RST) және GND қалпына келтіру үшін қосылады, ол қосылған кезде қалпына келтіруге әкеледі. Төменгі қосқыш Pro Micro -да A0 деп белгіленген 18 -пинге дейін қосылады. Коммутатор сымдарының босаңсуын қамтамасыз етіңіз, себебі сіз әлі де пластиналарды сырғытуыңыз керек, ал сымның тым аз болуына жол бермейді. пластиналар жоғарғы жағынан кіргізіледі.

7 -қадам: Бағдарламалауға кіріспе

Бағдарламалауға кіріспе
Бағдарламалауға кіріспе

Істі жаппас бұрын, сіз оны тексеріп, оның жұмыс істейтініне көз жеткізгіңіз келеді. Оны жинау үшін 11 -қадамға өтуге болады. Мен оны алдын ала тестілеу оны ашу мен жабу уақытын азайтуға көмектесетінін білемін. Бұл оған көп әсер етпесе де, мен Arduino IDE 1.8.3 нұсқасын қолдандым, сондықтан егер сізде мәселелер туындаса, осы нұсқаны қолдануға тырысыңыз. Код 5 -қадамда, бұл Arduino арқылы шығарып алу және жүктеу қажет болатын zip файлы.

Төменде бірнеше код бөліктері болады. Біреуі - соңғы код, екеуі - OLED тесті (бірі - тестілеу, бірі - мекенжайды табу), екіншісі - RGB тесті. Қосқыштарды тексеру үшін соңғы кодты қолданыңыз.

Егер сіз өзіңіздің жеке кодты жасағыңыз келсе, мен оны келесі 3 қадамда үйретемін, бірақ егер сіз менің кодты қолданғыңыз келсе немесе оны алып, өзгерткіңіз келсе, бұл өте жақсы.

Бұл бағдарламалаудың кейбір негіздері

  • «Құралдар» қойындысының, содан кейін «Тақта» қойындысының астында оны Arduino Leonardo орнатыңыз (егер сізде Pro Micro -ден өзгеше микроконтроллер болмаса)
  • Кодты Pro Micro -ге жүктеген сайын қалпына келтіру қосқышын қолданыңыз. Мен компиляция жолағы толған кезде және жүктеліп жатқан кезде, бағдарламаны қосуға және өшіруге жақсы уақыт екенін білдім. (Егер сіз мұны жасамасаңыз, жүктеу жүктелмейді.)
  • Барлық пайдаланылатын кітапханалар орнатылып, импортталуы керек

    Импорттау үшін құралдар қойындысына өтіп, кітапхананы қосу түймесін басыңыз. (Сондай -ақ, веб -беттегі менің код мысалдарымда кітапхана аты болуы керек екенін ескеріңіз, мен оларды келесі бірнеше қадамдағы мысал код бөліміне енгізе алмадым)

  • Жарықдиодты және OLED кітапханалары объект ретінде инициализацияланады, оларды кез келген түрде атауға болады, бірақ демонстрация үшін мен оларды «жолақ» және «дисплей» деп атаймын.

    Нысан атауын теру, нүкте қою, содан кейін пайдаланғыңыз келетін функцияны теру арқылы объектіден функцияларды шақырыңыз

Келесіде жарық диодтарын тексеріңіз, кодты жүктеңіз және олардың жұмыс істейтініне көз жеткізіңіз. Егер ештеңе жұмыс жасамаса, оларға жететін түйреуіш жоқ болса, бірінші жарықдиодты дәнекерлеуді тексеріңіз.

Ақырында, қосқыштарды тексеру үшін соңғы кодты пайдаланыңыз. Бұл ең оңай болуы керек. Назар аударыңыз, енді кейбір HID кодын жүктегеннен кейін, сіз кодты жүктеген сайын Arduino -ны қалпына келтіруіңіз қажет болады. Жүктеу кезінде оны жартылай қалпына келтіріңіз және ол жұмыс істеуі керек.

8 -қадам: қосқыштарды бағдарламалау

Коммутаторларды программалау
Коммутаторларды программалау
Коммутаторларды бағдарламалау
Коммутаторларды бағдарламалау

Барлық бағдарламалаудың ішінде коммутаторлар ең күрделі емес. Оны пернетақта ретінде тану үшін сізге Arduino пернетақтасының кітапханасы мен шартты операторлар қажет. Егер сіз мен сияқты Pro Micro қолдансаңыз, «Құралдар» қойындысында тақта Arduino Leonardo орнатылғанына көз жеткізіңіз.

Шартты мәлімдемелерді бастамас бұрын, біз түйреуіштерді баптауымыз керек. Бізге тек бір рет іске қосу қажет, сондықтан оны бос күйге қойыңыз. PinMode (PinNum, INPUT_PULLUP) бастаңыз; Бұл Arduino -ға PinNum кіруді күтетінін және ол тартылатын резисторды қосатынын айтады (бізге аппараттық құралды қосудың қажеті жоқ)

Кірістірудің 2 күйі бар, төмен және жоғары. Arduino Ground (GND) жалғанған кезде түйреуіште LOW төмен оқылады, ал ажыратылғанда HIGH мәні оқылады. Түйреуіш не оқитынын білу үшін біз digitalRead (PinNum) қолданамыз.

Негізгіден бастап, кілт басылғанын анықтау үшін шартты if операторларын қолданамыз. Біз бұл қайталанғанын қалаймыз, сондықтан оны бос циклге қоюды қалаймыз. Егер кілт «LOW» ретінде тіркелген болса, онда біз перненің басылғанын және кіріс «ЖОҒАРЫ» болған кезде перненің босатылғанын қалаймыз. Мұны істеу үшін, егер біз (digitalRead (PinNum) == LOW) {[Түйме басылған кездегі код]} және if (digitalRead (PinNum) == HIGH) кодын береміз

Пернетақта кодын алу үшін Пернетақта кітапханасын импорттаңыз. Пернетақтаны қойыңыз.begin (); бос күйде. Содан кейін шартты мәлімдемелердің ішінде біз keyboard.press ([key]) қолданамыз; және keyboard.release ([перне]); немесе keyboard.releaseAll (); егер сізде бірнеше перне басылған болса. Сондай -ақ, keyboard.print ([String]) қолдануға болады; және құпия сөз сияқты жолдарды басып шығару үшін keyboard.println ([String]). print және println ұқсас, бірақ println тек ENTER қосады, сондықтан ол автоматты түрде келесі жолға өтеді.

9 -қадам: OLED бағдарламалау

OLED бағдарламалау
OLED бағдарламалау
OLED бағдарламалау
OLED бағдарламалау
OLED бағдарламалау
OLED бағдарламалау

OLED бағдарламалаудан бастап сізге негізгі орнату коды қажет болады. Бұл компьютерге OLED қай жерде орналасқанын, оның өлшемі мен қалай бағдарламаланғанын көрсетеді. Сізде тек мәтінді көрсететін болсаңыз, OLED -нің орнату коды болғаннан кейін оны бағдарламалау өте қарапайым болуы керек. Алдымен Wire және SSD1306 кітапханалары кіреді.

OLED_RESET параметрін 4 деп анықтаңыз және кодыңызға SSD1306 кітапханасын қосыңыз. Adafruit_SSD1306 дисплейін қою (OLED_RESET); Adafruit SSD1306 кітапханасын пайдалануды бастау үшін сіздің кодыңызда.

Serial.begin (9600) бастаңыз; содан кейін display.begin (SSD1306_SWITCHCAPVCC, 0x3C); i2C дисплейін 0x3C адресімен инициализациялау үшін (егер ол 5 -қадамда өзгермесе). Олардың екеуін де жарамсыз күйге келтіріңіз, себебі олар тек бір рет іске қосылуы керек.

Дисплейді бағдарламаламас бұрын, display.clearDisplay параметрін пайдаланғаныңызға көз жеткізіңіз. Егер сіз мұны жасамасаңыз, енгізілген нәрсе бір -біріне сәйкес келеді және өзгерген нәрсеге байланысты оқылмайтын болады. Сіз сондай -ақ шығу тегін орнатқыңыз келеді, сондықтан display.setCursor (0, 0) пайдаланыңыз; оны дисплейдегі нүктеге орнату үшін (0, 0) қойыңыз, оны бастапқы күйіне қайтарыңыз. Мәтіннің өлшемін орнату үшін display.setTextSize (1) пайдаланыңыз; Мен 1 -ден үлкен емес едім, ол күтілгеннен әлдеқайда үлкен.

Біздің дисплейіміз монохромды болса да, біз мәтін түсін өзгертуіміз керек, сондықтан оны display.setTextColor (WHITE) сияқты бағдарламалаймыз;

Енді сізде кітапхана импортталса және дисплей объектісі болса, оны бағдарламалауды бастауға болады. Мәтін қосу үшін display.print () пайдаланыңыз; және display.println (); жолдарды басып шығару. Тағы да, басып шығару қайтарымды қоспайды, ал println бірдеңе қайтадан басылғанда келесі жолға автоматты түрде оралады.

Көрсетілетін бірдеңе алмас бұрын, OLED -ді жаңарту керек, және оны жаңарту керек деп айту үшін display.display (); параметрлері жоқ және ол жаңартылады.

Код енді келесідей болуы керек:

// Фостер Филлипс жасаған код

#include Adafruit_SSD1306.h #include Wire.h #OLED_RESET 4 анықтау Adafruit_SSD1306 дисплейі (OLED_RESET); void setup () {pinMode (SWITCH, INPUT_PULLUP); Serial.begin (9600); display.begin (SSD1306_SWITCHCAPVCC, 0x3C); display.display (); кешіктіру (2000); display.clearDisplay (); display.setTextSize (1); display.setTextColor (АҚ); } void loop () {display.display (); кешіктіру (2000); display.clearDisplay (); display.setTextSize (1); display.setCursor (0, 0); display.println («Сәлем әлем!»); display.println («Сәлем нұсқаулықтар!»); }

Бұл нұсқаулық және бұл Github сілтемесі ақауларды жоюға және дисплейді бағдарламалау туралы көбірек білуге өте жақсы сілтеме болып табылады.

10 -қадам: Светодиодтарды бағдарламалау

Жарық диодтарын бағдарламалау
Жарық диодтарын бағдарламалау
Жарық диодтарын бағдарламалау
Жарық диодтарын бағдарламалау
Жарық диодтарын бағдарламалау
Жарық диодтарын бағдарламалау

Жарықдиодты шамдар да қарапайым. Біз Adafruit Neopixel кітапханасын қолданатын боламыз. NeoPixel кітапханасы, егер сіз бұған дейін бағдарламаланған болсаңыз, өңдеудегі бағдарламалауға өте ұқсас.

Алдымен баптау коды бар, біз қандай кітапхананы қолданамыз және түйреуіште қанша светодиод бар екенін, деректерге арналған түйреуішті және оның қалай бағдарламаланғанын көрсететін массивті орнатамыз. Бұл Adafruit_NeoPixel strip = Adafruit_NeoPixel (6, 10, NEO_GRB + NEO_KHZ800) сияқты мысалмен жасалады; Бұл 6 светодиоды бар екенін, түйреуіштің нөмірі 10 екенін және NEO_GRB + NEO_KZH800 мекенжай жолақтарының түрін қолданатынын түсіндіреді. Әдетте соңғы аргументке қол тигізудің қажеті жоқ, мен қолданған жарық диодты жолақтар өзгерген жоқ.

Осыдан кейін сізге strip.begin () қажет болады; оларды пайдалануға дайын екеніңізді көрсететін функция. Жақшаның ішінде ештеңе болмауы керек.

Мұны алғаннан кейін жолақпен әр түрлі функцияларды шақыруға болады. [Function]

Сізге білу қажет нәрсе - strip.setPixelColour. Бұл жақшада 4 функция бар. Светодиодтардың «массивінде» жарық диоды бар (есте сақтаңыз, массивтер 0-ден басталады) және сәйкес қызыл, жасыл және көк мәндері 0-255 аралығында. Бұл сізге қажетті түс алу үшін қалаған қызыл жасыл мен көк мәндерді араластыруға мүмкіндік береді. Код келесідей болуы керек: strip.setPixelColour (0, 0, 255, 255); егер сіз бірінші жарық диодында көгілдір түс алғыңыз келсе.

Жарық диодына сол деректерді жіберу қажет, бұл strip.show (); жасайды. Сіз олармен бір нәрсені өзгерткеннен кейін пикселдерді жаңартады. Жақшаға ештеңе кірмеуі керек.

Код келесідей болуы керек:

// Фостер Филлипс жасаған код

#қосу Adafruit_NeoPixel.h #PIN кодын анықтау 10 #Анықтау Num 6 Adafruit_NeoPixel жолағы = Adafruit_NeoPixel (Num, PIN, NEO_GRB + NEO_KHZ800); void setup () {strip.begin (); strip.show (); } void loop () {strip.setPixelColor (0, 255, 0, 0); strip.setPixelColor (1, 255, 0, 0); strip.setPixelColor (2, 255, 0, 0); strip.setPixelColor (4, 255, 0, 0); strip.setPixelColor (3, 0, 0, 255); strip.setPixelColor (5, 0, 0, 255); strip.show (); }

Қосымша ақпаратты мына жерден табуға болады.

11 -қадам: жинау

Жиналуда!
Жиналуда!
Жиналуда!
Жиналуда!
Жиналуда!
Жиналуда!

Бұл, бәлкім, ең қарапайым және ең керемет қадам.

Қорапты жабу үшін Pro Micro -ге қойып, сырғытыңыз. Оны орнына ыстық желіммен жабыстырыңыз.

Корпус/жабу қосқыш тақтасы мен жарықдиодты тақтаны ішке қарататындай етіп жасалған. Оны жай ғана сырғытыңыз, және оны қалай басып шығарғаныңызға байланысты, ілулі пластикті алу үшін слайдтардың ішкі жағын кесу немесе қию қажет болуы мүмкін.

Осыдан кейін, бұрандаларды алыңыз, оны бекітіп, бұранданың тесіктерін өзіңіз жасаңыз. Файлдарды жобалау кезінде менде бұрандалардың арнайы жіптері болмады, сондықтан мен бұранданың көлеміндей тесік жасап, оны өзіме бұрап алдым. Оны оттықпен қыздыру сізге қажет бұранданы қалыптастыруға көмектеседі және әдетте қабаттарды нығайтады. Бұрандаларды тым көп итермеуді қадағалаңыз, әйтпесе сіз басын алып тастай аласыз. Мен бұл қауіпті азайту үшін Аллен кілтінің бұрандаларын қолдандым.

Содан кейін жай ғана пернелердің қақпақтарын басыңыз. Содан кейін бұл көп нәрсе жасалды! Менің Arrow Key Macropad нұсқасы аяқталды!

12 -қадам: Сіздің жеке жақсартуларыңыз

Енді сіз менің нұсқамды қалай жасау керектігін білсеңіз, оны өзіңіз жасай аласыз! Пернетақталар өз пікіріңізді білдіруі мүмкін, сондықтан оны өзіңізге сәйкес етіп өзгертпейінше, басқа біреудің дизайнына ие болу қызықты емес! Сіз жасай алатын көптеген жақсартулар бар! Міне, мен қосқым келетін немесе ойланатын кейбір жақсартулар!

  • Tetris бағдарламасы және басқа да қарапайым ойындар
  • Оны Bluetooth -ға айналдырыңыз
  • Оған слайд -шоулардан деректерді оқуға және оны OLED -де көрсетуге рұқсат етіңіз (слайд нөмірі мен слайдтың атын көрсетіңіз)
  • Осы техниканы қолдана отырып, толық өлшемді пернетақта немесе үлкенірек макропад жасаңыз

    Ол үшін коммутатор матрицасын жасауды үйрену керек

  • Қосымша түстерді бағдарламалау
  • Ойындарға арналған бағдарламалық макростар, бейне өңдеу және т.б.
  • Autodesk Inventor бастапқы файлдарын өзіңіздің жеке ісіңізді жасау үшін пайдаланыңыз немесе оны өзіңіздікі етіп өзгертіңіз!
  • Музыкалық ойнатқыш ретінде екі есе көп болуы үшін дыбыстық тақтаны қосыңыз

Жасау көңілді болсын! Кеңестерді қосуды немесе түсіндіруімді сұраңыз!

Егер сіз басқа бөліктердің барысын көргіңіз келсе, менің Инстаграмды қарап шығыңыз. Менің нұсқаулықты оқығаныңыз үшін рахмет!

Микроконтроллер сайысы
Микроконтроллер сайысы
Микроконтроллер сайысы
Микроконтроллер сайысы

Микроконтроллер сайысында екінші орын

Ұсынылған: