Cuprins:

Telnet către Arduino / AVR !: 4 pași
Telnet către Arduino / AVR !: 4 pași

Video: Telnet către Arduino / AVR !: 4 pași

Video: Telnet către Arduino / AVR !: 4 pași
Video: Arduino IDE port problem fixed!! | Arduino ⏩ 2024, Iulie
Anonim
Telnet către Arduino / AVR!
Telnet către Arduino / AVR!

Zilele trecute îmi doream să verific unul dintre AVR-urile mele, dar eram la etaj și Dumnezeu știe că era prea greu să mă duc jos la locul unde se afla microcontrolerul. Dar, erau două computere inactive, așezate la etaj, lângă fundul meu leneș, așa că am avut o jumătate de zi de lucru și am decis să scriu o aplicație care leagă două porturi: un port serial pentru conectarea la Arduino / AVR și un TCP / IP port în care aș putea telnet în rețeaua mea fără fir sau prin Internet. Aplicația acționează apoi ca un proxy între rețeaua TCP / IP și AVR. Pentru a vedea mai bine videoclipul, faceți clic de două ori și aduceți-l în propria fereastră și măriți-l. În caz contrar, strabici și poți vedea ce se tastează. Așadar, am ajuns să modific aplicația de conexiune serială a terminalului AVR pe care am scris-o deja și i-am adăugat suport TCP / IP. Pentru a merge împreună cu el, am scris niște firmware care oferă ceva de genul unui shell UNIX, oferindu-mi acces la distanță la toți pinii, setările siguranței etc. Puteți porni LED-urile și toate acele lucruri de la distanță. Suportă chiar ajustarea vitezei ceasului în timp real și are un sistem de pseudo-parolă care oferă cadrul pentru listele de control acces sau autentificarea pentru comenzile la nivel de rădăcină (cum ar fi oprirea subsistemelor etc.). Iată câteva dintre lucrurile pe care le poate face:

  • Afișați frecvența CPU
  • Setați orice pin la intrare sau ieșire
  • Citiți starea oricărui pin
  • Trimiteți logica 1 și 0 la orice pin pentru a porni LED-uri etc.
  • Opriți și porniți perifericele SPI, TWI, USART și ADC
  • Citiți siguranța inferioară, siguranța superioară, siguranța externă și biții de blocare în timp real
  • Porniți temporizatoare pentru temporizarea automată a evenimentelor și a lucrurilor.
  • Un cadru pentru un sistem de autentificare în EEPROM
  • Stabiliți orice prescaler de ceas disponibil în timp real
  • Scris în C ++ și compilat pentru un ATmega328P

Aceste informații detaliate despre modul în care puteți descărca software-ul (și firmware-ul, dacă doriți), îl puteți instala și începe să accesați AVR-ul dvs. din rețeaua de acasă fără fir sau prin Internet.

Pasul 1: De ce veți avea nevoie

  • Un AVR sau Arduino / clonă de sine stătătoare (pentru instrucțiuni detaliate despre cum să-ți faci propriul sistem AVR de sine stătător, destul de complet, incluzând un cristal extern, condensatori de decuplare și o sursă de alimentare reglată, vezi celelalte instructabile ale mele).
  • O conexiune serială sau USB la computerul gazdă
  • Versiunea terminalului AVR care are serverul TCP / IP încorporat
  • Opțional, AVR Shell (avrsh) dacă doriți să rulați firmware-ul pe AVR / Arduino țintă pentru a obține acces la perifericele dvs.

Gateway-ul TCP / IP funcționează cu orice firmware pe care îl utilizați sau doriți să scrieți atâta timp cât comunică prin UART către computer. Din păcate, nu există o versiune Java, deci Terminalul AVR rulează doar pe Windows în acest moment.

Pasul 2: Descărcați și instalați terminalul AVR și serverul TCP / IP

Descărcați și instalați terminalul AVR și serverul TCP / IP
Descărcați și instalați terminalul AVR și serverul TCP / IP

Terminalul AVR este o aplicație Windows pe care am introdus-o în instructabile anterioare. Poate vorbi cu AVR-ul dvs. prin RS232 USART, precum și să asculte conexiunile TCP / IP de intrare și să le retransmită prin conexiunea RS232 pentru răspuns de la AVR-ul dvs. în așteptare. Nu este complet caracteristic, dar oferă un tur inițial al caracteristicilor detaliate aici și în celelalte instructabile ale mele. Cea mai recentă versiune poate fi descărcată de aici. Software-ul nu necesită o instalare completă; puteți rula doar software-ul din directorul său. Caseta de text din bara de instrumente care spune ORICE este adresa IP care trebuie legată pentru ascultare. ORICE va lega orice adresă IP sau toate opțional, puteți lista una cu care să vă legați în mod special. Caseta de text din dreapta adresei IP este portul IP de care va fi legat serverul. Valoarea implicită este 23232, dar puteți schimba acest lucru în orice doriți.

Pasul 3: Instalați-vă Shell-ul

Înainte ca AVR-ul dvs. să poată comunica cu dvs., va trebui să aveți un fel de sistem de operare sau shell pe AVR-ul țintă. Există câteva disponibile, inclusiv AVR Shell și Bitlash shell.

Alternativ, utilizați această experiență ca o șansă de a scrie propriul dvs. shell minim.

Pasul 4: Telnet și Enjoy

Telnet și Enjoy
Telnet și Enjoy

Amintiți-vă informațiile de configurare sau le puteți păstra la valorile implicite. În imaginea mea de exemplu, sunt pe o gazdă numită „newton” și telnet la mașina la care este conectat AVR-ul meu, o gazdă numită „quadcpu1”. Puteți vedea ieșirea standard telnet. Deci, dacă l-ați menținut la valorile implicite, vă puteți accesa AVR / Arduino din rețeaua TCP / IP cu: telnet 23232

sau dacă vă aflați în aceeași casetă: telnet localhost 23232

Nu uitați să utilizați configurația în care ați schimbat-o, dacă ați schimbat-o. Asta ar trebui să fie. Codul sursă atât pentru serverul telnet, cât și pentru firmware-ul AVR sunt disponibile gratuit ca sursă deschisă și ar trebui să vă ofere suficiente informații bune pentru a vă permite să îl modificați sau să scrieți propriile versiuni ale fiecăruia. Următorul pas ar putea fi să scrieți o implementare Java sau Qt a serverului TCP / IP, astfel încât utilizatorii Mac și Linux să poată beneficia.

Recomandat: