Tartalomjegyzék:
Videó: A számítógép IR távvezérlése: 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
A sok más cél mellett a számítógépemet használom multimédiás központként. Vannak idők, amikor a kanapén pihenek, zenét hallgatok, vagy filmet vagy tévét nézek, és nincs kedvem felkelni, hogy beállítsam a hangerőt, vagy változtassam a TV -csatornát minden alkalommal, amikor hülye reklámok jelennek meg, vagy elalszom, és kívánom, hogy csend. Ezért úgy döntöttem, hogy a PC -t szabványos IR távirányítóval távirányítom, hogy azonnal nyomjam meg a gombot, ahelyett, hogy dühösen ragadnám az egeret vagy a billentyűzet némító gombját.
A projekt több részből áll:
- Távirányító
- PC szoftver
- IR vevő modul
1. lépés: A távirányító
Az első elem - a távirányító - triviális, amit el kell végezni. Csak használjon tetszőleges infravörös vezérlőt. Az eladásra szánt terméket használtam infravörös vevővel együtt - lásd a képen. Az egyetlen ok, amiért úgy döntöttem, hogy ezt a típust választom, csak azért van, mert már otthon volt.
2. lépés: Szoftver
Létrehoztam a GNU/Linux operációs rendszerhez tartozó programot, amely terminálon fut. A forráskód ingyenesen letölthető/használható/megosztható/módosítható. A kód fordításához csak adja ki a parancsot, mint a gcc -o remotePC remotePC.c a terminálon. A./remotePC típusú program futtatásához.
A következő információk ebben a lépésben azoknak szólnak, akik érdeklődnek a dolgok működése iránt.
A program leírása
A program először ellenőrzi, hogy létezik -e /dev /ttyACM0 vagy ttyACM1 fájl. Ha igen, akkor a fájl csoportazonosítója a nullától eltérő. Ez azt jelenti, hogy a soros port olvasható és írható a közös felhasználó számára. Ezután két bájt 0xAA 0x55 értékkel íródik a portra, jelezve, hogy a program készen áll az adatok fogadására. A bejövő adatokat összehasonlítják a tárolt értékekkel. Ha az egyezés megtalálható, akkor az előre meghatározott művelet végrehajtásra kerül.
A hangerőszabályzó
A program képes be-/kikapcsolni a hangot, növelni/csökkenteni a hangerőt a rendszer szintjén. Ezt a pactl program használatával érik el. A parancsok így néznek ki:
pactl set-sink-mute 0 kapcsoló
pactl set-sink-volume 0 +10%
pactl set-sink-volume 0 -10%
Ha szükséges, telepítse a szükséges csomagokat.
A VLC Media Player vezérlő
A program elindíthatja/szüneteltetheti az audio/videót, és megváltoztathatja az előző/következő számot a VLC Media Player lejátszási listájában. Ebben az esetben az asztali buszt kell használni. A parancsok:
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. PlayPause
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Next
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Előző
3. lépés: IR vevő modul
A projekt harmadik része a legbonyolultabb, de még mindig nagyon egyszerű. Az ötlet az, hogy az infravörös vevő a jelet továbbítja az MCU -nak, amely azt egyedi számmá alakítja. Ezt a számot USB -n keresztül továbbítja a számítógéphez.
A modult a számítógépházba kell felszerelni, és a kábellel az alaplap USB -csatlakozójához kell csatlakoztatni. Abban az esetben, ha inkább a külső csatlakozást választja az USB -hez, akkor kisebb módosításokat kell végrehajtania.
MCU
A modult a PIC16F1829 mikrovezérlőre építettem. Az MCU kiválasztása nem kritikus, bármely más MCU -t használhat, ha képes a forráskód beállítására. Ezt a PIC -t két okból választottam. Először is rendelkezésre állt, másodszor pedig a csapjait részben megrongálta a különböző tesztelési projektek intenzív használata. Ezért szerettem volna használni az állandó projektben, mielőtt teljesen használhatatlanná válik.:-)
IR vevő
A modul második része a VS1838B infravörös vevő - az első lépésben említett.
UART/USB átalakító
A harmadik rész az MCP2221, amely az UART/I2C/USB átalakító.
A feladat az, hogy ezt a 3 részt összekapcsolva felépüljön a modul, amely képes lesz az infravörös távirányító jeleinek fogadására és a PC -re történő átadására.
A vezetékek
Az első képen a vizsgáló áramkör található a kenyértáblán. A másodikban a kapcsolási rajz látható.
Az alkatrészek listája
1 db PIC16F1829 (vagy bármely más MCU)
1 db VS1838B (vagy bármely más IR vevő)
1 db MCP2221 (vagy bármely más UART/USB átalakító)
2 db 4 tűs fej
1 db 6 tűs fej
1 db 100R ellenállás
2 db 10K ellenállás
2 db 330R ellenállás
1 db 470 nF kondenzátor
2 db 4,7 uF elektrolit kondenzátor
1 db kapcsoló (opcionális)
NYÁK -összeszerelés
Állítsa össze a modult a vázlat segítségével. Használhatja az univerzális táblát, vagy létrehozhatja az egyedi PCB -t. Ez utóbbi esetben a KiCad fájlokat az alábbi archívumban adtam meg.
A firmware
Az MPLAB X IDE és az XC8 fordító használatával írt PIC forráskódja letölthető az alábbiakban.
A forráskód megjegyzi
Azok, akik szeretnék megtudni, hogy pontosan mit csinál a program, a következő sorok.
Az összes beállítás elvégzése után a piros LED világít, és az MCU várja a 0x55AA adatokat. Ezt követően a LED zöldre vált, és az MCU elkezdi észlelni az infravörös vevőről érkező jeleket a megszakításokkal. Méri és rögzíti az időintervallumokat, amikor a jel magas és alacsony szinten van. Ezeket az időket a számítógépre küldött 32 bites számgá alakítják át.
Az idők és a végső szám közötti kapcsolatot a NEC protokoll adja meg.
4. lépés: Az eszköz használata
Firmware
Töltse fel a firmware -t a PIC -re. Én a PICkit 3 programozót használom.
Hardver
Telepítse az infravörös vevő modult a képeken látható módon:
- Csatlakoztassa az USB-fejlécet a számítógép házában található alaplap belső USB-csatlakozójához a megfelelő 4 vezetékes kábellel, vagy kívülről az USB-nyíláshoz a szabványos USB-kábellel. A második esetben valamilyen módon segítenie kell magát, pl. mint a 3. képen látható inspirációként.
- Csatlakoztassa az 5 V-os tápkábelt a számítógépházon belüli áramforrásból a 4 tűs csatlakozóhoz. Vagy a modul más módon történő áramellátása külső használat esetén.
Keresse meg az alaplap USB -csatlakozójának leírását. Nem vagyok biztos abban, hogy a kábelezés követ -e valamilyen szabványt, ezért jobb meggyőződni róla. Az én esetemben két tűs sor van, 5 csap a felső sorban és 4 csap az alsó sorban. Balról jobbra a tűk + 5 V, D-, D +, Gnd. Az első sor 5. csapja nincs csatlakoztatva. Csatlakoztattam a kábelt a második képen látható módon.
Szoftver
Futtassa a programot a terminálon. Ha minden rendben van, akkor a program utolsó üzenete: "adatokra vár …". Most, amikor megnyomja a gombot a távirányítón, a fogadott kód megjelenik a terminálon. Így tudni fogja, hogy melyik gomb melyik kódot bocsátja ki.
Most néhány programozási dolog vár rád, de ne aggódj. Csak néhány dolgot kell megváltoztatni a program forráskódjában, hogy a program reagáljon a távirányítóra. Nyissa meg a remotePC.c fájlt a szövegszerkesztőben vagy valamilyen IDE -ben, ha úgy tetszik, és cserélje le a kódjaimat a sajátjával. Csak nyomja meg egyesével az egyes műveletekhez használni kívánt gombokat. Egyszerűen másolja ki a terminálon megjelenő kódokat, és illessze be őket a forráskódba a megfelelő művelettel.
Ha befejezte, fejezze be a programot, és fordítsa újra a kódot a gcc -o remotePC remotePC.c paranccsal. Futtassa újra a programot, és ezentúl reagálni fog a távirányítóra.
Ezt a módszert használom a program kódolt műveleteivel, mivel értelmetlennek tartom az időm pazarlását a projekt továbbfejlesztésével arra az állapotra, amikor például a felhasználóbarát grafikus környezetben lehetőség van kódok/műveletek hozzáadására/módosítására. De ha ezt vagy még többet szeretne tenni, akkor megteheti.
Ajánlott:
Kézi BASIC számítógép: 6 lépés (képekkel)
Kézi BASIC számítógép: Ez az utasítás leírja a BASIC -t futtató kis kézi számítógép építésének folyamatát. A számítógép az ATmega 1284P AVR chip köré épült, amely a számítógép buta nevét is inspirálta (HAL 1284). Ezt a konstrukciót HEAVILY ihlette
8BIT SZÁMÍTÓGÉP: 8 lépés
8BIT SZÁMÍTÓGÉP: Ennek szimulálásához szüksége van egy LOGISIM nevű szoftverre, egy nagyon könnyű (6 MB) digitális szimulátorra, amely minden lépésen és tippen végigvezeti Önt a végeredmény eléréséhez és az úton Megtanulják, hogyan készítik a számítógépeket, maki által
Számítógép felépítése 1 KCTC 2. munkamenet: 14 lépés
Számítógép felépítése 1 KCTC 2. munkamenet: Az építés befejezéséhez a következő alkatrészekre lesz szüksége: 1) alaplap2) CPU3) hűtőborda + ventilátor4) RAM5) számítógépház 6) merevlemez 7) tápegység 8) grafikus kártya
Az Arduino robot távvezérlése: 7 lépés
Az Arduino robot távvezérlése: Ebben az utasításban lefedem, hogy egy Adafruit motorpajzsot használok az Arduino V2 -hez az nRF24L01 antenna mellett, hogy nagy hatótávolságú, távirányítású robotot készítsenek. Egy régi Adafruit Arduino 101 CurrieBot -ot használok Arduino Uno -val a
A PSP használata számítógép -botkormányként, majd a számítógép vezérlése a PSP -vel: 5 lépés (képekkel)
A PSP használata számítógép -botkormányként, majd a számítógép vezérlése a PSP -vel: Sok jó dolgot tehet a PSP homebrew segítségével, és ebben az oktatható útmutatóban megtanítom, hogyan kell használni a PSP -t joystickként a játékokhoz, de van egy program, amely lehetővé teszi, hogy a joystickot egérként használja. Itt vannak az anyák