Cuprins:
- Pasul 1: Ce trebuie să începeți
- Pasul 2: Verificați dacă este instalat CircuitPython
- Pasul 3: Utilizarea Editorului Mu pentru primul dvs. program
- Pasul 4: Al doilea script - Clipiți
- Pasul 5: Actualizarea versiunii dvs. de CircuitPython
- Pasul 6: REPL
- Pasul 7: Punerea pe picioare
- Pasul 8: CircuitPython RGB Status Light - pentru a vă ajuta să găsiți erorile
- Pasul 9: Privind înainte - Peste tine
Video: CircuitPython cu un Itsybitsy M4 Express 1: Configurare: 9 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Sunteți nou în codificare? Utilizați doar Scratch și doriți să treceți la un limbaj textual care oferă acces ușor la calculul fizic cu LED-uri, comutatoare, afișaje și senzori? Atunci acest lucru poate fi pentru tine.
Am observat că acest site conține multe Instructabile despre codificarea cu Arduinos folosind Arduino IDE, dar foarte puține despre Python. Învăț codarea din 1968. (Pe atunci o numeam programare și foloseam FORTRAN IV cu carduri Hollerith pentru intrare!) Din acele timpuri am folosit multe limbi diferite cu studenți (de la 11 ani până la adulți), inclusiv LISP, Pascal și mulți diferite versiuni pe BASIC.
Mai recent, multe școli din Marea Britanie au început să folosească Python în lecțiile lor, pe măsură ce elevii trec de la codarea „bloc” cu Scratch sau similar cu textul declarațiilor. Python este probabil un pas mai ușor decât utilizarea Arduino IDE. Codul CircuitPython poate fi executat prin simpla salvare a codului pe placa de dezvoltare ca și cum ar fi o unitate USB. Am folosit cu succes Python pentru calcul fizic cu copii între 8 și 11 ani în Clubul de codificare al școlii primare a nepoatei mele.
Am decis să folosesc Itsafitsy M4 Express de la Adafruit pentru aceste instructabile din următoarele motive:
- Ieftin - sub 15 USD (15 GBP)
- Ușor de configurat și programat cu CircuitPython (o versiune de Python ideală pentru cei noi la codificare)
- Pinii de intrare / ieșire digitale - este foarte distractiv să joci cu Blinkies
- Pinii analogici - 12 biți ADC și DAC - precizie ridicată
- LED-uri roșii și LED-uri RGB DotStar încorporate
- Conduce Neopixeli direct
- I2C și SPI acceptate - pentru senzori și afișaje
- O gamă largă de drivere în biblioteca extinsă
- Rapid și puternic - procesor ultrarapid ATSAMD51 Cortex M4 care rulează la 120 MHz
- Multă memorie - 2 MB de memorie flash SPI pentru codul CircuitPython sau fișiere de date
- Suport excelent de la Adafruit cu documentare completă, ghiduri și un forum de ajutor pe internet
- Are nevoie doar de un laptop sau computer vechi - fără monitor dedicat, tastatură, sursă de alimentare sau mouse.
- Utilizatorul se poate converti în Arduino IDE, pe aceeași placă, odată ce a câștigat experiență cu Python.
Acest prim Instructable explică cum să vă configurați placa și să rulați primele scripturi.
Pasul 1: Ce trebuie să începeți
Hardware:
- Itsybitsy M4 Express (adafruit.com, Pimoroni.com)
- cablu microUSB
- Computer - un laptop vechi va funcționa
- Ciocan de lipit
- Solder
- Pană de pâine
- Bandă antet feminin (opțional)
Software:
Editor Mu
Descărcați editorul Mu de pe
Instalați-l pe computer. Foarte ușor, cu instrucțiuni complete pe site.
Pasul 2: Verificați dacă este instalat CircuitPython
Deschideți File Explorer pe computer.
Conectați capătul mic al cablului USB la conectorul de pe Itsybitsy.
Conectați celălalt capăt al cablului la un port USB de pe computer.
Ar trebui să vedeți o nouă unitate numită CIRCUITPY. (Dacă nu, accesați pagina UPDATE.)
Faceți dublu clic pe boot_out și ar trebui să vedeți un mesaj ca acesta:
Adafruit CircuitPython 3.1.1on 2018-11-02; Adafruit ItsyBitsy M4 Express cu samd51g19
Acest lucru arată că aveți o versiune mai veche a CircuitPython, deoarece suntem în prezent în versiunea 4. Acest lucru va fi OK pentru moment, vom actualiza versiunea mai târziu. Adafruit îmbunătățește frecvent CircuitPython și publică actualizări. Aceste actualizări sunt foarte ușor de instalat.
Navigați la folderul de documente și creați un folder nou numit Code-with-Mu în interiorul acestuia.
Porniți Editorul Mu
Pasul 3: Utilizarea Editorului Mu pentru primul dvs. program
Faceți clic pe pictograma Serial din partea de sus a editorului. Aceasta ar trebui să deschidă fereastra REPL din partea de jos a ecranului. În colțul din stânga jos ar trebui să scrie Adafruit. Mu a recunoscut că o placă CircuitPython a fost conectată la computer.
Acum putem scrie primul nostru program sau scenariu. Faceți clic cu mouse-ul în fereastra superioară și introduceți:
print („Bună ziua, lume!”)
Faceți clic pe pictograma Salvare. Selectați unitatea CIRCUITPY. Tastați main.py în caseta de titlu și faceți clic pe butonul Salvare.
Acest lucru face foarte mult. Scriptul dvs. este salvat pe Itsybitsy cu numele „main.py”. Orice fișier cu acest nume este executat imediat de către bord. Ieșirea din declarația de imprimare apare în fereastra inferioară, REPL.
Editați linia de program în:
print („\ nBună ziua, coder!”) și faceți clic pe pictograma Salvare.
Încercați să adăugați câteva declarații de tipărire similare și rulați noul cod.
Urmăriți Itsybitsey în timp ce încărcați un script. Punctul verde intermitent devine ROȘU în timp ce scriptul este salvat și revine la VERDE.
Să facem o eroare pentru a vedea ce se întâmplă. Ștergeți doar caracterul final al citatului și rulați din nou scriptul. Editorul indică eroarea, iar rezultatul indică tipul de eroare - sintaxă - și numărul liniei - pentru a vă ajuta să corectați eroarea. DotStar indică defectul prin schimbarea culorii. Mai multe despre acest lucru într-o secțiune ulterioară.
Corectați greșeala și rulați din nou scriptul.
Acum trebuie să ne salvăm scriptul undeva în siguranță, pentru a-l putea folosi mai târziu.
Faceți dublu clic pe fila de deasupra scriptului. Navigați la folderul Cod-cu-Mu al documentelor dvs. și salvați-vă scriptul acolo cu un nume de fișier util, cum ar fi FirstProg.py. Observați că numele fișierului și calea sunt afișate în partea de jos a editorului.
Pasul 4: Al doilea script - Clipiți
Tastați scriptul, salvați-l în CIRCUITPY ca main.py și faceți clic pe Da pentru a înlocui main.py anterior.
(Utilizați întotdeauna numele de fișier main.py pentru script atunci când salvați pe ItsyBitsy. CircuitPython rulează imediat noul script.)
Ce face scenariul:
- Importă biblioteci pentru numele pinilor de pe placă, timpul de control al întârzierilor și controlul pinilor digitali,
- Setează pinul 13 pentru a produce tensiuni la LED-ul roșu de la bord
- Rulează o buclă nesfârșită pentru a porni și opri LED-ul
- Așteptă întârzieri scurte, astfel încât LED-ul să clipească.
Scenariul conține o mulțime de comentarii pentru a explica ce se întâmplă. Comentariile încep cu un caracter „#”. Acestea sunt destinate uzului uman pentru a vă aduce aminte de gândirea dvs. din acel moment. Scripturile bune au o mulțime de comentarii.
- Încercați să modificați valorile din instrucțiunile sleep ().
- Păstrați LED-ul aprins de două ori mai mult decât este stins.
- Ce se întâmplă dacă întârzierile sunt foarte scurte? (0,001 secunde)
Faceți dublu clic pe fila de deasupra scriptului și salvați cu numele Blink.py în folderul Code-with-Mu.
Pasul 5: Actualizarea versiunii dvs. de CircuitPython
Navigați la https://circuitpython.org/downloads pe internet. Faceți clic pe imaginea Itsybitsy M4 Express (nu versiunea M0).
Faceți clic pe butonul violet pentru a descărca fișierul. UF2.
Porniți File Explorer și localizați fișierul. UF2
Conectați-vă Itsybitsy M4 Express la portul USB și localizați unitatea acestuia - CIRCUITPY
Faceți dublu clic pe micul buton de resetare și numele fișierului ar trebui să se schimbe în ITSYM4BOOT din CIRCUITPY. Trebuie să faceți dublu clic destul de repede.
Trageți fișierul UF2 și fixați-l pe unitatea ITSYM4BOOT. Fișierul UF2 va fi copiat pe placa IBM4 și numele unității va reveni la CIRCUITPY.
Selectați unitatea CIRCUITPY și faceți dublu clic pe fișierul boot_out.
Puteți citi noul număr de versiune pentru a verifica dacă a fost actualizat.
Creați un folder nou pe unitatea CIRCUITPY numit lib. Vom avea nevoie de acest lucru în Instructables ulterior pentru a păstra driverele pentru senzori și afișaje.
Reporniți editorul Mu. Încărcați fișierul main.py din IBM4 și salvați-l înapoi în IBM4. LED-ul roșu ar trebui să înceapă să clipească.
Dacă faceți un singur clic pe butonul de resetare, acesta va reporni scriptul main.py încărcat.
Pasul 6: REPL
Fereastra din partea de jos a editorului, pornită și oprită cu pictograma Serial, este mult mai mult decât o simplă fereastră de imprimare.
„O buclă de citire-evaluare-imprimare (REPL), denumită și shell interactiv de nivel superior sau de limbă, este un mediu de programare computerizat simplu, interactiv, care ia intrări pentru un singur utilizator (adică expresii simple), le evaluează și returnează rezultatul utilizatorului; un program scris într-un mediu REPL este executat în bucăți. (Google)
Practic, dacă scrieți o singură instrucțiune python în REPL, aceasta o execută imediat. Hai sa incercam.
Faceți clic pe mouse în fereastra REPL.
În timp ce rulați scriptul, țineți apăsată tasta și atingeți (CTRL-C). Aceasta oprește scriptul.
Atingeți orice tastă pentru a introduce REPL și apare un mesaj „>>>”.
tastați tipărit (4 + 100)
Imediat revine răspunsul 104
Uită-te la imagine și încearcă câțiva dintre voi. (Încercați +, -, *, /, // și%)
Incearca asta:
>> placa de import
>> dir (bord)
['_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”]
>>
Aceasta este o listă a numelor de pin disponibile pe placa IBM4
Pentru a reveni la normal cu o repornire ușoară, tastați CTRL-D și main.py reporniți.
Deconectarea plăcii
Scoateți întotdeauna unitatea CIRCUITPY înainte de a vă deconecta de la computer. Nu îl scoateți niciodată în timp ce transferați date.
Pasul 7: Punerea pe picioare
Anteturile masculine sunt prea lungi pentru tablă, așa că fixați / tăiați 2 dintre ele la lungimea corectă.
Împingeți-le într-o placă de sprijin, așezați IBM4 deasupra și lipiți-le. Asigurați-vă că tabla este în sus! (Chip pe partea de sus)
Nu puneți anteturi masculine deasupra. Folosesc o bandă de 5 anteturi de sex feminin în partea de sus, astfel încât să pot folosi toți pinii. Folosiți un menghin pentru a ține banda de antet ferm, aproape de punctul de tăiere. Utilizați un ferăstrău ascuțit pentru a tăia centrul unei găuri - conectorul de alamă va cădea pe măsură ce tăiați. Așezați marginea tăiată pentru a obține un finisaj îngrijit - fără șanț..
Lipirea pe știfturi nu este dificilă. Uitați-vă la cursurile de Arduino și Electronică dacă nu ați folosit niciodată un fier de lipit. A putea să lipiți înseamnă că puteți face curate versiunile de lungă durată ale proiectelor dvs. pe bandă și apoi să refolosiți panoul.
Pentru a preveni supraîncălzirea plăcii, vă sugerez să nu lipiți o parte și apoi să ridicați cealaltă. Lăsați goluri și completați mai târziu. adică pinii 10, RX, 2, A3, RS, BAT, 9, MI …… etc.
Pasul 8: CircuitPython RGB Status Light - pentru a vă ajuta să găsiți erorile
ItsyBitsy M4 Express și multe alte plăci M0 și M4 au toate un singur LED NeoPixel sau DotStar RGB pe placă care indică starea CircuitPython. Aici se află între (C) și pinul A0.
Iată ce înseamnă culorile și clipirea:
- VERDE constant: code.py (sau code.txt, main.py sau main.txt) rulează
- VERZI pulsant: code.py (etc.) a terminat sau nu există
- GALBEN constant la pornire: (4.0.0-alfa.5 și mai nou) CircuitPython așteaptă o resetare pentru a indica faptul că ar trebui să înceapă în modul sigur
- pulsând GALBEN: Circuitul Python este în modul sigur: s-a prăbușit și a repornit
- ALB stabil: REPL rulează
- ALBASTRU constant: boot.py rulează
Culorile cu mai multe blițuri următoare indică o excepție Python și apoi indică numărul de linie al erorii. Culoarea primului bliț indică tipul de eroare:
- VERZ: IndentationError
- CYAN: SyntaxError
- ALB: NameError
- ORANGE: OSError
- PURPLE: ValueError
- GALBEN: altă eroare
Acestea sunt urmate de blițuri care indică numărul liniei, inclusiv valoarea poziției. Blițurile ALB sunt locul mii, ALBASTRUL sunt locul sutelor, GALBENUL sunt locul zecilor, iar CYAN sunt locul cuiva. Deci, de exemplu, o eroare pe linia 32 ar clipi GALBEN de trei ori și apoi CYAN de două ori. Zero-urile sunt indicate printr-un spațiu întunecat extra-lung.
Acestea sunt destul de greu de numărat. Aveți întotdeauna fereastra REPL deschisă atunci când dezvoltați un script și mesajele de eroare, în limba engleză, vor apărea acolo.
Pasul 9: Privind înainte - Peste tine
Când am început acest Instructable, mă așteptam să fie primul dintr-o serie care explorează CircuitPython și Physical Computing. Planul meu pentru următoarea este de a acoperi intrarea și ieșirea de bază cu aritmetică, LED-uri, comutatoare, potențiometre și instrucțiuni de intrare. De asemenea, va acoperi metodele de buclare și listele (matrici).
Înainte să-l scriu, solicit niște feedback, astfel încât să îl pot adapta publicului.
Genul de lucruri pe care aș dori să le știu sunt:
- Ritmul este OK?
- Detaliul este prea mult, prea puțin sau nu?
- Doriți niște exerciții practice?
Este randul tau.
Recomandat:
Configurare ST Visual Development Cu compilatorul Cosmic STM8: 11 pași
Configurarea dezvoltării vizuale ST cu compilatorul Cosmic STM8: Acesta este modul în care configurez mediul de dezvoltare integrat (IDE) pentru a programa microcontrolerele STM8 de la ST Microelectronics (ST) cu Windows 10. Nu susțin că acesta este modul corect, dar funcționează bine pentru mine. În acest instructabil va arăta ca un
NodeMcu ESP8266 Prima configurare cu Arduino IDE: 10 pași
NodeMcu ESP8266 Prima configurare cu Arduino IDE: fac dispozitive controlate de Twitch; console personalizate, controlere și alte novențe! Fluxurile live sunt în fiecare miercuri și sâmbătă la ora 21:00 EST pe https://www.twitch.tv/noycebru, puncte culminante pe TikTok @noycebru și puteți viziona tutoriale pe YouT
Configurare pentru furnizorul GPS Bluetooth extern pentru dispozitive Android: 8 pași
Configurarea furnizorului extern de GPS Bluetooth pentru dispozitive Android: Această instrucțiune vă va explica cum să creați propriul GPS extern cu Bluetooth pentru telefonul dvs., aprindeți orice la doar aproximativ 10 USD. interfață Blutooth Module cu consum redus de energie Ardui
Configurare serială HC-05 prin Bluetooth: 10 pași
Configurare serială HC-05 prin Bluetooth: În timp ce foloseam dispozitive Android și module SPC Bluetooth HC-05 pentru unele proiecte Arduino, am vrut să verific și să modific ratele de transmisie HC-05 și alți parametri fără să mă conectez la un port USB al computerului. Asta s-a transformat în modulele HC-05 conectează serial și Blu
Grafică pe un ecran SSD1306 I2C OLED 128x64 cu CircuitPython folosind un Itsybitsy M4 Express: 13 pași (cu imagini)
Grafică pe un afișaj SSD1306 I2C OLED 128x64 cu CircuitPython folosind un Itsybitsy M4 Express: Afișajul OLED SSD1306 este un afișaj grafic monocrom mic (0,96 "), ieftin, disponibil pe scară largă, I2C, cu 128x64 pixeli, care este ușor de interfațat (doar 4 fire) pe plăci de dezvoltare microprocesor precum Raspberry Pi, Arduino sau