Taula de continguts:
- Pas 1: què necessiteu per començar
- Pas 2: comproveu que CircuitPython estigui instal·lat
- Pas 3: Utilitzeu l'editor Mu per al vostre primer programa
- Pas 4: el vostre segon guió: parpelleja
- Pas 5: actualització de la vostra versió de CircuitPython
- Pas 6: el REPL
- Pas 7: Posar-se les cames
- Pas 8: llum d'estat de CircuitPython RGB: per ajudar-vos a trobar els errors
- Pas 9: Mirar cap endavant: cap a vosaltres
Vídeo: CircuitPython amb un Itsybitsy M4 Express 1: configuració: 9 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Ets nou en codificació? Només s’utilitza Scratch i voleu passar a un llenguatge textual que faciliti l’accés a la informàtica física amb LEDs, commutadors, pantalles i sensors? Aleshores això pot ser per a vosaltres.
He observat que aquest lloc conté moltes instruccions sobre la codificació amb Arduinos mitjançant l'IDE Arduino, però molt poques sobre Python. He estat ensenyant codificació des del 1968. (Aleshores en dèiem programació i utilitzàvem les entrades FORTRAN IV amb targetes Hollerith!) Des d’aquells primers dies he utilitzat molts idiomes diferents amb estudiants (d’entre 11 anys i adults), inclosos LISP, Pascal i molts diferents versions a BASIC.
Més recentment, moltes escoles del Regne Unit han començat a utilitzar Python a les seves lliçons a mesura que els estudiants passen de la codificació 'bloqueja' amb Scratch o similar a declaracions de text. Python és probablement un pas més fàcil que utilitzar l'IDE Arduino. El codi CircuitPython es pot executar simplement desant el codi a la placa de desenvolupament com si fos una unitat USB. He utilitzat Python amb èxit per a la informàtica física amb nens de 8 a 11 anys al Club de Codificació de l'escola primària de la meva néta.
He decidit utilitzar Itsybitsy M4 Express d'Adafruit per a aquests instruccions pels motius següents:
- Barat: menys de 15 dòlars (15 lliures esterlines)
- Fàcil de configurar i programar amb CircuitPython (una versió de Python ideal per a aquells que són nous a la codificació)
- Pins d'entrada / sortida digitals: és molt divertit jugar amb Blinkies
- Pins analògics - ADC i DAC de 12 bits - alta precisió
- LED vermells i LED DotStar RGB incorporats
- Condueix directament Neopixels
- Compatible amb I2C i SPI: per a sensors i pantalles
- Àmplia gamma de controladors a l’extensa biblioteca
- Ràpid i potent: processador ATSAMD51 Cortex M4 ultra ràpid que funciona a 120 MHz
- Molt memòria: 2 MB de memòria flash SPI per a fitxers de codi o dades de CircuitPython
- Gran suport d'Adafruit amb documentació completa, guies i un fòrum d'ajuda a Internet
- Només necessita un ordinador portàtil o un ordinador vells: no hi ha cap monitor, teclat, font d'alimentació o ratolí dedicats.
- L'usuari pot convertir a Arduino IDE, al mateix tauler, un cop hagi experimentat amb Python.
Aquest primer instructable explica com configurar el tauler i executar els primers scripts.
Pas 1: què necessiteu per començar
Maquinari:
- Itsybitsy M4 Express (adafruit.com, Pimoroni.com)
- cable microUSB
- Ordinador: farà un portàtil antic
- Soldador
- Soldar
- Taula de pa
- Franja de capçalera femenina (opcional)
Programari:
Editor de Mu
Descarregueu l'editor Mu des de
Instal·leu-lo al vostre ordinador. Molt fàcil amb instruccions completes al lloc.
Pas 2: comproveu que CircuitPython estigui instal·lat
Obriu l'Explorador de fitxers a l'ordinador.
Connecteu l'extrem petit del cable USB al connector de la màquina Itsybitsy.
Connecteu l’altre extrem del cable a un port USB de l’ordinador.
Hauríeu de veure com apareix una nova unitat anomenada CIRCUITPY. (Si no és així, aneu a la pàgina ACTUALITZACIÓ).
Feu doble clic a boot_out i hauríeu de veure un missatge com aquest:
Adafruit CircuitPython 3.1.1 el 02-11-2018; Adafruit ItsyBitsy M4 Express amb samd51g19
Això demostra que teniu una versió anterior de CircuitPython, ja que actualment estem a la versió 4. Això estarà bé per ara, actualitzarem la versió més endavant. Adafruit millora freqüentment CircuitPython i publica actualitzacions. Aquestes actualitzacions són molt fàcils d’instal·lar.
Aneu a la carpeta de documents i creeu una carpeta nova anomenada Code-with-Mu.
Inicieu l'editor Mu
Pas 3: Utilitzeu l'editor Mu per al vostre primer programa
Feu clic a la icona de sèrie a la part superior de l'editor. Això hauria d'obrir la finestra REPL a la part inferior de la pantalla. A l'extrem inferior esquerre hauria de dir Adafruit. Mu ha reconegut que una placa CircuitPython s'ha connectat a l'ordinador.
Ara podem escriure el nostre primer programa o guió. Feu clic amb el ratolí a la finestra superior i escriviu:
print ("Hola, món!")
Feu clic a la icona Desa. Seleccioneu la unitat CIRCUITPY. Escriviu main.py al quadre del títol i feu clic al botó Desa.
Això fa molt. El vostre script es desa al vostre Itsybitsy amb el nom "main.py". Qualsevol fitxer amb aquest nom és executat immediatament per la junta. La sortida de la declaració d'impressió apareix a la finestra inferior REPL.
Editeu la línia del programa per:
imprimeix ("\ nHola, codificador!") i fes clic a la icona Desa.
Proveu d'afegir algunes declaracions d'impressió similars i executeu el vostre nou codi.
Mireu la vostra Itsybitsey mentre pengeu un script. El DotStar de color verd intermitent es posa VERMELL mentre es guarda l’escriptura i torna a VERD.
Cometem un error per veure què passa. Només heu de suprimir el caràcter de pressupost final i tornar a executar l'script. L'editor indica l'error i la sortida indica el tipus d'error (sintaxi) i el número de línia que us ajudaran a corregir l'error. El DotStar indica la falla canviant de color. Més informació sobre això en una secció posterior.
Corregiu l'error i torneu a executar l'script.
Ara hem de desar el nostre script en un lloc segur perquè el puguem utilitzar més endavant.
Feu doble clic a la pestanya que hi ha a sobre de l'script. Aneu a la carpeta Code-with-Mu dels vostres documents i deseu-hi el script amb un nom de fitxer útil com FirstProg.py. Fixeu-vos que el nom i el camí del fitxer apareixen a la part inferior de l'editor.
Pas 4: el vostre segon guió: parpelleja
Escriviu l'script, deseu-lo a CIRCUITPY com a main.py i feu clic a Sí per substituir el main.py anterior.
(Utilitzeu sempre el nom de fitxer main.py per al vostre script quan el deseu al ItsyBitsy. CircuitPython executarà immediatament el nou script.)
Què fa el guió:
- Importa biblioteques per als noms dels pins al tauler, temps per controlar els retards i control dels pins digitals,
- Configura el pin 13 per generar tensions al LED vermell de la placa
- Executa un bucle sense fi per encendre i apagar el LED
- Espera per retards breus perquè el LED parpellegi.
El guió conté molts comentaris per explicar què passa. Els comentaris comencen amb un caràcter "#". Són per a ús humà per ajudar-vos a recordar el vostre pensament en aquell moment. Els bons guions tenen molts comentaris.
- Proveu de canviar els valors de les instruccions sleep ().
- Mantingueu el LED encès el doble de temps que estigui apagat.
- Què passa si els retards són molt curts? (0,001 segons)
Feu doble clic a la pestanya que hi ha a sobre del vostre script i deseu-lo amb el nom Blink.py a la carpeta Code-with-Mu.
Pas 5: actualització de la vostra versió de CircuitPython
Aneu a https://circuitpython.org/downloads a Internet. Feu clic a la imatge del Itsybitsy M4 Express (no la versió M0).
Feu clic al botó morat per descarregar el fitxer. UF2.
Inicieu l'Explorador de fitxers i localitzeu el fitxer. UF2
Connecteu el vostre Itsybitsy M4 Express al port USB i localitzeu la seva unitat: CIRCUITPY
Feu doble clic al botó de restabliment i el nom del fitxer hauria de canviar a ITSYM4BOOT de CIRCUITPY. Cal fer doble clic amb força rapidesa.
Arrossegueu el fitxer UF2 i deixeu-lo anar a la unitat ITSYM4BOOT. El fitxer UF2 es copiarà a la placa IBM4 i el nom de la unitat tornarà a CIRCUITPY.
Seleccioneu la unitat CIRCUITPY i feu doble clic al fitxer boot_out.
Podeu llegir el número de versió nova per comprovar que s’hagi actualitzat.
Feu una nova carpeta a la unitat CIRCUITPY anomenada lib. Ho necessitarem en instruccions posteriors per contenir els controladors de sensors i pantalles.
Reinicieu l'editor Mu. Carregueu el fitxer main.py des de l'IBM4 i deseu-lo de nou a l'IBM4. El LED vermell hauria de començar a parpellejar.
Si feu un sol clic al botó de reinici, reiniciarà l'script main.py carregat.
Pas 6: el REPL
La finestra de la part inferior de l’editor, activada i desactivada amb la icona de sèrie, és molt més que una simple finestra d’impressió.
"Un bucle de lectura-avaluació-impressió (REPL), també anomenat shell interactiu de nivell superior o de llenguatge, és un entorn de programació informàtic senzill i interactiu que pren entrades d'un sol usuari (és a dir, expressions individuals), les avalua i retorna el resultat a l'usuari; un programa escrit en un entorn REPL s'executa a trossos. " (Google)
Bàsicament, si escriviu una única sentència python al REPL, l'executarà alhora. Provem-ho.
Feu clic amb el ratolí a la finestra REPL.
Mentre executeu l'script, manteniu premuda la tecla i toqueu (CTRL-C). Això atura el vostre guió.
Toqueu qualsevol tecla per entrar a REPL i apareixerà un missatge ">>>".
escriu a la impressió (4 + 100)
Immediatament torna la resposta 104
Mireu la imatge i proveu-ne alguns. (Proveu +, -, *, /, // i%)
Prova això:
>> tauler d’importació
>> dir (tauler)
['_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"]
>>
Aquesta és una llista dels noms dels pins disponibles a la placa IBM4
Per tornar a la normalitat amb un reinici suau, escriviu CTRL-D i main.py reinicia.
Desconnectant el tauler
Expulseu sempre la unitat CIRCUITPY abans de desconnectar de l'ordinador. No la traieu mai mentre transfereix dades.
Pas 7: Posar-se les cames
Les capçaleres masculines són massa llargues per al tauler, de manera que en retireu / retalleu 2 a la longitud correcta.
Introduïu-los en una tauleta de suport, col·loqueu l'IBM4 a la part superior i soldeu-los. Assegureu-vos que el tauler sigui el camí correcte. (Xip a la part superior)
No col·loqueu capçaleres masculines a la part superior. Faig servir una tira de 5 capçaleres femenines a la part superior per poder utilitzar tots els pins. Utilitzeu un vici per mantenir fermament la tira de capçalera, a prop del punt de tall. Utilitzeu una serra de tall afilada per reduir el centre d’un forat; el connector de llautó caurà a mesura que talleu. Arxiveu la vora tallada per obtenir un acabat net, sense solc..
Soldar als passadors no és difícil. Mireu els cursos d’Arduino i Electrònica si mai no heu utilitzat un soldador. El fet de poder soldar significa que podeu fer versions de llarga durada dels vostres projectes sobre taulers i tornar a utilitzar la tauleta.
Per ajudar a evitar que el tauler es sobreescalfi, us suggereixo que no soldeu cap a un costat i després cap a l'altre. Deixeu els buits i empleneu més tard. és a dir, els pins 10, RX, 2, A3, RS, BAT, 9, MI … etc.
Pas 8: llum d'estat de CircuitPython RGB: per ajudar-vos a trobar els errors
ItsyBitsy M4 Express i moltes altres plaques M0 i M4 tenen un sol LED NeoPixel o DotStar RGB a la placa que indica l’estat de CircuitPython. Aquí es troba entre el (C) i el pin A0.
Això és el que signifiquen els colors i el parpelleig:
- VERD constant: code.py (o code.txt, main.py o main.txt) s'està executant
- VERD pulsant: code.py (etc.) ha finalitzat o no existeix
- GROC constant a l’inici: (4.0.0-alpha.5 i versions posteriors) CircuitPython espera un restabliment per indicar que hauria d’iniciar-se en mode segur
- groc palpitant: el circuit Python està en mode segur: es va bloquejar i es va reiniciar
- BLANC fix: REPL s'està executant
- BLAU fix: s’està executant boot.py
Els colors amb diversos flaixos següents indiquen una excepció de Python i després indiquen el número de línia de l'error. El color del primer flaix indica el tipus d'error:
- VERD: sagnatError
- CIAN: SyntaxError
- BLANC: Error de nom
- TARONJA: OSError
- PURPURA: ValueError
- GROC: altre error
Aquests són seguits de flaixos que indiquen el número de línia, inclòs el valor de lloc. Els flaixos blancs són els milers, el BLAU són els centenars, el GROC és el lloc de les desenes i el CIAN és el lloc d’un. Així, per exemple, un error a la línia 32 parpellejaria GROC tres vegades i després CYAN dues vegades. Els zeros s’indiquen amb un buit fosc molt llarg.
Són difícils de comptar. Tingueu sempre oberta la finestra REPL quan desenvolupeu un script i els missatges d’error, en anglès, hi apareixeran.
Pas 9: Mirar cap endavant: cap a vosaltres
Quan vaig començar aquest Instructable, esperava que fos el primer d’una sèrie que explorava CircuitPython i Physical Computing. El meu pla per al següent és cobrir les entrades i sortides bàsiques amb aritmètica, LED, commutadors, potenciòmetres i sentències d’entrada. També cobrirà mètodes de bucle i llistes (matrius).
Abans d’escriure-ho, demano algun comentari perquè pugui adaptar-lo al públic.
El tipus de coses que voldria saber són:
- El ritme està bé?
- El detall és massa, massa poc o és correcte?
- Voleu exercicis pràctics?
A vosaltres.
Recomanat:
Configuració del desenvolupament visual ST amb el compilador Cosmic STM8: 11 passos
Configuració del desenvolupament visual ST amb el compilador Cosmic STM8: Així configuro l'entorn de desenvolupament integrat (IDE) per programar microcontroladors STM8 de ST Microelectronics (ST) amb Windows 10. No afirmo que sigui la manera correcta, però funciona bé per a mi. En aquest instructiu es veurà com
Gràfic de barres de doble color amb CircuitPython: 5 passos (amb imatges)
Gràfic de barres de doble color amb CircuitPython: Vaig veure aquest gràfic de barres LED al lloc de Pimoroni i vaig pensar que podria ser un projecte econòmic i divertit mentre es realitzava un bloqueig covid-19. Conté 24 LED, un vermell i un verd, a cadascun dels seus 12 segments, de manera que en teoria hauríeu de poder mostrar r
Fermall de vidre de quars amb detecció de so i música amb pati de circuit Express Circuit: 8 passos (amb imatges)
Fermall de cristall de quars amb detecció de so i música amb parc infantil Circuit Express: aquest fermall reactiu al so es fa mitjançant un circuit de pati express, cristalls de quars a granel barats, filferro, cartró, plàstic trobat, un passador de seguretat, agulla i fil, cola calenta, tela, i diverses eines. Aquest és un prototip, o primer esborrany, d'aquest
Gràfics en una pantalla OLED 128x64 SSD1306 I2C amb CircuitPython mitjançant un Itsybitsy M4 Express: 13 passos (amb imatges)
Gràfics en una pantalla OLED 128x64 SSD1306 I2C amb CircuitPython mitjançant un Itsybitsy M4 Express: la pantalla OLED SSD1306 és una pantalla gràfica monocroma I2C, econòmica, àmpliament disponible, de 0,96 ", amb 128x64 píxels, que és fàcilment interfaçable (només 4 cables) a plaques de desenvolupament de microprocessadors com ara un Raspberry Pi, Arduino o
Temporitzador NE555 - Configuració del temporitzador NE555 en una configuració Astable: 7 passos
Temporitzador NE555 | Configuració del temporitzador NE555 en una configuració astable: el temporitzador NE555 és un dels circuits integrats més utilitzats al món de l’electrònica. Té la forma de DIP 8, és a dir, que inclou 8 pins