Innholdsfortegnelse:

Telnet til din Arduino/AVR !: 4 trinn
Telnet til din Arduino/AVR !: 4 trinn

Video: Telnet til din Arduino/AVR !: 4 trinn

Video: Telnet til din Arduino/AVR !: 4 trinn
Video: Lesson 95: Using L293D 4 DC Motors Shield for Arduino UNO and Mega | Arduino Step By Step Course 2024, November
Anonim
Telnet til din Arduino/AVR!
Telnet til din Arduino/AVR!

Her om dagen hadde jeg lyst til å sjekke om en av mine AVR -er, men jeg var ovenpå og gud vet at det var for mye bry å gå ned til der mikrokontrolleren var. Men det satt to inaktive datamaskiner oppe ved siden av min late rumpe, så jeg hadde en halv dag fra jobb og bestemte meg for å skrive et program som binder to porter: en seriell port for å koble til Arduino/AVR og en TCP/IP port som jeg kunne telnet inn fra mitt trådløse nettverk eller over Internett. Applikasjonen fungerer deretter som en proxy mellom TCP/IP -nettverket og AVR. For å se videoen bedre, klikk to ganger og ta den opp i sitt eget vindu og forstørre. Ellers, myse og du kan se hva som skrives inn. Så det endte med at jeg modifiserte programmet for seriell tilkobling for AVR Terminal som jeg allerede hadde skrevet, og jeg la til TCP/IP -støtte. For å gå videre med det, skrev jeg noen fastvare som gir noe som et UNIX -skall, noe som gir meg ekstern tilgang til alle pinnene, sikringsinnstillinger, etc. Du kan slå på lysdioder og alt det der eksternt. Den støtter til og med å justere klokkehastigheten i sanntid og har et pseudo-passordsystem som gir rammeverket for tilgangskontrollister eller autentisering for kommandoer på rotnivå (som å slå av delsystemer osv.). Her er noen av tingene den kan gjøre:

  • Vis din CPU -frekvens
  • Sett en hvilken som helst pin til input eller output
  • Les tilstanden til en hvilken som helst pin
  • Send logikk 1 og 0 til en hvilken som helst pin for å slå på lysdioder osv
  • Slå av og slå på SPI-, TWI-, USART- og ADC -eksterne enheter
  • Les nedre sikring, høyere sikring, ekstern sikring og låsekroner i sanntid
  • Start tidtakere for automatisk timing av hendelser og ting.
  • Et rammeverk for et autentiseringssystem til EEPROM
  • Etablere en hvilken som helst tilgjengelig klokkeskaler i sanntid
  • Skrevet i C ++ og samlet for en ATmega328P

Denne instruksen beskriver hvordan du kan laste ned programvaren (og fastvare, hvis du vil), installere den og begynne å få tilgang til AVR -en fra ditt trådløse hjemmenettverk eller over Internett.

Trinn 1: Hva du trenger

  • En frittstående AVR eller Arduino/klon (for detaljerte instruksjoner om hvordan du lager ditt eget, ganske komplette frittstående AVR-system inkludert en ekstern krystall, frakoblingskondensatorer og en regulert strømkilde, se min andre instruerbare).
  • En seriell eller USB -tilkobling til vert -PCen
  • AVR Terminal -versjonen som har den innebygde TCP/IP -serveren
  • Eventuelt AVR -skallet (avrsh) hvis du vil kjøre fastvare på mål -AVR/Arduino for å få tilgang til eksterne enheter.

TCP/IP -gatewayen fungerer med hvilken som helst fastvare du måtte bruke eller vil skrive så lenge den kommuniserer via UART til PCen. Dessverre er det ikke en Java -versjon, så AVR -terminalen kjører bare på Windows for øyeblikket.

Trinn 2: Last ned og installer AVR -terminalen og TCP/IP -serveren

Last ned og installer AVR -terminalen og TCP/IP -serveren
Last ned og installer AVR -terminalen og TCP/IP -serveren

AVR Terminal er et Windows -program som jeg introduserte i tidligere instrukser. Den kan snakke med AVR -en din via RS232 USART, samt lytte etter innkommende TCP/IP -tilkoblinger og videresende dem over RS232 -tilkoblingen for svar fra ventende AVR. Den er ikke fullstendig, men tilbyr en innledende omvisning av funksjoner som er beskrevet her og i mine andre instrukser. Den siste versjonen kan lastes ned her. Programvaren tar ikke en full installasjon; du kan bare kjøre programvaren fra katalogen. Tekstboksen i verktøylinjen som sier ALLE er IP -adressen som skal lyttes. ALLE vil binde alle IP -adresser, eller du kan eventuelt oppgi en du vil binde til spesielt. Tekstboksen til høyre for IP -adressen er IP -porten som serveren skal bindes til. Standard er 23232, men du kan endre dette til hva du vil.

Trinn 3: Installer skallet

Før AVR -en din kan kommunisere tilbake med deg, må du ha et slags operativsystem eller skall på mål -AVR -en. Det er et par tilgjengelige, inkludert mitt AVR -skall og Bitlash -skallet.

Alternativt kan du bruke denne opplevelsen som en sjanse til å skrive ditt eget minimale skall.

Trinn 4: Telnet og nyt

Telnet og nyt
Telnet og nyt

Husk konfigurasjonsinformasjonen, ellers kan du beholde den som standard. I eksempelbildet mitt er jeg på en vert som heter "newton" og telnet til maskinen min AVR er koblet til, en vert kalt "quadcpu1." Du kan se standard telnet -utgang. Så hvis du har beholdt den som standard, kan du få tilgang til AVR/Arduino fra ditt TCP/IP -nettverk med: telnet 23232

eller hvis du er på samme boks: telnet localhost 23232

Bare husk å bruke konfigurasjonen du endret den til, hvis du endret den. Det burde være det. Kildekoden for både telnet -serveren og AVR -fastvaren er fritt tilgjengelig som åpen kildekode og bør gi deg nok god informasjon til å la deg endre den eller skrive dine egne versjoner av begge. Neste trinn kan være å skrive en Java- eller Qt -implementering av TCP/IP -serveren slik at Mac- og Linux -brukere kan dra nytte av det.

Anbefalt: