Bona tarda, avui he pres la idea de crear un dispositiu per copiar electrònica tecles com la memòria tàctil o ibuttom. També conegudes com "pastilles". Aquestes claus, tot i que ja molt obsoletes, van ser reemplaçades per Rfid sense contacte, però encara s’utilitzen sovint per a intercomunicadors o alarmes anti-robatori. La base del nostre dispositiu servirà Arduino Uno Podeu utilitzar qualsevol altra placa compatible Arduino. Per poder utilitzar el nostre dispositiu de forma autònoma, sense ordinador, necessita una font d’alimentació de 6 a 12 volts. Per indicar l'estat del dispositiu, utilitzarem la pantalla gràfica WG12864B. També necessitem un estoig, en aquest cas la caixa del cartutx Sega és perfecta.
Per implementar aquesta idea, necessitareu:
- Arduino UNO (o placa compatible Arduino)
- Pantalla gràfica WG12864B
- Resistència de 100 ohms 0,25 W
- Alimentació de 6-12 V
- Resistència 2,2 KOhm 0,25 W
- Resistor de 10 KOhm 0,25 W
- Caixa del cartutx de la consola SEGA
- cinta elèctrica
- cables de connexió
- Botó
- Una petita peça d’acer inoxidable
- tisores metàl·liques
- ganivet de papereria
- soldadura
- Soldadura, colofona
- Cinta a doble cara
Pas 1 Una mica sobre les claus d’Ibuttom.
Per deixar-ho clar, iButton és només un xip enganxat a una caixa rodona d’acer inoxidable. Diàmetre de la caixa 16,3 mm. La caixa d’acer inoxidable és resistent a cops, brutícia i humitat. L'estàndard de l'habitatge s'anomena iButton MicroCan. Disponible en dos gruixos estàndard: 3,1 mm (versió F3) i 5,9 mm (versió F5). El microcircuit rep energia de la línia de dades del dispositiu mestre. El diàmetre de la coberta és el mateix per a totes les versions. Per tant, la mateixa copa de lectura és adequada per a tothom. Diagrama de blocs de les nostres claus:
Les claus es poden reescriure i no. Per fer un duplicat, haureu de respectar la vostra reescriptura. Hi ha 3 versions d’etiquetes: RW1990, TM08v2 i TM-08 VZT F. Difereixen en el microcircuit que hi ha a l’interior. El RW1990 més comú. Es poden comprar a aliexpress o a una botiga al detall d'alarma contra incendis.
Pantalla de pas 2
Utilitzarem una pantalla de cristall líquid, amb una resolució de 128 per 64 píxels. La majoria treballen en xips ks0107 / ks0108, per la qual cosa no hi hauria d'haver un problema de compatibilitat. Totes aquestes pantalles es poden dividir en 4 tipus. Connexió diferent:
El millor és prendre WG12864B3 V2.0, es pot trobar fàcilment tant en botigues xineses com russes. Hi pot haver diversos tipus de retroil·luminació, però això no afecta de cap manera la funcionalitat.També hi ha dues opcions de connexió: paral·lela i seria. Quan trieu un tipus paral·lel, necessitem 13 pins Arduino lliures. Trieu seqüencial. Aquí només hi ha tres conclusions. I no us oblideu de la nutrició:
WG12864B - Arduino UNO
1 (GND) - GND
2 (VCC) - + 5V
4 (RS) - 10
5 (R / W) - 11
6 (E) - 13
15 (PSB) - GND
19 (BLA) - mitjançant una resistència de 100 ohms - + 5V
20 (BLK) - GND
La brillantor de la pantalla està regulada per un potenciòmetre situat a la pissarra amb la pantalla. Si ho és, no hi ha la possibilitat d’ajustar la brillantor, però això rarament passa:
S'utilitza una resistència de 100 ohms per reduir la tensió del contrallum. L’inserim a la secció del filferro que alimenta el contrallum:
Pas 3 Copa d’habitatge i lectura.
Perquè no tinguem un "dzhigurdy" i tot sembli normal, començarem a fabricar la caixa. Qualsevol caixa de plàstic que s’adapti a l’Arduino Uno i la pantalla és perfecta. La millor solució és una caixa de cartutxos.
Talleu la caixa del bucle i traieu la pel·lícula:
Agafem un ganivet clerical i comencem a tallar les ranures. Primer, retallau el més gran a la part superior de la caixa, de mida 37x69. Es necessita per a la pantalla.
Cinta adhesiva a doble cara per cola dins de la caixa:
Ara ens queda perplejat una copa llegible. Podeu comprar i utilitzar l’acabat. Aquesta és l’opció més fàcil. Us ensenyaré com fer aquesta tassa jo mateix. Retallem dos rectangles d'acer inoxidable: 20x20 mm i 20x8 mm:
Fem una petita ranura a la part inferior de la pantalla i hi inserim un rectangle més gran:
I dobla les vores:
I al revers, també ho fem per arreglar la placa de contacte negativa:
Per obtenir més avantatges, també realitzem una ranura i hi inserim un contacte positiu:
Des de dins, els contactes es veuen així:
A la cinta enganxada anteriorment fixem la pantalla:
A fora hauria de ser així:
Dins la caixa, a sota de la pantalla, situem l’Arduino:
No oblideu fer ranures per a presa USB i d'alimentació:
Per canviar els modes entre lectura i escriptura, sortiu el botó:
Pas 4 Resoleu el problema de la nutrició.
Perquè el nostre dispositiu funcioni, li proporcionarem energia. Per això necessitem una font d’alimentació. La tensió hauria de ser d’entre 6 volts i 12. La presa de l’extrem hauria d’encaixar a la presa Arduino:
Podeu prescindir d'una font d'alimentació. Podeu alimentar el dispositiu des d’un ordinador USB. Si voleu, podeu agafar un compartiment per a 4 bateries de mida AAA i fer-ho. A continuació, s'ha de connectar la sortida del pin a la placa de vinya de la taula Arduino.
Pas 5 Unir-ho tot.
El bol de lectura està connectat segons l’esquema:
Connectem el contacte positiu del bol al pin 7, tirant-lo a través de la resistència 2.2K a VCC. Connectem el botó al pin 6, tirant una resistència de 10K a GND.
Pas 6 Programari part.
Baixeu i instal·leu Arduino IDE amb
Per treballar amb la memòria tàctil, s’utilitza la biblioteca One Wire. També s'ha de descarregar i instal·lar a l'ID Arduino:
Inicieu la pantalla mitjançant la biblioteca U8glib:
Sense les biblioteques, la compilació d'un esbós i la càrrega a Arduino fallarà. Actuem de les maneres següents: descomprimim els arxius descarregats i movem aquests fitxers a una carpeta anomenada "biblioteques". Es pot trobar instal·lant l’entorn de programació.
Descarregueu l'arxiu amb l'esbós:
Desempaqueu l’arxiu, obriu l’esbós a Arduino Ide i ompliu-lo a Arduino.
Pas 7 El procés de còpia de claus.
Quan enceneu el nostre dispositiu, la pantalla llegirà "Llegir" i la tecla universal. Aquesta clau està escrita a l’esbós. El vaig trobar a Internet. Personalment, no vaig comprovar com és de universal. Si això succeeix, el nostre dispositiu està preparat per utilitzar-lo:
Aplicem la clau a copiar. Aquesta clau s'hauria de mostrar a la pantalla. Per exemple, vaig agafar un dels que tinc:
Ara premeu el botó, la inscripció a la pantalla hauria de canviar per "Escriure". També es mostrarà la clau, que es gravarà:
Posem una tauleta sobre la qual escriurem un blanc i esperem a que el text de la pantalla canviï de nou a “Llegir”. Si això passés, la gravació va tenir èxit. Per comprovar-ho, lligueu-lo de nou en blanc, el dispositiu hauria de llegir-lo i mostrar la clau.
Si voleu gravar una tecla universal, només cal que premeu el botó al principi, quan la inscripció canviï per “Escriure”, lligueu un blanc.
El dispositiu també envia informació sobre les tecles i els processos de lectura i còpia a través del port sèrie.Podeu obrir el terminal Arduino Ide o qualsevol altre programa de terminal i supervisar el procés de còpia que hi ha.
Es pot canviar la clau universal registrada a l'esbós. Per fer-ho, obriu l'esbós i editeu la línia:
byte ReadID [8] = {0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F};
Però això no és tan senzill. L’últim byte és la clau de verificació clau o Cyclic Redundancy Check (CRC). En aquest cas, és 2F. Sense aquesta quantitat, els lectors no accepten la clau. CRC es calcula mitjançant un algoritme especial. Podeu trobar i calcular aquest algorisme, però utilitzeu el nostre dispositiu. El primer byte és el codi familiar, sempre hauria de ser 01. A continuació, escriu els bytes a la cadena que volem escriure com a clau universal. Omple l’esbós. Escrivim aquesta clau al disc i intentem llegir-la de nou mentre obrim la finestra del terminal. Al terminal, veurem la nostra clau al final del CRC. Aquesta és la suma de comprovació desitjada. Ara editeu l’esbós de nou. En lloc de l’últim byte de la mateixa línia, escrivim l’octet rebut durant la lectura després del CRC. Un cop més, emplena l’esbós i escriu una nova clau al disc. Obre la finestra del terminal, intenta llegir la nostra clau. L’últim byte de la clau ha de coincidir amb l’octet escrit després del CRC.