Obsah:

CircuitPython s Itsybitsy M4 Express 1: Nastavení: 9 kroků
CircuitPython s Itsybitsy M4 Express 1: Nastavení: 9 kroků

Video: CircuitPython s Itsybitsy M4 Express 1: Nastavení: 9 kroků

Video: CircuitPython s Itsybitsy M4 Express 1: Nastavení: 9 kroků
Video: Getting Started with CircuitPython - Hosted by Dan 2024, Listopad
Anonim
CircuitPython s Itsybitsy M4 Express 1: Nastavení
CircuitPython s Itsybitsy M4 Express 1: Nastavení

Jste nováčkem v kódování? Používáte pouze Scratch a chcete přejít na textový jazyk, který umožňuje snadný přístup k fyzickému počítači pomocí LED, přepínačů, displejů a senzorů? Pak to může být pro vás.

Všiml jsem si, že tento web obsahuje mnoho instrukcí o kódování pomocí Arduinos pomocí Arduino IDE, ale velmi málo o Pythonu. Kódování učím od roku 1968. (Tehdy jsme tomu říkali programování a pro vstup jsme používali FORTRAN IV s kartami Hollerith!) Od těch raných dob jsem se studenty používal mnoho různých jazyků (od 11 let do dospělosti) včetně LISP, Pascal a mnoha dalších. různé verze na BASIC.

V poslední době mnoho škol ve Velké Británii začalo ve svých hodinách používat Python, protože žáci přecházejí od „blokového“kódování pomocí Scratch nebo podobně jako textová prohlášení. Python je pravděpodobně snazší krok než použití Arduino IDE. Kód CircuitPython lze spustit jednoduchým uložením kódu na vývojovou desku, jako by se jednalo o USB disk. Úspěšně jsem použil Python pro fyzické výpočty u 8 až 11letých v Coding Clubu mojí vnučky.

Rozhodl jsem se použít Adafruit Itsybitsy M4 Express pro tyto Instructables z následujících důvodů:

  • Levná - do 15 USD (15 GBP)
  • Snadné nastavení a programování pomocí CircuitPython (verze Pythonu ideální pro ty, kteří s kódováním začínají)
  • Piny digitálního vstupu/výstupu - hraní s Blinkies je skvělá zábava
  • Analogové piny - 12bitový ADC a DAC - vysoká přesnost
  • Vestavěné červené LED a RGB DotStar LED
  • Řídí přímo Neopixely
  • Podporováno I2C a SPI - pro senzory a displeje
  • Široká řada ovladačů v rozsáhlé knihovně
  • Rychlý a výkonný - ultrarychlý procesor ATSAMD51 Cortex M4 běžící na frekvenci 120 MHz
  • Dostatek paměti - 2 MB SPI Flash paměti pro kód CircuitPython nebo datové soubory
  • Skvělá podpora od společnosti Adafruit s plnou dokumentací, průvodci a internetovým fórem nápovědy
  • Potřebuje pouze starý notebook nebo počítač - žádný vyhrazený monitor, klávesnici, napájecí zdroj nebo myš.
  • Uživatel může převést na Arduino IDE na stejné desce, jakmile získá zkušenosti s Pythonem.

Tento první Instructable vysvětluje, jak nastavit desku a spustit první skripty.

Krok 1: Co potřebujete, abyste mohli začít

Co potřebujete, abyste mohli začít
Co potřebujete, abyste mohli začít

Hardware:

  • Itsybitsy M4 Express (adafruit.com, Pimoroni.com)
  • kabel microUSB
  • Počítač - starý notebook to zvládne
  • Páječka
  • Pájka
  • Prkénko
  • Samičí lišta záhlaví (volitelně)

Software:

Mu redaktor

Stáhněte si editor Mu z

Nainstalujte si jej do počítače. Velmi snadné s úplnými pokyny na webu.

Krok 2: Zkontrolujte, zda je nainstalován CircuitPython

Zkontrolujte, zda je nainstalován CircuitPython
Zkontrolujte, zda je nainstalován CircuitPython

Otevřete na počítači Průzkumník souborů.

Zapojte malý konec kabelu USB do konektoru na Itsybitsy.

Druhý konec kabelu zapojte do portu USB v počítači.

Měli byste vidět nový disk s názvem CIRCUITPY. (Pokud ne; přejděte na stránku AKTUALIZACE.)

Poklepejte na boot_out a měla by se vám zobrazit tato zpráva:

Adafruit CircuitPython 3.1.1 dne 2018-11-02; Adafruit ItsyBitsy M4 Express se samd51g19

To ukazuje, že máte starší verzi CircuitPython, protože aktuálně máme verzi 4. To bude prozatím v pořádku, verzi aktualizujeme později. Adafruit často vylepšuje CircuitPython a vydává aktualizace. Tyto aktualizace se velmi snadno instalují.

Přejděte do složky dokumentů a vytvořte v ní novou složku s názvem Code-with-Mu.

Spusťte Mu Editor

Krok 3: Použití editoru Mu pro váš první program

Použití editoru Mu pro váš první program
Použití editoru Mu pro váš první program

Klikněte na ikonu Sériové číslo v horní části editoru. Tím by se mělo otevřít okno REPL ve spodní části obrazovky. V levém dolním rohu by mělo být uvedeno Adafruit. Mu poznal, že k počítači byla připojena deska CircuitPython.

Nyní můžeme napsat náš první program nebo skript. Klikněte na myš v horním okně a zadejte:

tisk („Ahoj, světe!“)

Klikněte na ikonu Uložit. Vyberte jednotku CIRCUITPY. Do pole pro název zadejte main.py a klikněte na tlačítko Uložit.

To dělá hodně. Váš skript je uložen do vaší Itsybitsy pod názvem „main.py“. Jakýkoli soubor s tímto názvem je okamžitě spuštěn deskou. Výstup z příkazu print se zobrazí ve spodním okně REPL.

Upravte řádek programu na:

vytiskněte („\ nDobrý den, kodér!“) a klikněte na ikonu Uložit.

Zkuste přidat několik podobných tiskových příkazů a spusťte nový kód.

Sledujte svoji Itsybitsey při nahrávání skriptu. Během ukládání skriptu bliká zelená DotStar ČERVENĚ a vrací se do ZELENÉ.

Udělejme chybu, abychom zjistili, co se stane. Stačí odstranit znak konečné citace a spustit skript znovu. Editor indikuje chybu a výstup označuje typ chyby - syntax - a číslo řádku - které vám pomohou chybu opravit. DotStar indikuje poruchu změnou barvy. Více o tom v pozdější části.

Opravte chybu a spusťte skript znovu.

Nyní musíme náš skript uložit na bezpečné místo, abychom jej mohli použít později.

Dvakrát klikněte na kartu nad skriptem. Přejděte do složky Code-with-Mu pro dokumenty a uložte si tam skript s užitečným názvem souboru, například FirstProg.py. Všimněte si, že v dolní části editoru bliká název souboru a cesta.

Krok 4: Váš druhý skript - mrkněte

Váš druhý skript - mrkněte
Váš druhý skript - mrkněte

Napište skript, uložte jej do CIRCUITPY jako main.py a kliknutím na Yes nahradíte předchozí main.py.

(Při ukládání do ItsyBitsy vždy používejte pro skript název souboru main.py. CircuitPython poté okamžitě spustí nový skript.)

Co skript dělá:

  • Importuje knihovny pro názvy pinů na desce, čas pro ovládání zpoždění a ovládání digitálních pinů,
  • Nastavuje pin 13 pro výstup napětí na palubní červenou LED
  • Spouští nekonečnou smyčku pro zapnutí a vypnutí LED
  • Čeká na krátká zpoždění, takže LED bliká.

Skript má spoustu komentářů, které vysvětlují, co se děje. Komentáře začínají znakem '#'. Jsou pro lidské použití, aby vám připomněly vaše tehdejší myšlení. Dobré skripty mají spoustu komentářů.

  1. Zkuste změnit hodnoty v příkazech sleep ().
  2. Nechte LED svítit dvakrát déle, než zhasne.
  3. Co se stane, když jsou zpoždění velmi krátká? (0,001 sekundy)

Poklepejte na kartu nad skriptem a uložte pod názvem Blink.py do složky Code-with-Mu.

Krok 5: Aktualizace vaší verze CircuitPython

Aktualizace vaší verze CircuitPython
Aktualizace vaší verze CircuitPython

Přejděte na https://circuitpython.org/downloads na internetu. Klikněte na obrázek Itsybitsy M4 Express (ne verze M0).

Kliknutím na fialové tlačítko stáhnete soubor. UF2.

Spusťte Průzkumník souborů a vyhledejte soubor. UF2

Připojte svůj Itsybitsy M4 Express k USB portu a vyhledejte jeho disk - CIRCUITPY

Poklepejte na malé tlačítko reset a název souboru by se měl změnit na ITSYM4BOOT z CIRCUITPY. Musíte dvakrát rychle poklepat.

Přetáhněte soubor UF2 a umístěte jej na jednotku ITSYM4BOOT. Soubor UF2 bude zkopírován na desku IBM4 a název jednotky se vrátí na CIRCUITPY.

Vyberte jednotku CIRCUITPY a dvakrát klikněte na soubor boot_out.

Můžete si přečíst číslo nové verze a zkontrolovat, zda bylo aktualizováno.

Vytvořte na disku CIRCUITPY novou složku s názvem lib. Budeme to potřebovat v pozdějších instruktážních pokynech k držení ovladačů pro senzory a displeje.

Restartujte editor Mu. Načtěte soubor main.py z IBM4 a uložte jej zpět do IBM4. Červená LED by měla začít blikat.

Pokud jednou kliknete na tlačítko reset, restartuje načtený skript main.py.

Krok 6: ODPOVĚĎ

REPL
REPL

Okno ve spodní části editoru, zapnuté a vypnuté ikonou Serial, je mnohem více než jen okno pro tisk.

"Smyčka čtení-eval-tisk (REPL), také nazývaná interaktivní nejvyšší úroveň nebo jazykový shell, je jednoduché interaktivní počítačové programovací prostředí, které přebírá vstupy jednoho uživatele (tj. Jednotlivé výrazy), vyhodnocuje je a vrací výsledek. uživateli; program napsaný v prostředí REPL se spouští po částech. " (Google)

V zásadě platí, že pokud do REPL napíšete jeden příkaz pythonu, provede se to najednou. Pojďme to zkusit.

Klikněte myší v okně REPL.

Při spuštění skriptu podržte klávesu a klepněte na (CTRL-C). Tím se váš skript zastaví.

Klepnutím na libovolnou klávesu zadejte REPL a zobrazí se výzva '>>>'.

psát v tisku (4 + 100)

Okamžitě se vrací odpověď 104

Podívejte se na obrázek a vyzkoušejte několik z vás. (Zkuste +, -, *, /, // a %)

Zkuste to:

>> deska pro import

>> dir (deska)

['_class_', 'A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'APA102_MOSI', 'APA102_SCK', 'D0', 'D1', 'D10', ' D11 ',' D12 ',' D13 ',' D2 ',' D3 ',' D4 ',' D5 ',' D7 ',' D9 ',' I2C ',' MISO ',' MOSI ',' RX ', 'SCK', 'SCL', 'SDA', 'SPI', 'TX', 'UART']

>>

Toto je seznam názvů pinů dostupných na desce IBM4

Chcete-li se vrátit k normálu měkkým restartem, zadejte CTRL-D a restartujte main.py.

Odpojování desky

Před odpojením od počítače vždy vysuňte jednotku CIRCUITPY. Nikdy jej nevytahujte, když přenáší data.

Krok 7: Nasazení nohou

Nasazení nohou
Nasazení nohou
Nasazení nohou
Nasazení nohou

Samčí záhlaví je pro desku příliš dlouhé, takže 2 z nich zacvakněte/ustřihněte na správnou délku.

Zatlačte je na prkénko, položte IBM4 nahoru a připájejte je. Ujistěte se, že deska je správná cesta nahoru! (Čip nahoře)

Nedávejte mužské záhlaví přes vrchol. V horní části používám proužek 5 ženských hlaviček, abych mohl použít všechny kolíky. Pomocí svěráku držte pás záhlaví pevně v blízkosti bodu řezu. Pomocí ostré pily nařízněte střed otvoru - mosazný konektor při řezání vypadne. Ořízněte ostří a vytvořte úhledný povrch - bez drážky..

Pájení na čepy není obtížné. Pokud jste nikdy předtím nepoužívali páječku, podívejte se na kurzy Arduino a elektronika. Schopnost pájet znamená, že můžete vytvořit úhledné dlouhotrvající verze svých projektů na pásové desce a poté znovu použít prkénko.

Abyste předešli přehřátí desky, navrhuji, abyste nepájili jednu stranu a potom druhou. Ponechte mezery a vyplňte později. tj. piny 10, RX, 2, A3, RS, BAT, 9, MI …… atd

Krok 8: Stavová kontrolka CircuitPython RGB - pomůže vám najít chyby

Stavová kontrolka CircuitPython RGB - pomůže vám najít chyby
Stavová kontrolka CircuitPython RGB - pomůže vám najít chyby

ItsyBitsy M4 Express a mnoho dalších desek M0 a M4 mají na desce jedinou LED diodu NeoPixel nebo DotStar RGB, která indikuje stav CircuitPython. Zde je mezi (C) a kolíkem A0.

Co znamenají barvy a blikání:

  • svítí ZELENĚ: běží code.py (nebo code.txt, main.py nebo main.txt)
  • pulzující ZELENÁ: code.py (atd.) skončil nebo neexistuje
  • trvale ŽLUTÁ při spuštění: (4.0.0-alpha.5 a novější) CircuitPython čeká na reset, který indikuje, že by se měl spustit v nouzovém režimu
  • pulzující ŽLUTÁ: Okruh Python je v nouzovém režimu: havaroval a restartoval se
  • trvale bílá: REPL běží
  • svítí MODRÁ: boot.py běží

Následující barvy s více záblesky označují výjimku Pythonu a poté udávají číslo řádku chyby. Barva prvního záblesku udává typ chyby:

  • ZELENÁ: Odsazení chyby
  • CYAN: SyntaxError
  • BÍLÁ: NameError
  • ORANŽOVÁ: OSError
  • PURPLE: ValueError
  • ŽLUTÁ: jiná chyba

Následují blikající indikace čísla řádku včetně hodnoty místa. BÍLÉ záblesky jsou tisíce míst, MODRÉ jsou stovky, ŽLUTÉ jsou desítky a CYAN jsou něčí místa. Například chyba na řádku 32 by třikrát blikla ŽLUTĚ a poté dvakrát CYAN. Nuly jsou označeny mimořádně dlouhou tmavou mezerou.

Počítat je docela obtížné. Při vývoji skriptu mějte vždy otevřené okno REPL a zobrazí se tam chybové zprávy v angličtině.

Krok 9: Pohled do budoucnosti - k vám

Pohled do budoucna - k vám
Pohled do budoucna - k vám

Když jsem spustil tento Instructable, očekával jsem, že to bude první ze série zkoumající CircuitPython a Physical Computing. Můj plán pro další je pokrýt základní vstup a výstup pomocí aritmetiky, LED, přepínačů, potenciometrů a vstupních příkazů. Bude také pokrývat metody smyčky a seznamy (pole).

Než to napíšu, žádám o zpětnou vazbu, abych ji mohl přizpůsobit publiku.

Rád bych věděl tyto věci:

  • Je tempo v pořádku?
  • Je detail příliš mnoho, příliš málo nebo přibližně správně?
  • Chtěli byste nějaká cvičná cvičení?

K tobě.

Doporučuje: