Keyboard Encoder สำหรับ MAME Arcade: 6 ขั้นตอน

Keyboard Encoder สำหรับ MAME Arcade: 6 ขั้นตอน

สารบัญ:

Anonim

ที่นี่ฉันจะแสดงวิธีสร้างตัวเข้ารหัสสำหรับ MAME arcade (หรือคล้ายกัน) จากแป้นพิมพ์ USB เก่าที่คุณมักจะวางไว้ในกองของสิ่งที่คุณไม่เคยใช้ (ฉันมี 3)

ฉันเพิ่งสร้างและเผยแพร่คำแนะนำเกี่ยวกับเครื่องอาเขตที่บ้านทำโดยใช้ราสเบอร์รี่ปี่เป็นสมอง ฉันมีคำถามสองสามข้อเกี่ยวกับโปรแกรมเปลี่ยนคีย์บอร์ดที่ฉันใช้ ตอนแรกฉันวางแผนที่จะเขียนโปรแกรมที่จะบูตไปยังรายการด้วยการเลือกเกมที่จะเล่นและผู้ใช้จะใช้จอยสติ๊กและปุ่มเพื่อสลับผ่านรายการและเลือกเกม

สิ่งนี้กลายเป็นเรื่องยากยิ่งกว่าที่ฉันคิดไว้อย่างมากเป็นหลักเนื่องจากความจริงที่ว่าตัวเข้ารหัสแป้นพิมพ์ที่ฉันซื้อไม่ได้พูดอะไรที่ฉันสามารถอ่านใน Linux ได้อย่างง่ายดาย ดังนั้นฉันจึงตัดสินใจที่จะ "สร้าง" ตัวเข้ารหัสที่จะ

วัสดุ:

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ

แป้นพิมพ์ USB เก่า

สายไฟหลากสีจำนวนมาก

หัวแร้งและหัวแร้ง (ตัวเลือกฉันจะอธิบายในภายหลัง)

กระดาษทรายบางตัว (150grit ขึ้นไปเหมาะ แต่ใช้ทุกอย่างที่คุณมี)

มัลติมิเตอร์ (เป็นทางเลือก แต่แนะนำอย่างมากอีกครั้งจะอธิบายในภายหลัง)

เครื่องมือทั่วไป (ไขควง, คีมตัดลวด, กรรไกร ฯลฯ)

ขั้นตอนที่ 2: ตัวเข้ารหัสคืออะไร

ภายในแป้นพิมพ์ทุกอันจะมีวงจรเล็ก ๆ (ตัวเข้ารหัส) ที่ใช้การกดคีย์เปลี่ยนเป็นสัญญาณที่คอมพิวเตอร์เข้าใจแล้วยิงลงสายเพื่อให้คอมพิวเตอร์สามารถใช้งานได้ ทำได้โดยใช้การตั้งค่าประเภทเมทริกซ์ วิธีที่ฉันคิดเกี่ยวกับการตั้งค่าประเภทนี้ก็คือมันมีหลายพื้นที่ (ที่เป็นอิสระจากกัน) และสูงหลาย (ซึ่งเป็นอิสระจากกัน) พวกเขาจะเชื่อมโยงเข้าด้วยกันในวิธีที่สร้างชุดค่าผสมที่แตกต่างกัน. ข้อได้เปรียบคือคุณไม่ต้องการ I / O จำนวนมากในการมีสวิตช์ขนาดใหญ่ (พูดบางอย่างเช่นปุ่มทั้งหมดบนแป้นพิมพ์) ของสวิตช์ นี่อาจเป็นคำอธิบายที่ไม่ถูกต้องเกี่ยวกับวิธีการทำงาน แต่มันช่วยให้ฉันพันหัวและเข้าใจมัน

ขั้นตอนที่ 3: ไปที่ตัวเข้ารหัส

คุณจะต้องถอดแป้นพิมพ์ออกโดยถอดสกรูทุกตัวที่สามารถหาได้ บางครั้งอุปกรณ์อิเล็กทรอนิกส์ตะครุบล็อคคลิปถ้างัดมันเบา ๆ ด้วยไขควงจนกว่าคุณจะแยกมันออก ตัวเข้ารหัสจะอยู่ที่มุมบนขวามือ (หรือที่ใดก็ตามที่มีแสงสำหรับแคป ฯลฯ)

ขั้นตอนที่ 4: การแมปกุญแจที่คุณต้องการ

ตกลงนี่คือที่ฉันขอแนะนำให้คุณใช้มัลติมิเตอร์เพราะทำด้วยตาอาจเป็นไปไม่ได้ (ไม่ดี แต่เป็นไปไม่ได้ แต่จริงๆน่ารำคาญจริง ๆ) คุณยังสามารถใช้แบตเตอรี่สายไฟและไฟนี้ แต่มัลติมิเตอร์ทำให้ชีวิต ง่ายจริงๆ

ภายในแป้นพิมพ์คุณจะสังเกตเห็นว่ามีฟิล์มพลาสติกสองบิตที่มีลักษณะเหมือนแผ่น PCB คั่นด้วยฟิล์มอีกบิตหนึ่ง (โดยปกติจะติดอยู่กับอีกส่วนหนึ่ง)

ควรมีจุดและเส้นอยู่ทั่วและคุณจะต้องระบุว่าจุดใดสอดคล้องกับคีย์ใด วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการนับ ดังนั้นปุ่ม A บนแป้นพิมพ์ของฉัน 4 ลง 2 ข้าม (ESC เป็น 1, 1) เพื่อให้ได้ตำแหน่งของปุ่มจากนั้นนับจำนวนจุด

จากนั้นใช้มัลติมิเตอร์เพื่อหาตำแหน่งที่ปุ่มเหล่านี้เชื่อมต่อกับผู้ติดต่อ ตั้งมัลติมิเตอร์ของคุณไปที่โหมดการนำไฟฟ้า (ตั้งเสียงบี๊บถ้าคุณทำได้) วางบนเทอร์มินัลที่จุด (พูดสำหรับปุ่ม A) และเรียกใช้เทอร์มินัลอื่น ๆ ตามรายชื่อจนกว่าจะส่งเสียงบี๊บ จดบันทึกที่อยู่ติดต่อ ฉันเขียนชื่อของฉัน 1 - 13 และ A - N และเพิ่งเขียนลงไป นอกจากนี้ยังช่วยในการทำเครื่องหมายปุ่มด้วยเครื่องหมายเพื่อให้คุณไม่ลืมสิ่งใด

ขั้นตอนที่ 5: เตรียมตัวเข้ารหัส

บางครั้งมีสิ่งที่เป็นสื่อกระแสไฟฟ้าสีดำอยู่เหนือโลหะของ PCB สิ่งนี้จะต้องถูกเอาออกอย่างระมัดระวังด้วยกระดาษทราย เมื่อโลหะสัมผัสถูกทำความสะอาดมันด้วยผ้ากระดาษบางอย่างที่ดีที่สุดที่คุณสามารถ จากนั้นคุณควรจะไปพร้อมกับดีบุกในปริมาณเล็กน้อย จากนั้นคุณจะต้องเตรียมสายไฟของคุณในลักษณะเดียวกันเช่นถอดสายออกจากนั้นจึงดีบุก

วางลวดกระป๋องที่ด้านบนของหน้าสัมผัสกระป๋องและกดหัวแร้งเบา ๆ รอจนกระทั่งของเหลวบัดกรีนำเหล็กออกและถือลวดให้มั่นคงเท่าที่จะทำได้จนกว่า id แข็งตัวอีกครั้ง

หากคุณไม่มั่นใจในการบัดกรีและไม่ต้องการทำเช่นนี้คุณสามารถใช้กาวนำไฟฟ้าได้เสมอ (เช่น WireGel) แต่ฉันคิดว่าการบัดกรีจะเป็นตัวเลือกที่ดีกว่าและเร็วกว่าเพราะกาวแบบสัมผัสส่วนใหญ่ต้องแก้ค้างคืน

ขั้นตอนที่ 6: ผลิตภัณฑ์สำเร็จรูป

ฉันอาจจะลงน้ำเล็กน้อยด้วยสาย แต่ฉันวางแผนที่จะใช้ปุ่มและตัวควบคุมจำนวนมาก คุณต้องการเพียงสายสำหรับปุ่มที่คุณตั้งใจจะใช้เท่านั้น

ในกรณีที่มีการขึ้น, ลง, ซ้ายขวาสำหรับการควบคุมทิศทาง, Z, X, C, V สามารถใช้สำหรับปุ่มและแท็บเพื่อให้คุณได้รับตัวเลือก (คุณอาจต้องการใส่ปุ่มเครดิต)

ตอนนี้สิ่งที่คุณต้องทำคือเชื่อมโยงมันกับปุ่มของคุณเหมือนกับที่คุณใช้โปรแกรมเปลี่ยนไฟล์ทั่วไป สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่คุณสามารถดูได้ที่ขั้นตอนที่ 3

2 คนสร้างโปรเจคนี้!

  • MarkS335 ทำมันขึ้นมา!

  • Rovhell ทำมันขึ้นมา!

คุณทำโครงการนี้หรือไม่? แบ่งปันกับเรา!

ข้อเสนอแนะ

  • DIY Mini UPS สำหรับ WiFi Router / โมเด็ม

  • นาฬิกากลางศตวรรษที่ทันสมัย

  • คลาสมอเตอร์ขนาดใหญ่

  • การประกวดแบบสุ่ม

  • พรรคท้าทาย

  • IoT Challenge

29 การสนทนา

0

peachville

2 ปีที่แล้ว

ปัญหาการเขียนโปรแกรม:

ฉันต้องการอินพุตจำนวนหนึ่งสำหรับโปรแกรม Escape Room ที่ฉันสร้างขึ้น ฉันสร้างแป้นพิมพ์และแนบผู้ติดต่อสำหรับตัวอักษร a ถึง z ปัญหาคือการกดแป้นพร้อมกันจำเป็นต้องถอดรหัส … แป้นคีย์บอร์ดไม่ได้ทำการดีบัติดังนั้นการอ่านการกดแป้นหลายครั้งพร้อมกันทำให้เกิดปัญหาการเขียนโปรแกรมขนาดใหญ่

ในตอนท้ายการซื้อ MAME ชั้นวางออกมาสองสามคำเป็นทางออกที่ง่ายที่สุด MAME แต่ละตัวมีปุ่ม 12 ปุ่มและ Windows จะระบุแต่ละหน่วยผ่านทาง hidusb.sys เป็น HID (Human Interface Device) ที่มีการกำหนดตัวอักษร: A, B, C และอื่น ๆ อินพุต Polling จะดำเนินการโดยกำหนดค่าเลขฐานสิบหกให้กับ EG: 1, 2, 4, 8, 16, 32, 64, 128, 256, ฯลฯ แต่ละปุ่มและถอดรหัสผลลัพธ์ หากอินพุตที่ได้ของ MAME "C" เป็น 7 แล้วปุ่ม 1, 2 และ 4 กำลังติดต่อกับ MAME "C" EZ-peazzy

0

AnshumG

3 ปีที่แล้ว

ฉันมีคำถามฉันต้องการทราบวิธีการเชื่อมต่อไมโครเช่นฉันมี A8 B5 สำหรับ A และ A7 B5 สำหรับ W ดังนั้นฉันจะวาดหลายสายจาก B5 ได้อย่างไร

0

THEBROTAKU

3 ปีก่อนในบทนำ

เฮ้ฉันค่อนข้างใหม่กับอุปกรณ์อิเล็กทรอนิกส์และเป็นสิ่งที่ขอโทษถ้าคำถามเป็นใบ้

แต่สายดินจะไปไหน? ฉันไม่แน่ใจอย่างสุจริต

2 คำตอบ 0

OrrinG THEBROTAKU

ตอบ 3 ปีที่ผ่านมา

ในการตั้งค่าเฉพาะนี้ไม่มีเหตุผล … IC บนคอนโทรลเลอร์มีสิ่งนี้ แต่หมุดจะถูกแบ่งออกเป็นส่วนที่ 13 ทางด้านซ้ายและ 13 (บางครั้ง 12) ทางด้านขวา (ขึ้นอยู่กับ IC และหรือแป้นพิมพ์) เพิ่งได้รับการประชุมการตั้งชื่อและติดกับมัน ฉันตั้งชื่อหมุดทั้งหมดที่ด้านซ้าย "A" และ "B" ทางด้านขวา ตอนนี้ให้ย่อ "A" ใด ๆ ด้วย "B" ใด ๆ แล้วดูว่ากดปุ่มใด เครื่องมือที่ดีคือ www.keyboardtester.com มันจะไฮไลท์ปุ่มกดหนึ่งครั้งเพื่อเลื่อนสายไฟทั้งหมดที่มองไปที่หน้าจอและดูว่าปุ่มใดมีเครื่องหมายสีเขียว If it; s green, ชุดค่าผสมถ้ามันเป็นสีขาว, มีบางสิ่งที่ไม่สามารถติดต่อได้ … ดังนั้นในกรณีของฉัน "A8" + "B10" = ขึ้น … ฯลฯ …

0

secretgspot THEBROTAKU

ตอบ 3 ปีที่ผ่านมา

ฉันคิดว่า …

0

secretgspot

3 ปีที่แล้ว

ไม่มีชิ้นส่วนพลาสติกของแป้นพิมพ์เฉพาะสาย pcb และ usb จริงเท่านั้นมีวิธีในการพิจารณาว่าเป็นจุดใด

1 คำตอบ 0

สปาร์ตัน 117 secretgspot

ตอบ 3 ปีที่ผ่านมา

คุณสามารถทำฟังก์ชั่น "อ่าน" และเริ่มการสืบค้นกลับแบบสั้น ๆ

0

AnEngineersView

3 ปีก่อนในบทนำ

ฉันพบสิ่งที่ไม่สามารถทำลายได้และพบว่ามีประโยชน์เพราะมันทำให้ฉันมีความคิดว่านี่เป็นวิธีแก้ปัญหา ที่ถูกกล่าวว่าฉันหวังว่าฉันจะไม่มีใครที่คุณสามารถประสบความสำเร็จในสิ่งเดียวกันโดยใช้ซอฟต์แวร์จำลองแป้นพิมพ์ arduino เช่นที่แสดงที่นี่ http: //hackaday.com/2012/06/29/turning-an-arduino -…

… แค่อยากให้คนอื่นรู้ว่ามีความเป็นไปได้อื่นอยู่ หวังว่าคนอื่นจะพบว่าข้อมูลนี้มีประโยชน์

ไชโย!

1 คำตอบ 0

สปาร์ตัน 117 AnEngineersView

ตอบ 3 ปีที่ผ่านมาในบทนำ

ใช่วิธี arduino HID เป็นวิธีที่ดีที่จะไปเกี่ยวกับเรื่องนี้ แต่ความคิดของเรื่องนี้คือการทำให้สิ่งต่าง ๆ รอบตัวคุณมีขึ้นหรือสามารถหาซื้อได้ไม่กี่ดอลลาร์ ขอบคุณสำหรับลิงค์เช่นกันมันอาจช่วยบางคนได้

0

nwatson16

4 ปีที่แล้ว

ความคิดที่ดีและอธิบายได้ดี!

0

DavideC3

4 ปีก่อนในบทนำ

ยอดเยี่ยม !!! ผลงานยอดเยี่ยม: D

0

gtoal

5 ปีก่อนในบทนำ

นี่คือการนำคีย์บอร์ดเก่ามาใช้ซ้ำอย่างยอดเยี่ยม สำหรับผู้ที่มีเวลาน้อยลงและมีเงินมากขึ้นมีวิธีอื่นอีกสองสามวิธีในการรับแป้นพิมพ์อาร์เคดสำหรับอีมูเลเตอร์: iPac ที่ลองและเชื่อถือได้: http://www.ultimarc.com/ipac1.html (ข้อเสีย - ตัวเชื่อมต่อ PS2 - แม้ว่า สำหรับ dls3491 นั่นเป็นข้อได้เปรียบจริง …); MakeyMakey http://www.makeymakey.com/ และอุปกรณ์บลูทู ธ มากมายจากไอออนซึ่งมักพบได้ในราคาถูกมาก http://www.ionaudio.com/products/details/icade (ละเว้นราคา $ 99 ให้มองไปรอบ ๆ closeouts หรือใช้แล้วคุณต้องการบอร์ดควบคุม)

นอกจากนี้ยังมีตัวเข้ารหัสภาษาจีนรุ่นใหม่ราคา $ 10 ถึง $ 20 ที่ฉันไม่ได้เห็น แต่ดูเหมือนจะเป็นสิ่งที่ต้องการ - http://www.google.com/#q=NO+Delay+USB+Encoder+PC+to+ Joystick + Arcade + MAME & tbm = ร้านค้าหรือ

www.google.com/#q=Xin+Mo+Arcade+to+USB+controller+2+player+MAME+Multicade+Keyboard+Encoder&tbm=shop

0

dls3491

5 ปีก่อนในบทนำ

ขอบคุณฉันวางแผนที่จะใช้งานบนพีซีที่มีตัวเชื่อมต่อ ps / 2

0

dls3491

5 ปีก่อนในบทนำ

คุณรู้หรือไม่ว่าสิ่งนี้จะทำงานกับแป้นพิมพ์ ps / 2 ได้หรือไม่

1 คำตอบ 0

สปาร์ตัน 117 dls3491

ตอบ 5 ปีที่ผ่านมาในบทนำ

มันควรจะทำไม่เห็นเหตุผลว่าทำไมมันถึงไม่ได้ แน่นอนคุณจะต้องใช้อะแดปเตอร์หากคุณต้องการใช้งานผ่าน USB แต่ไม่เช่นนั้นจะใช้ได้

0

SensusVitae42

5 ปีก่อนในบทนำ

สวัสดี Spartan - ฉันเห็นหนึ่งในฟิล์มพลาสติกมีเพียง 8 บรรทัดนั่นหมายความว่าคุณสามารถใช้ 8 ปุ่มที่แตกต่างกันเท่านั้น?

ฉันทราบใน MAME ของคุณคุณสามารถใช้งานได้เพียง 8 ปุ่ม / ปุ่ม / ตัวอักษร

ถูกต้องไหม

ขอบคุณ

1 คำตอบ 0

สปาร์ตัน 117 SensusVitae42

ตอบ 5 ปีที่ผ่านมาในบทนำ

ไม่คุณสามารถใช้มากกว่า 8 คุณสามารถใช้มากที่สุดเท่าที่มีอินพุตบนแป้นพิมพ์ที่ฉันคิดว่า

ฉันใช้เพียง 8 ปุ่มในการเล่น (ขึ้น, ลง, ซ้าย, ขวา, b1, b2, b3, b4) แต่ตอนนี้มีปุ่มสำหรับเริ่มต้นเหรียญ / เครดิตและเมื่อฉันหยุดขี้เกียจและใส่ชุดที่สองของ การควบคุมสำหรับผู้เล่นอื่นจะมีผู้เล่น 1 คนและปุ่มผู้เล่น 2 คนด้วย

หน้าเว็บนี้ทำงานได้ดีกว่าที่ฉันอธิบายว่าเมทริกซ์ทำงานอย่างไร

pcbheaven.com/wikipages/How_Key_Matrices_Works/

หวังว่าจะช่วยถ้าคุณต้องการข้อมูลเพิ่มเติมเพียงแค่ฉัน

0

octopuscabbage

5 ปีที่ผ่านมาในขั้นตอนที่ 4

เดี๋ยวก่อนทำไมคุณถึงทำแบบนี้ไม่ใช่แค่วางสายทั้งหมดเปิดเอกสารเวิร์ดและคิดว่าแต่ละแมปสำคัญเช่นไร?

2 คำตอบ 0

octopuscabbage octopuscabbage

ตอบ 5 ปีที่ผ่านมาในขั้นตอนที่ 4

เป็นเพียงเพราะอินพุตบางตัวไม่ถูกต้องดังนั้นคุณต้องแมปกับอินพุตที่ถูกต้องหรือไม่

0

สปาร์ตัน 117 octopuscabbage

ตอบ 5 ปีที่ผ่านมาในขั้นตอนที่ 4

ค่อนข้างมีประโยชน์ในการใช้คำว่า doc เพื่อค้นหาว่าเป็นซ้ายและขวา ctrl เป็นต้น คุณสามารถใช้ cmd หรือเทอร์มินัล ฯลฯ และคำสั่ง read (หรือเทียบเท่า) แต่มันยุ่งมาก นอกจากนี้คุณไม่จำเป็นต้องบัดกรีลวดให้มากเท่าที่ฉันจะซื่อสัตย์ฉันไปด้านบนเล็กน้อยดังนั้นมันอาจจะดีที่สุดที่จะได้รับกุญแจจำนวนมากทั้งที่คุณจะใช้และประสานกับสิ่งที่จำเป็น ไชโย