Taula de continguts:

Programa MicroPython: mostra la mida del cercle: 9 passos
Programa MicroPython: mostra la mida del cercle: 9 passos

Vídeo: Programa MicroPython: mostra la mida del cercle: 9 passos

Vídeo: Programa MicroPython: mostra la mida del cercle: 9 passos
Vídeo: Webinar Macnica - Novas soluções de MCU ARM M0/M4/M23 - Eng. Gustavo Leão 2024, Juliol
Anonim

Aquest experiment utilitza el mòdul MakePython ESP8266, que ens permet aprendre la programació de MicroPython a ESP8266. L'experiment va controlar la mida del cercle a la pantalla girant el potenciòmetre. En el procés, coneixerem l’ús de l’ADC, la pantalla OLED SSD1306 i l’IDE uPyCraft.

Pas 1: Quant a ADC i I2C

Quant a ADC i I2C
Quant a ADC i I2C

ADC: ADC és un convertidor analògic / digital que converteix els senyals analògics en digitals. Al LED frontal de control encès, PWM a dins, sabem la diferència entre el senyal digital i el senyal analògic. Els senyals que fem servir a la vida quotidiana, com ara la intensitat de la llum, les ones sonores i els voltatges de la bateria, són valors analògics. Si volem mesurar el senyal analògic (voltatge, intensitat de llum, ona de so) a través del microordinador d’un sol xip i expressar-lo mitjançant un senyal digital, necessitem un convertidor de senyal digital analògic ADC

Comunicació I2C: I2C s’utilitza àmpliament per comunicar-se amb controladors amb components integrats, com ara sensors / pantalles. La transmissió de dades només es pot completar mitjançant dues línies de senyal, respectivament la línia de rellotge SCL i la línia de senyal SDA. Només hi ha un dispositiu principal Mestre i diversos dispositius esclaus a la línia I2C. Per tal d'assegurar-se que els dos busos es troben a un nivell alt quan estan inactius, cal connectar SDA i SCL amb la resistència de tracció. El valor clàssic de la resistència de tracció és de 10K.

Pas 2: subministraments

Subministraments
Subministraments

Maquinari:

  • MakePython ESP8266
  • Potenciòmetre
  • Taula de pa
  • Saltar la línia
  • Cable USB

MakePython ESP8266: hi ha un mòdul OLED 1.3’integrat a la placa MakePython, amb 128x64 píxels … Un píxel d’una pantalla monocroma és un díode emissor de llum. OLED és una "auto-il·luminació", el mateix píxel és la font de llum, de manera que el contrast és molt alt. Les pantalles OLED tenen protocols de comunicació I2C i SPI, que són completament incompatibles a causa de diferents protocols. A la nostra lliçó, l'OLED està configurat per ser compatible amb el protocol I2C. Enllaç de compra del mòdul:

Potenciòmetre : El potenciòmetre és una resistència ajustable amb tres extrems anteriors i valors de resistència que es poden ajustar segons una llei de variació determinada. Un potenciòmetre sol estar format per un cos de resistència i un raspall mòbil. Quan el raspall es mou al llarg del cos de resistència, el valor de resistència o el voltatge en relació amb el desplaçament s’obté a l’extrem de sortida.

Programari :

uPyCraft IDE

Hi ha molts codis i mètodes de programació amb MicroPython. Per a aquest tutorial, fem servir uPyCraft IDE, que és la forma més senzilla i senzilla de començar a saltar a MicroPython.

Pas 3: cablejat

Cablejat
Cablejat
Cablejat
Cablejat
Cablejat
Cablejat

Es tracta d’un circuit molt senzill que requereix molt pocs cables, només tres. Simplement connecteu el pin VCC del potenciòmetre a 3,3 v de MakePython ESP8266 i el pin OUT (mig) a A0 i connecteu el GND entre si. La pantalla OLED utilitza comunicació I2C i la placa està connectada, de manera que no us haureu de preocupar.

Pas 4: Instal·leu UPyCraft IDE PC amb Windows

Instal·lació d'UPyCraft IDE PC amb Windows
Instal·lació d'UPyCraft IDE PC amb Windows
Instal·lació d'UPyCraft IDE PC amb Windows
Instal·lació d'UPyCraft IDE PC amb Windows

Feu clic en aquest enllaç per descarregar uPyCraft IDE per a Windows:

randomnerdtutorials.com/uPyCraftWindows.

Al cap d’uns segons, hauríeu de veure un fitxer similar (uPyCraft_VX.exe) a la carpeta Baixades

Feu doble clic a aquest fitxer. S'obre una finestra nova amb el programari IDE uPyCraft.

Pas 5: Establir una comunicació amb la Junta

Establir una comunicació amb la junta
Establir una comunicació amb la junta

Després d’instal·lar el microprogramari MicroPython (el microprogramari MicroPython ja està instal·lat quan obtingueu Makerfabs MakePython ESP8266), connecteu-lo a l’ordinador mitjançant un cable USB, seguiu els passos següents:

  • Aneu a Eines> Tauler i seleccioneu el tauler que utilitzeu. Seleccioneu l'esp8266
  • Aneu a Eines> Sèrie i seleccioneu el port de com a què està connectat el vostre ESP (descarregueu el controlador USB a:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)

Premeu el botó Connecta per establir una comunicació en sèrie amb la vostra placa.

Veureu ">>>" a la finestra de Shell després d'una connexió correcta amb el vostre tauler.

Pas 6: Creació del fitxer Main.py al tauler

Creació del fitxer Main.py al vostre tauler
Creació del fitxer Main.py al vostre tauler
Creació del fitxer Main.py al vostre tauler
Creació del fitxer Main.py al vostre tauler
  • Premeu el botó "Fitxer nou" per crear un fitxer nou.
  • Premeu el botó "Desa el fitxer" per desar-lo a l'ordinador.
  • S'obrirà una nova finestra, nomeneu el fitxer main.py i deseu-lo a l'ordinador.
  • Després, hauríeu de veure el fitxer boot.py al dispositiu i una nova pestanya amb el fitxer main.py.
  • Feu clic al botó "Baixa i executa" per penjar el fitxer al tauler ESP.
  • Ara el directori del dispositiu hauria de carregar el fitxer main.py. El vostre ESP té emmagatzemat el fitxer main.py.

Pas 7: afegiu un fitxer de controlador

Com que la pantalla OLED utilitza el xip del controlador SSD1306, hem de descarregar el controlador del SSD1306. Podeu anar al lloc web de GitHub per buscar i descarregar la biblioteca de SSD1306 o fer clic per descarregar el fitxer del controlador ssd1306.py.

Després de la descàrrega, deseu ssd1306.py al directori de fitxers WorkSpace. A continuació, feu clic a obre el fitxer ssd1306.py i feu clic a Executa i el fitxer de la biblioteca es pot carregar al directori del dispositiu. En aquest moment, el fitxer de biblioteca de ssd1306.py s'ha carregat correctament a MakePython ESP8266, que es pot cridar amb la sentència import ssd1306.

* Nota: La primera vegada que obriu l'IDE uPyCraft, el camí de l'espai de treball no existeix. Quan feu clic, apareixerà el quadre de diàleg WorkSpace. Podeu crear un directori WorkSpace per emmagatzemar els fitxers de l'usuari seleccionant el directori que voleu emmagatzemar.

Pas 8: la funció principal

La funció principal
La funció principal
La funció principal
La funció principal

Explicació gramatical:

  • i2c: configureu els pins SCL i SDA
  • oled: crea un objecte OLED
  • adc.read (): llegeix les dades de mostreig ADC
  • circle (): funció de cercle de dibuix personalitzat que utilitza la funció sqrt () per calcular el radi del cercle
  • math.sqrt (r): Retorna l’arrel quadrada del nombre
  • píxel (x, y, c): dibuixa el punt a (x, y)
  • hline (x, y, w, c): dibuixeu una línia horitzontal, començant per (x, y), longitud w
  • vline (x, y, w, c): dibuixeu una línia vertical, començant per (x, y), amb una alçada de w
  • oled.fill (n): buideu la pantalla quan n = 0 i empleneu la pantalla quan n> és 0
  • oled.show (): activeu la funció de visualització

Podeu afegir aquest fitxer directament o copiar-ne el contingut al fitxer principal recentment creat.

Pas 9: els resultats experimentals

Els resultats experimentals
Els resultats experimentals

Gireu el potenciòmetre lentament, en el sentit de les agulles del rellotge, i el cercle de la pantalla es farà més gran, en sentit antihorari.

Recomanat: