Obsah:

Telnet do vášho Arduina/AVR!: 4 kroky
Telnet do vášho Arduina/AVR!: 4 kroky

Video: Telnet do vášho Arduina/AVR!: 4 kroky

Video: Telnet do vášho Arduina/AVR!: 4 kroky
Video: Лекция 4. Архитектура AVR. Ассемблер 2024, November
Anonim
Telnet do vášho Arduina/AVR!
Telnet do vášho Arduina/AVR!

Na druhý deň som chcel skontrolovať jeden z mojich AVR, ale bol som hore a boh vie, že bolo príliš ťažké ísť dole, kde bol mikrokontrolér. Na poschodí však vedľa môjho lenivého zadku sedeli dva nečinné počítače, takže som mal pol dňa v práci a rozhodol som sa napísať aplikáciu, ktorá viaže dva porty: sériový port na pripojenie k Arduino/AVR a TCP/IP port, do ktorého by som mohol telnet z mojej bezdrôtovej siete alebo cez internet. Aplikácia potom funguje ako proxy server medzi sieťou TCP/IP a AVR. Ak chcete video vidieť lepšie, dvakrát naň kliknite a otvorte ho vo vlastnom okne a zväčšte ho. V opačnom prípade prižmúrte oči a vidíte, čo sa píše. Nakoniec som upravil aplikáciu sériového pripojenia AVR Terminal, ktorú som už napísal, a pridal som k nej podporu TCP/IP. Aby som to zvládol, napísal som firmvér, ktorý poskytuje niečo ako UNIXový shell a poskytuje mi vzdialený prístup ku všetkým kolíkom, nastaveniam poistiek atď. Na diaľku môžete zapnúť LED diódy a všetko ostatné. Podporuje dokonca úpravu rýchlosti hodín v reálnom čase a má systém pseudo-hesiel, ktorý poskytuje rámec pre zoznamy riadenia prístupu alebo autentifikáciu pre príkazy na úrovni koreňa (napríklad vypínanie subsystémov atď.). Tu sú niektoré z vecí, ktoré dokáže:

  • Zobrazte frekvenciu procesora
  • Nastavte ľubovoľný pin na vstup alebo výstup
  • Prečítajte si stav akéhokoľvek kolíka
  • Odošlite logiku 1 a 0 na akýkoľvek kolík, aby sa rozsvietili diódy LED atď
  • Vypnite a zapnite periférne zariadenia SPI, TWI, USART a ADC
  • Prečítajte si spodnú poistku, vyššiu poistku, externú poistku a blokovacie bity v reálnom čase
  • Spustite časovače na automatické načasovanie udalostí a vecí.
  • Rámec pre autentifikačný systém do EEPROM
  • Vytvorte v reálnom čase akýkoľvek dostupný predzvesť hodín
  • Napísané v C ++ a zostavené pre ATmega328P

Tento návod podrobne popisuje, ako si môžete stiahnuť softvér (a firmvér, ak chcete), nainštalovať ho a začať pristupovať k vášmu AVR z vašej bezdrôtovej domácej siete alebo cez internet.

Krok 1: Čo budete potrebovať

  • Samostatný AVR alebo Arduino/klon (podrobné pokyny o tom, ako vytvoriť vlastný, pomerne kompletný samostatný systém AVR vrátane externého kryštálu, oddeľovacích kondenzátorov a regulovaného zdroja energie, nájdete v mojom ďalšom návode).
  • Sériové alebo USB pripojenie k hostiteľskému počítaču
  • Verzia AVR Terminal, ktorá má vstavaný server TCP/IP
  • Voliteľne AVR Shell (avrsh), ak chcete na svojom cieľovom AVR/Arduino spustiť firmvér, aby ste získali prístup k svojim perifériám.

Brána TCP/IP funguje s akýmkoľvek firmvérom, ktorý používate alebo chcete písať, pokiaľ komunikuje s počítačom prostredníctvom rozhrania UART. Verzia Java bohužiaľ neexistuje, takže AVR Terminal v súčasnosti beží iba na systéme Windows.

Krok 2: Stiahnite si a nainštalujte terminál AVR a server TCP/IP

Stiahnite a nainštalujte terminál AVR a server TCP/IP
Stiahnite a nainštalujte terminál AVR a server TCP/IP

Terminál AVR je aplikácia pre systém Windows, ktorú som predstavil v predchádzajúcich pokynoch. Môže hovoriť s vašim AVR cez RS232 USART, ako aj počúvať prichádzajúce pripojenia TCP/IP a prenášať ich cez pripojenie RS232, aby odpovedal na váš čakajúci AVR. Nie je kompletný, ale ponúka úvodnú prehliadku funkcií podrobne popísaných tu a v mojich ďalších pokynoch. Najnovšiu verziu je možné stiahnuť tu. Softvér nevyžaduje úplnú inštaláciu; Softvér môžete spustiť iba z jeho adresára. Textové pole na paneli s nástrojmi, ktoré uvádza AKÉKOĽVEK, je adresa IP, ktorú je potrebné počúvať. KAŽDÝ bude viazať všetky IP adresy alebo voliteľne môžete uviesť jednu, s ktorou sa chcete zvlášť viazať. Textové pole napravo od adresy IP je port IP, ku ktorému bude server viazaný. Predvolená hodnota je 23232, ale môžete to zmeniť na čokoľvek, čo sa vám páči.

Krok 3: Nainštalujte si shell

Predtým, ako bude môcť váš AVR s vami komunikovať, budete musieť mať na cieľovom AVR nejaký operačný systém alebo shell. K dispozícii je niekoľko, vrátane môjho AVR Shell a Bitlash shellu.

Alternatívne využite túto skúsenosť ako šancu napísať si vlastnú minimálnu škrupinu.

Krok 4: Telnet a užívajte si

Telnet a užívajte si
Telnet a užívajte si

Informácie o konfigurácii si zapamätajte alebo ich môžete ponechať ako predvolené. Na mojom vzorovom obrázku som na hostiteľovi s názvom „newton“a telnetu na počítači, ku ktorému je pripojený môj AVR, hostiteľ s názvom „quadcpu1“. Môžete vidieť štandardný výstup telnetu. Ak ste teda ponechali predvolené hodnoty, môžete k svojmu AVR/Arduino pristupovať zo svojej siete TCP/IP pomocou: telnet 23232

alebo ak ste na tom rovnako: telnet localhost 23232

Ak ste ho zmenili, nezabudnite použiť konfiguráciu, na ktorú ste ho zmenili. To by malo byť. Zdrojový kód pre server telnet a firmvér AVR je voľne dostupný ako otvorený zdrojový kód a mal by vám poskytnúť dostatok dobrých informácií, ktoré vám umožnia upraviť ho alebo napísať vlastné verzie oboch. Ďalším krokom môže byť napísanie implementácie servera TCP/IP v jazyku Java alebo Qt, aby z toho mohli mať prospech používatelia počítačov Mac a Linux.

Odporúča: