Përmbajtje:

CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi: 9 hapa
CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi: 9 hapa

Video: CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi: 9 hapa

Video: CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi: 9 hapa
Video: The power of vulnerability | Brené Brown | TED 2024, Nëntor
Anonim
CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi
CircuitPython Me një Itsybitsy M4 Express 1: Konfigurimi

I ri në kodim? Përdorni vetëm Scratch dhe doni të kaloni në një gjuhë tekstuale e cila ju jep qasje të lehtë në llogaritjen fizike me LED, çelsin, ekranet dhe sensorët? Atëherë kjo mund të jetë për ju.

Kam vënë re se kjo faqe përmban shumë udhëzime për kodimin me Arduinos duke përdorur Arduino IDE, por shumë pak për Python. Unë kam mësuar kodim që nga viti 1968. (Atëherë ne e quanim programim dhe përdornim FORTRAN IV me karta Hollerith për hyrje!) Që nga ato ditë të hershme kam përdorur shumë gjuhë të ndryshme me studentë (11 vjeç deri në të rritur) përfshirë LISP, Pascal dhe shumë versione të ndryshme në BASIC.

Kohët e fundit shumë shkolla në Mbretërinë e Bashkuar kanë filluar të përdorin Python në mësimet e tyre pasi nxënësit bëjnë lëvizjen nga kodimi 'bllok' me Scratch ose deklarata të ngjashme me tekst. Python është ndoshta një hap më i lehtë sesa përdorimi i Arduino IDE. Kodi CircuitPython mund të ekzekutohet thjesht duke e ruajtur kodin në bordin e zhvillimit sikur të ishte një makinë USB. Unë kam përdorur me sukses Python për Llogaritjen Fizike me 8 deri në 11 vjeç në Klubin e Kodimit të shkollës fillore të mbesës.

Kam vendosur të përdor Itsybitsy M4 Express të Adafruit për këto udhëzime për arsyet e mëposhtme:

  • I lirë - nën 15 dollarë (15 £)
  • Lehtë për tu vendosur dhe programuar me CircuitPython (një version i Python ideal për ata që janë të rinj në kodim)
  • Kunjat dixhitale të hyrjes/daljes - është kënaqësi e madhe të luash me Blinkies
  • Kunjat analoge - 12 bit ADC dhe DAC - saktësi e lartë
  • LED të kuq dhe LED RGB DotStar të integruar
  • Drejton neopixel direkt
  • I2C dhe SPI të mbështetura - për sensorë dhe ekrane
  • Gamë e gjerë drejtuesish në bibliotekën e gjerë
  • I shpejtë dhe i fuqishëm - procesor ultra i shpejtë ATSAMD51 Cortex M4 që funksionon në 120 MHz
  • Shumë memorie - 2 MB MB memorie Flash SPI për kodin CircuitPython ose skedarët e të dhënave
  • Mbështetje e madhe nga Adafruit me dokumentim të plotë, udhëzues dhe një forum ndihme në internet
  • Duhet vetëm një laptop ose kompjuter i vjetër - pa monitor të dedikuar, tastierë, furnizim me energji ose miun.
  • Përdoruesi mund të konvertohet në Arduino IDE, në të njëjtën tabelë, pasi të kenë fituar përvojë me Python.

Ky udhëzues i parë shpjegon se si të vendosni tabelën tuaj dhe të ekzekutoni skriptet tuaja të para.

Hapi 1: Çfarë ju nevojitet për të filluar

Çfarë ju nevojitet për të filluar
Çfarë ju nevojitet për të filluar

Hardware:

  • Itsybitsy M4 Express (adafruit.com, Pimoroni.com)
  • kabllo microUSB
  • Kompjuter - një laptop i vjetër do të bëjë
  • Makine per ngjitjen e metalit
  • Saldator
  • Breadboard
  • Shiriti i kokës për femra (Opsionale)

Softuer:

Mu Redaktor

Shkarkoni redaktorin Mu nga

Instaloni atë në kompjuterin tuaj. Shumë e lehtë me udhëzime të plota në faqe.

Hapi 2: Kontrolloni që CircuitPython është instaluar

Kontrolloni që CircuitPython është instaluar
Kontrolloni që CircuitPython është instaluar

Hapni File Explorer në kompjuterin tuaj.

Lidheni skajin e vogël të kabllit USB në lidhësin në Itsybitsy.

Lidhni skajin tjetër të kabllit në një port USB në kompjuterin tuaj.

Duhet të shihni që shfaqet një makinë e re e quajtur CIRCUITPY. (Nëse jo; atëherë shkoni në faqen UPDATE.)

Klikoni dy herë boot_out dhe duhet të shihni një mesazh si ky:

Adafruit CircuitPython 3.1.1në 2018-11-02; Adafruit ItsyBitsy M4 Express me samd51g19

Kjo tregon se ju keni versionin më të vjetër të CircuitPython pasi ne jemi aktualisht në versionin 4. Kjo do të jetë në rregull tani, ne do ta përditësojmë versionin më vonë. Adafruit shpesh përmirëson CircuitPython dhe publikon përditësime. Këto përditësime janë shumë të lehta për tu instaluar.

Shkoni te dosja juaj e dokumenteve dhe krijoni një dosje të re të quajtur Code-with-Mu brenda saj.

Nisni Redaktorin Mu

Hapi 3: Përdorimi i Editorit Mu për Programin tuaj të Parë

Përdorimi i redaktorit Mu për programin tuaj të parë
Përdorimi i redaktorit Mu për programin tuaj të parë

Klikoni ikonën Serial në krye të redaktorit. Kjo duhet të hapë dritaren REPL në fund të ekranit. Në këndin e poshtëm të majtë duhet të thotë Adafruit. Mu ka pranuar që një bord CircuitPython është lidhur me kompjuterin.

Tani mund të shkruajmë programin ose skenarin tonë të parë. Klikoni miun në dritaren e sipërme dhe shkruani:

print ("Përshëndetje, Botë!")

Klikoni në ikonën Ruaj. Zgjidhni diskun CIRCUITPY. Shkruani main.py në kutinë e titullit dhe klikoni në butonin Ruaj.

Kjo bën shumë. Skenari juaj ruhet në Itsybitsy tuaj me emrin "main.py". Çdo skedar me këtë emër ekzekutohet menjëherë nga bordi. Dalja nga deklarata e printimit shfaqet në dritaren e poshtme, REPL.

Ndryshoni linjën e programit në:

printoni ("\ nPërshëndetje, kodues!") dhe klikoni në ikonën Ruaj.

Provoni të shtoni disa deklarata të ngjashme printimi dhe ekzekutoni kodin tuaj të ri.

Shikoni Itsybitsey tuaj ndërsa ngarkoni një skenar. DotStar i gjelbër që ndizet shkon në KUQ ndërsa skenari ruhet dhe kthehet në GREEN.

Le të bëjmë një gabim për të parë se çfarë ndodh. Thjesht fshini karakterin përfundimtar të kuotës dhe ekzekutoni përsëri skenarin. Redaktori tregon gabimin dhe dalja tregon llojin e gabimit - sintaksën - dhe numrin e linjës - për t'ju ndihmuar të korrigjoni gabimin. DotStar tregon defektin duke ndryshuar ngjyrën. Më shumë për këtë në një seksion të mëvonshëm.

Korrigjoni gabimin dhe ekzekutoni përsëri skenarin.

Tani duhet të ruajmë skriptin tonë diku të sigurt, në mënyrë që ta përdorim më vonë.

Klikoni dy herë në skedën mbi skriptin tuaj. Shkoni te dosja juaj e dokumenteve Code-with-Mu dhe ruani skriptin tuaj atje me një emër skedari të dobishëm siç është FirstProg.py. Vini re se emri i skedarit dhe shtegu shfaqen në fund të redaktorit.

Hapi 4: Skenari juaj i dytë - Blink

Skenari juaj i dytë - Blink
Skenari juaj i dytë - Blink

Shkruani skriptin, ruajeni atë në CIRCUITPY si main.py dhe klikoni Po për të zëvendësuar main.py të mëparshëm.

(Përdorni gjithmonë emrin e skedarit main.py për skriptin tuaj kur e ruani në ItsyBitsy tuaj. CircuitPython pastaj drejton menjëherë skriptin e ri.)

Çfarë bën skenari:

  • Importon biblioteka për emrat e kunjave në tabelë, koha për të kontrolluar vonesat dhe kontrollin dixhital të kunjave,
  • Vendos pinin 13 për të nxjerrë tensione në LED të kuq në bord
  • Drejton një lak të pafund për të ndezur dhe fikur LED -in
  • Prit për vonesa të shkurtra në mënyrë që LED të ndizet.

Skenari ka shumë komente për të shpjeguar se çfarë po ndodh. Komentet fillojnë me një karakter "#". Ato janë për përdorim njerëzor për t'ju ndihmuar të kujtoni mendimet tuaja në atë kohë. Skenaret e mira kanë shumë komente.

  1. Provoni të ndryshoni vlerat në deklaratat e gjumit ().
  2. Mbani LED ndezur për dy herë më shumë sesa është fikur.
  3. Çfarë ndodh nëse vonesat janë shumë të shkurtra? (0.001 sekonda)

Klikoni dy herë skedën sipër skriptit tuaj dhe ruani me emrin Blink.py në dosjen tuaj Code-with-Mu.

Hapi 5: Përditësimi i Versionit tuaj të CircuitPython

Përditësimi i Versionit tuaj të CircuitPython
Përditësimi i Versionit tuaj të CircuitPython

Shkoni te https://circuitpython.org/downloads në internet. Klikoni në foton e Itsybitsy M4 Express (Jo versioni M0).

Klikoni në butonin e purpurt për të shkarkuar skedarin. UF2.

Filloni File Explorer dhe gjeni skedarin. UF2

Lidhni Itsybitsy M4 Express tuaj me portën USB dhe gjeni disqet e tij - CIRCUITPY

Klikoni dy herë butonin e rivendosjes së vogël dhe emri i skedarit duhet të ndryshojë në ITSYM4BOOT nga CIRCUITPY. Ju duhet të klikoni dy herë mjaft shpejt.

Tërhiqeni skedarin UF2 dhe lëshojeni në diskun ITSYM4BOOT. Skedari UF2 do të kopjohet në tabelën IBM4 dhe emri i diskut do të kthehet në CIRCUITPY.

Zgjidhni diskun CIRCUITPY dhe klikoni dy herë skedarin boot_out.

Ju mund të lexoni numrin e versionit të ri për të kontrolluar që ai është përditësuar.

Krijoni një dosje të re në diskun CIRCUITPY të quajtur lib. Kjo do të na duhet në Instructables të mëvonshëm për të mbajtur drejtuesit për sensorët dhe ekranet.

Rinisni redaktorin Mu. Ngarko skedarin tuaj main.py nga IBM4 dhe ruajeni përsëri në IBM4. LED i kuq duhet të fillojë të pulsojë.

Nëse klikoni një herë butonin e rivendosjes do të rinisë skriptin e ngarkuar main.py.

Hapi 6: REPL

REPL -ja
REPL -ja

Dritarja në fund të redaktorit, e ndezur dhe fikur me ikonën Serial, është shumë më tepër sesa thjesht një dritare printimi.

"Një lak i lexueshëm-eval-print (REPL), i quajtur gjithashtu një nivel ndërveprues i nivelit të lartë ose gjuhë, është një mjedis i thjeshtë, ndërveprues i programimit kompjuterik që merr hyrje të përdoruesve të vetëm (p.sh., shprehje të vetme), i vlerëson ato dhe kthen rezultatin për përdoruesin; një program i shkruar në një mjedis REPL ekzekutohet copë -copë. " (Google)

Në thelb, nëse shkruani një deklaratë të vetme python në REPL, ai e ekzekuton atë menjëherë. Le ta provojmë.

Klikoni miun në dritaren REPL.

Ndërsa ekzekutoni skriptin tuaj, mbani tastin dhe trokitni lehtë mbi (CTRL-C). Kjo ndalon skenarin tuaj.

Prekni çdo çelës për të hyrë në REPL dhe shfaqet një kërkesë '>>>'.

shtypni në shtyp (4 + 100)

Menjëherë kthehet përgjigja 104

Shikoni foton dhe provoni disa prej jush. (Provoni +, -, *, /, // dhe %)

Provoni këtë:

>> bordi i importit

>> 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']

>>

Kjo është një listë e emrave të kunjave të disponueshëm në tabelën IBM4

Për t'u kthyer në normale me një rindezje të butë, thjesht shtypni CTRL-D dhe riniset main.py.

Shkëputja e bordit tuaj

Gjithmonë nxirrni diskun CIRCUITPY para se të shkëputeni nga kompjuteri. Asnjëherë mos e tërhiqni ndërsa transferon të dhëna.

Hapi 7: Vendosja në këmbë

Duke vënë në Këmbë
Duke vënë në Këmbë
Duke vënë në Këmbë
Duke vënë në Këmbë

Kokat e meshkujve janë shumë të gjata për tabelën, kështu që kapni/prerë 2 prej tyre në gjatësinë e duhur.

Shtyjini ato në një pjatë, vendosni IBM4 në majë dhe lidhini ato. Sigurohuni që tabela është rruga e duhur lart! (Chip në krye)

Mos vendosni tituj meshkuj sipër. Unë përdor një shirit prej 5 titujsh femra në pjesën e sipërme në mënyrë që të mund të përdor të gjitha kunjat. Përdorni një ves për ta mbajtur shiritin e kokës fort, afër pikës së prerjes. Përdorni një sharrë metalike të mprehtë për të prerë qendrën e një vrimë - lidhësi prej bronzi do të bjerë ndërsa priteni. Paraqitni skajin e prerë për të bërë një përfundim të pastër - pa zakon..

Bashkimi në kunjat nuk është i vështirë. Shikoni kurset Arduino dhe Elektronikë nëse nuk keni përdorur kurrë një hekur bashkues më parë. Të jesh në gjendje të bashkosh do të thotë që mund të krijosh versione afatgjata të projekteve të tua në tabelë me shirita dhe më pas të ripërdorni dërrasën e bukës.

Për të parandaluar mbinxehjen e bordit, ju sugjeroj që të mos ngjiteni në njërën anë dhe pastaj në anën tjetër. Lini boshllëqet dhe plotësoni më vonë. dmth kunjat 10, RX, 2, A3, RS, BAT, 9, MI …… etj

Hapi 8: CircuitPython RGB Status Light - për t'ju ndihmuar të gjeni gabimet

CircuitPython RGB Status Light - për t'ju ndihmuar të gjeni gabimet
CircuitPython RGB Status Light - për t'ju ndihmuar të gjeni gabimet

ItsyBitsy M4 Express, dhe shumë borde të tjera M0 dhe M4 të gjithë kanë një LED të vetëm NeoPixel ose DotStar RGB në tabelë që tregon statusin e CircuitPython. Këtu është midis (C) dhe pinit A0.

Ja çfarë nënkuptojnë ngjyrat dhe pulsimi:

  • e qëndrueshme GREEN: code.py (ose code.txt, main.py, ose main.txt) po funksionon
  • pulson GREEN: code.py (etj.) ka përfunduar ose nuk ekziston
  • i verdhë i qëndrueshëm gjatë fillimit: (4.0.0-alfa.5 dhe më i ri) CircuitPython është duke pritur për një rivendosje për të treguar se duhet të fillojë në mënyrë të sigurt
  • pulson YELLOW: Circuit Python është në gjendje të sigurt: u rrëzua dhe u rifillua
  • qëndrueshme BARDH: REPL po funksionon
  • i qëndrueshëm BLUE: boot.py po funksionon

Ngjyrat me ndezje të shumta më poshtë tregojnë një përjashtim Python dhe më pas tregojnë numrin e linjës së gabimit. Ngjyra e blicit të parë tregon llojin e gabimit:

  • GREEN: IndentationError
  • CYAN: SyntaxError
  • E BARDH: Emri Gabim
  • Portokalli: OSError
  • Purple: ValueError
  • E verdhë: gabim tjetër

Këto ndiqen nga ndezjet që tregojnë numrin e linjës, përfshirë vlerën e vendit. Bardhëzat e Bardhë janë mijëra, BLUE janë qindra, E Verdha janë dhjetëra dhe CYAN janë vendi i dikujt. Kështu, për shembull, një gabim në linjën 32 do të ndizet YELLOW tri herë dhe pastaj CYAN dy herë. Zerot tregohen nga një hendek ekstra i gjatë i errët.

Këto janë mjaft të vështira për t'u numëruar. Gjithmonë keni dritaren REPL të hapur kur zhvilloni një skript dhe mesazhet e gabimit, në anglisht, do të shfaqen atje.

Hapi 9: Të shikosh përpara - te Ti

Duke parë përpara - Për Ty
Duke parë përpara - Për Ty

Kur fillova këtë Instructable prita që të ishte i pari i një serie që eksploronte CircuitPython dhe Physical Computing. Plani im për të ardhmen është të mbuloj hyrjen dhe daljen bazë me aritmetikë, LED, çelsin, potenciometrat dhe deklaratat hyrëse. Ai gjithashtu do të mbulojë metodat dhe listat (vargjet).

Para se ta shkruaj po kërkoj disa reagime, në mënyrë që ta përshtatem me audiencën.

Gjërat që do të doja të dija janë:

  • A është ritmi në rregull?
  • A është detaji shumë, shumë pak apo ka të drejtë?
  • Dëshironi disa ushtrime praktike?

Mbi ty.

Recommended: