Taula de continguts:

Telnet al vostre Arduino / AVR !: 4 passos
Telnet al vostre Arduino / AVR !: 4 passos

Vídeo: Telnet al vostre Arduino / AVR !: 4 passos

Vídeo: Telnet al vostre Arduino / AVR !: 4 passos
Vídeo: Telnet объяснил 2024, Maig
Anonim
Telnet al vostre Arduino / AVR
Telnet al vostre Arduino / AVR

L’altre dia tenia ganes de comprovar un dels meus AVR, però jo era a dalt i Déu sap que era massa complicat baixar al pis on hi havia el microcontrolador. Però hi havia dos ordinadors inactius asseguts al pis de dalt, al costat del meu mandrós cul, així que vaig tenir mig dia de feina i vaig decidir escriure una aplicació que enllaçés dos ports: un port sèrie per connectar-se a l’Arduino / AVR i un TCP / IP. port on podia connectar-me a la xarxa des de la meva xarxa sense fils o per Internet. A continuació, l'aplicació actua com a servidor intermediari entre la xarxa TCP / IP i l'AVR. Per veure millor el vídeo, feu clic dues vegades i mostreu-lo a la seva pròpia finestra i amplieu-lo. En cas contrari, mireu l’ull i veureu què s’està escrivint. Per tant, vaig acabar modificant l’aplicació de connexió sèrie del terminal AVR que ja havia escrit i hi vaig afegir suport TCP / IP. Per seguir-ho, vaig escriure un microprogramari que proporciona alguna cosa com un intèrpret d'ordres UNIX, que em donava accés remot a tots els pins, configuracions de fusibles, etc. Podeu encendre els LED i tot això de forma remota. Fins i tot admet ajustar la velocitat del rellotge en temps real i té un sistema de pseudo-contrasenya que proporciona el marc per a llistes de control d’accés o autenticació per a ordres de nivell arrel (com apagar subsistemes, etc.). Aquí hi ha algunes de les coses que pot fer:

  • Mostra la freqüència de la CPU
  • Estableix qualsevol pin per a l'entrada o la sortida
  • Llegiu l'estat de qualsevol pin
  • Envieu la lògica 1 i 0 a qualsevol pin per encendre els LED, etc.
  • Apagueu i enceneu els perifèrics SPI, TWI, USART i ADC
  • Llegiu el fusible inferior, el fusible superior, el fusible extern i els bits de bloqueig en temps real
  • Inicieu temporitzadors per temporitzar automàticament esdeveniments i coses.
  • Un marc per a un sistema d’autenticació a EEPROM
  • Establir qualsevol prescaler de rellotge disponible en temps real
  • Escrit en C ++ i compilat per a un ATmega328P

Aquest document instructiu detalla com podeu descarregar el programari (i el firmware, si voleu), instal·lar-lo i començar a accedir al vostre AVR des de la vostra xarxa domèstica sense fils o per Internet.

Pas 1: què necessiteu

  • Un AVR o Arduino / clon autònom (per obtenir instruccions detallades sobre com fer el vostre propi sistema AVR autònom, bastant complet, inclòs un cristall extern, condensadors de desacoblament i una font d’energia regulada, consulteu la meva altra instrucció).
  • Una connexió sèrie o USB al vostre PC amfitrió
  • La versió del terminal AVR que té el servidor TCP / IP incrustat
  • Opcionalment, l'AVR Shell (avrsh) si voleu executar el firmware al vostre AVR / Arduino de destinació per accedir als vostres perifèrics.

La passarel·la TCP / IP funciona amb qualsevol firmware que pugueu utilitzar o vulgueu escriure sempre que es comuniqui a través de la UART al PC. Malauradament, no hi ha una versió Java, de manera que el terminal AVR només funciona en Windows en aquest moment.

Pas 2: descarregueu i instal·leu el terminal AVR i el servidor TCP / IP

Descarregueu i instal·leu el terminal AVR i el servidor TCP / IP
Descarregueu i instal·leu el terminal AVR i el servidor TCP / IP

El terminal AVR és una aplicació de Windows que vaig introduir en instruccions anteriors. Pot parlar amb el vostre AVR mitjançant el RS232 USART, així com escoltar les connexions TCP / IP entrants i retransmetre-les a través de la connexió RS232 per obtenir resposta des del vostre AVR en espera. No té funcions completes, però ofereix un recorregut inicial de les funcions detallades aquí i en els meus altres instructables. La versió més recent es pot descarregar aquí. El programari no necessita una instal·lació completa; només podeu executar el programari des del directori. El quadre de text de la barra d’eines que diu QUALSEVOL és l’adreça IP que cal enllaçar per escoltar-la. QUALSEVOL vincularà totes i totes les adreces IP, o, opcionalment, podeu enumerar-ne una particularment. El quadre de text situat a la dreta de l'adreça IP és el port IP al qual estarà lligat el servidor. El valor per defecte és 23232, però podeu canviar-lo pel que vulgueu.

Pas 3: instal·leu el vostre Shell

Abans que el vostre AVR pugui comunicar-vos amb vosaltres, haureu de tenir algun tipus de sistema operatiu o intèrpret d'ordres a l'AVR de destinació. Hi ha un parell de recursos disponibles, inclosos el meu shell AVR i el shell Bitlash.

Alternativament, utilitzeu aquesta experiència com una oportunitat per escriure el vostre propi shell mínim.

Pas 4: Telnet i Enjoy

Telnet i Enjoy
Telnet i Enjoy

Recordeu la vostra informació de configuració o és possible que la mantingueu per defecte. A la meva imatge d'exemple, estic en un host anomenat "newton" i telnet a la màquina a la qual està connectat el meu AVR, un host anomenat "quadcpu1". Podeu veure la sortida telnet estàndard. Per tant, si l’heu mantingut per defecte, podeu accedir al vostre AVR / Arduino des de la vostra xarxa TCP / IP amb: telnet 23232

o si esteu al mateix quadre: telnet localhost 23232

Només recordeu d’utilitzar la configuració a què l’heu canviat, si l’heu canviat. Això hauria de ser. El codi font del servidor telnet i del microprogramari AVR estan disponibles de forma gratuïta com a codi obert i us haurien de proporcionar prou bona informació perquè pugueu modificar-lo o escriure les vostres pròpies versions. El següent pas pot ser escriure una implementació Java o Qt del servidor TCP / IP perquè els usuaris de Mac i Linux es puguin beneficiar.

Recomanat: