» อิเล็กทรอนิกส์ » Arduino »อุปกรณ์สำหรับคัดลอกกุญแจอิเล็กทรอนิกส์เช่น Touch Memory หรือ Ibuttom

อุปกรณ์สำหรับการคัดลอกกุญแจอิเล็กทรอนิกส์เช่น Touch Memory หรือ Ibuttom

อุปกรณ์สำหรับการคัดลอกกุญแจอิเล็กทรอนิกส์เช่น Touch Memory หรือ Ibuttom

สวัสดีตอนนี้ฉันหยิบไอเดียสร้างอุปกรณ์สำหรับการคัดลอก อิเล็กทรอนิกส์ ปุ่มต่างๆเช่น Touch memory หรือ ibuttom หรือที่เรียกว่า“ ยา” กุญแจดังกล่าวแม้ว่าจะล้าสมัยไปแล้ว แต่ก็ถูกแทนที่ด้วย Rfid แบบไร้สัมผัส แต่ก็มักจะใช้สำหรับอินเตอร์คอมหรือสัญญาณกันขโมย พื้นฐานของอุปกรณ์ของเราจะให้บริการ Arduino Uno คุณสามารถใช้บอร์ดอื่น ๆ ที่เข้ากันได้กับ Arduino เพื่อให้สามารถใช้อุปกรณ์ของเราโดยอัตโนมัติโดยไม่ต้องใช้คอมพิวเตอร์คุณต้องใช้แหล่งจ่ายไฟตั้งแต่ 6 ถึง 12 โวลต์ ในการระบุสถานะของอุปกรณ์เราจะใช้หน้าจอกราฟิก WG12864B เราจำเป็นต้องมีเคสด้วยในกรณีนี้กล่องจากตลับ Sega นั้นสมบูรณ์แบบ

ในการใช้ความคิดนี้คุณจะต้อง:

- Arduino UNO (หรือบอร์ดที่เข้ากันได้กับ Arduino)
- หน้าจอกราฟิก WG12864B
- ตัวต้านทาน 100 โอห์ม 0.25 W
- แหล่งจ่ายไฟ 6 - 12 V
- ตัวต้านทาน 2.2 KOhm 0.25 W
- ตัวต้านทาน 10 KOhm 0.25 W
- กล่องจากคาร์ทริดจ์ของ SEGA console
- เทปไฟฟ้า
- สายเชื่อมต่อ
- ปุ่ม
- ชิ้นส่วนสแตนเลสขนาดเล็ก
- กรรไกรโลหะ
- มีดเครื่องเขียน
- หัวแร้ง
- บัดกรีขัดสน
- เทปสองด้าน

ขั้นตอนที่ 1 บิตเกี่ยวกับปุ่ม Ibuttom เอง
เพื่อให้ชัดเจน iButton เป็นเพียงชิปหนาตาลงในเคสสแตนเลสทรงกลม ขนาดตัวเรือน 16.3 มม. ตัวเรือนสแตนเลสทนทานต่อการกระแทกสิ่งสกปรกและความชื้น มาตรฐานที่พักอาศัยเรียกว่า iButton MicroCan มีความหนามาตรฐานสองแบบ: 3.1 มม. (รุ่น F3) และ 5.9 มม. (รุ่น F5) Microcircuit รับพลังงานจากสายข้อมูลของอุปกรณ์หลัก เส้นผ่าศูนย์กลางของฝาครอบนั้นเหมือนกันสำหรับทุกรุ่น ดังนั้นถ้วยอ่านหนังสือใบเดียวกันจึงเหมาะสำหรับทุกคน บล็อกไดอะแกรมของกุญแจของเรา:


คีย์ถูกเขียนทับได้และไม่ใช่ หากต้องการทำซ้ำคุณจะต้องเขียนซ้ำตามลำดับ มีแท็ก 3 เวอร์ชัน: RW1990, TM08v2 และ TM-08 VZT F. พวกมันต่างกันในวงจรไมโครภายใน RW1990 ที่พบมากที่สุด พวกเขาสามารถซื้อได้ที่ aliexpress หรือร้านค้าปลีกสัญญาณเตือนไฟไหม้

ขั้นตอนที่ 2 หน้าจอ

เราจะใช้จอแสดงผลคริสตัลเหลวความละเอียด 128 x 64 พิกเซล ส่วนใหญ่ทำงานกับชิป ks0107 / ks0108 ดังนั้นจึงไม่ควรมีปัญหาความเข้ากันได้ หน้าจอทั้งหมดเหล่านี้สามารถแบ่งออกเป็น 4 ประเภท การเชื่อมต่อที่แตกต่างกัน:


ที่ดีที่สุดคือการใช้ WG12864B3 V2.0 สามารถหาได้ง่ายในร้านค้าทั้งจีนและรัสเซีย อาจมีแสงฉากหลังหลายประเภท แต่สิ่งนี้จะไม่ส่งผลกระทบต่อการทำงาน แต่อย่างใดนอกจากนี้ยังมีสองตัวเลือกการเชื่อมต่อ: ขนานและอนุกรม เมื่อเลือกชนิดแบบขนานเราต้องใช้ Arduino Arduino 13 ตัวฟรี เลือกตามลำดับ มีเพียงข้อสรุป 3 ข้อเท่านั้นที่เกี่ยวข้อง และอย่าลืมเกี่ยวกับโภชนาการ:

WG12864B - Arduino UNO
1 (GND) - GND
2 (VCC) - + 5V
4 (RS) - 10
5 (R / W) - 11
6 (E) - 13
15 (PSB) - GND
19 (BLA) - ผ่านตัวต้านทาน 100 โอห์ม - + 5V
20 (BLK) - GND

ความสว่างของหน้าจอถูกควบคุมโดยโพเทนชิออมิเตอร์ที่อยู่บนบอร์ดพร้อมกับหน้าจอ ถ้าเป็น - ความสามารถในการปรับความสว่างหายไป แต่สิ่งนี้ไม่ค่อยเกิดขึ้น:


ความต้านทาน 100 โอห์มใช้เพื่อลดแรงดันไฟฟ้าสำหรับแบ็คไลท์หน้าจอ เราใส่เข้าไปในส่วนของเส้นลวดที่ป้อนแสงไฟ:


ขั้นตอนที่ 3 ตัวเรือนและถ้วยอ่านหนังสือ
เพื่อให้เราไม่มี "dzhigurdy" และทุกอย่างดูปกติเราจะเริ่มผลิตเคส กล่องพลาสติกที่เหมาะกับ Arduino Uno และหน้าจอนั้นสมบูรณ์แบบ ทางออกที่ดีที่สุดคือกล่องตลับ


ตัดห่วงและลบภาพยนตร์:


เราหยิบมีดเกี่ยวกับพระและเริ่มตัดช่องออก ก่อนตัดที่ใหญ่ที่สุดที่ด้านบนของกล่องขนาด 37x69 มันเป็นสิ่งจำเป็นสำหรับหน้าจอ


กาวเทปกาวสองหน้าภายในกล่อง:


ตอนนี้เรางงงวยกับถ้วยที่อ่านได้ คุณสามารถซื้อและใช้เสร็จแล้ว นี่คือตัวเลือกที่ง่ายที่สุด ฉันจะแสดงวิธีทำถ้วยนี้เอง เราตัดสี่เหลี่ยมสองรูปจากเหล็กกล้าไร้สนิม: 20x20 mm และ 20x8 mm:


เราสร้างช่องเล็ก ๆ ที่ด้านล่างของหน้าจอและแทรกสี่เหลี่ยมที่ใหญ่กว่าที่นั่น:


และงอขอบ:


และในด้านตรงกันข้ามเรายังทำเพื่อแก้ไขแผ่นสัมผัสลบ:


สำหรับข้อดีเรายังสร้างช่องและใส่รายชื่อติดต่อบวกเข้าไปด้วย:


จากภายในรายชื่อจะมีลักษณะดังนี้:


บนเทปที่วางก่อนหน้านี้เรายึดหน้าจอ:


ข้างนอกมันควรเป็นแบบนี้:


ภายในกล่องด้านล่างหน้าจอเราวาง Arduino:


อย่าลืมสร้างช่องสำหรับ USB และแจ็คไฟ:


ในการสลับโหมดระหว่างการอ่านและการเขียนให้ส่งออกปุ่ม:


ขั้นตอนที่ 4 แก้ไขปัญหาทางโภชนาการ
เพื่อให้อุปกรณ์ของเราใช้งานได้เราจะจัดหาพลังงานให้ สำหรับสิ่งนี้เราต้องการแหล่งจ่ายไฟ แรงดันไฟฟ้าควรอยู่ระหว่าง 6 โวลต์และ 12 ปลั๊กที่ท้ายควรพอดีกับซ็อกเก็ต Arduino:


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

ขั้นตอนที่ 5 รวมทั้งหมดเข้าด้วยกัน
โถอ่านเชื่อมต่อตามแบบแผน:


เราเชื่อมต่อหน้าสัมผัสที่เป็นบวกของชามเพื่อพิน 7 ดึงผ่านตัวต้านทาน 2.2K กับ VCC เราเชื่อมต่อปุ่มเพื่อขา 6 ดึงตัวต้านทาน 10K ไปยัง GND

ขั้นตอนที่ 6 ส่วนซอฟต์แวร์
ดาวน์โหลดและติดตั้ง Arduino IDE พร้อม

ในการทำงานกับหน่วยความจำ Touch ห้องสมุด One Wire จะถูกใช้ นอกจากนี้ยังจำเป็นต้องดาวน์โหลดและติดตั้งใน Arduino IDE:
onewire.rar [16.75 Kb] (ดาวน์โหลด: 92)


เปิดหน้าจอโดยใช้ไลบรารี U8glib:
u8glib.rar [906.95 Kb] (ดาวน์โหลด: 81)


หากไม่มีไลบรารีให้รวบรวมภาพร่างและอัปโหลดไปยัง Arduino จะล้มเหลว เราดำเนินการในวิธีต่าง ๆ ดังต่อไปนี้: เปิดเครื่องรูดไฟล์เก็บถาวรที่ดาวน์โหลดและย้ายไฟล์เหล่านี้ไปยังโฟลเดอร์ชื่อ มันสามารถพบได้โดยการติดตั้งสภาพแวดล้อมการเขียนโปรแกรม
ดาวน์โหลดไฟล์ร่างด้วยร่าง:
adri_i_buttom_wg12864b.rar [1.58 Kb] (ดาวน์โหลด: 157)


แกะไฟล์เก็บถาวรเปิดร่างใน Arduino Ide และเติมลงใน Arduino

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


เราใช้รหัสที่จะคัดลอก กุญแจนี้ควรจะปรากฏบนหน้าจอ ตัวอย่างเช่นฉันใช้หนึ่งในสิ่งที่ฉันมี:


ตอนนี้กดปุ่มตัวอักษรบนหน้าจอควรเปลี่ยนเป็น "เขียน" คีย์จะปรากฏขึ้นซึ่งจะถูกบันทึก:


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

รหัสสากลที่บันทึกไว้ในร่างสามารถเปลี่ยนแปลงได้ เมื่อต้องการทำสิ่งนี้ให้เปิดแบบร่างและแก้ไขบรรทัด:

ไบต์ ReadID [8] = {0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F};


แต่นี่ไม่ใช่เรื่องง่าย ไบต์สุดท้ายคือคีย์ checksum หรือ Cyclic Redundancy Check (CRC) ในกรณีนี้มันคือ 2F หากไม่มีจำนวนนี้ผู้อ่านจะไม่รับกุญแจ ซีอาร์ซีคำนวณโดยอัลกอริธึมพิเศษ คุณสามารถค้นหาและคำนวณอัลกอริทึมนี้ได้ด้วยตัวเอง แต่โปรดใช้อุปกรณ์ของเรา ไบต์แรกคือรหัสครอบครัวจะต้องเป็น 01 เสมอถัดไปจะเขียนไบต์ในสตริงที่เราต้องการเขียนเป็นคีย์สากล เติมร่าง เราเขียนคีย์นี้ลงบนแผ่นดิสก์แล้วลองอ่านกลับมาขณะเปิดหน้าต่างเทอร์มินัล ในอาคารผู้โดยสารเราจะเห็นกุญแจของเราในตอนท้ายของ CRC นี่คือการตรวจสอบที่ต้องการ ตอนนี้แก้ไขร่างอีกครั้ง แทนที่จะเป็นไบต์สุดท้ายในบรรทัดเดียวกันให้เขียนไบต์ที่ได้รับระหว่างการอ่านหลังจาก CRC เติมร่างและเขียนรหัสใหม่ลงบนแผ่นดิสก์อีกครั้ง เปิดหน้าต่างเทอร์มินัลลองอ่านคีย์ของเรา ไบต์สุดท้ายของคีย์จะต้องตรงกับไบต์ที่เขียนหลัง CRC

อุปกรณ์ดังกล่าวมีประโยชน์และเกี่ยวข้องอย่างไร
ผู้ลงคะแนนทั้งหมด: 45
9.2
8.8
7.5

เพิ่มความคิดเห็น

    • รอยยิ้มรอยยิ้มxaxaตกลงdontknowyahooNea
      นายรอยขีดข่วนคนโง่ใช่ใช่ใช่ก้าวร้าวลับ
      ขอโทษเต้นdance2dance3ให้อภัยช่วยเหลือเครื่องดื่ม
      หยุดเพื่อนดีgoodgoodนกหวีดหน้ามืดตามัวลิ้น
      ควันการตบมือเครย์ประกาศเป็นขี้ปากดอน t_mentionดาวน์โหลด
      ความร้อนโมโหlaugh1ภาคตะวันออกเฉียงเหนือประชุมmoskingเชิงลบ
      not_iข้าวโพดคั่วลงโทษอ่านทำให้ตกใจกลัวค้นหา
      ยั่วยุthank_youนี้to_clueumnikรุนแรงเห็นด้วย
      ไม่ดีbeeeblack_eyeblum3หน้าแดงโม้ความเบื่อ
      เซ็นเซอร์การหยอกล้อsecret2ขู่ชัยชนะYusun_bespectacled
      shokrespektฮ่า ๆprevedยินดีต้อนรับkrutoyya_za
      ya_dobryiผู้ช่วยne_huliganne_othodiFLUDห้ามใกล้

เราแนะนำให้คุณอ่าน:

มอบให้กับสมาร์ทโฟน ...