CircuitPython: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
m Bot: rimuovo parametro ridondante (valore uguale alla proprietà P154 su Wikidata) |
||
(2 versioni intermedie di 2 utenti non mostrate) | |||
Riga 1:
{{Software
|Nome = CircuitPython
|Sviluppatore = [[Adafruit Industries]]
|DataPrimaVersione = 19 luglio 2017 <ref>{{
|UltimaVersione = 9.2.1
|DataUltimaVersione = 20 November 2024
Riga 9 ⟶ 8:
|Linguaggio = [[C (linguaggio di programmazione)|C]]
|Genere = Interprete Python
|Licenza = [[Licenza MIT]]<ref>{{
|SoftwareLibero = sì
|nome =
|autore = [[Adafruit Industries]]
Riga 18 ⟶ 16:
}}
'''CircuitPython''' <ref
Basandosi su MicroPython, che è una versione ridotta di Python3, eredita molte delle caratteristiche di Python3, rendendo il linguaggio familiare e accessibile agli utenti che già conoscono questo linguaggio. CircuitPython è scritto in [[C (linguaggio di programmazione)|linguaggio C]] <ref name="CP-GitHub">{{Cita web|url=https://github.com/adafruit/circuitpython|sito=[[GitHub]]}}</ref> che garantisce alte prestazioni e l'uso efficiente delle risorse su dispositivi a risorse limitate come i [[Microcontrollore|microcontrollori]].▼
▲Basandosi su MicroPython, che è una versione ridotta di Python3, eredita molte delle caratteristiche di Python3, rendendo il linguaggio familiare e accessibile agli utenti che già conoscono questo linguaggio. CircuitPython è scritto in [[C (linguaggio di programmazione)|linguaggio C]] <ref name="CP-GitHub">{{Cita web|url=https://github.com/adafruit/circuitpython|titolo= |sito=[[GitHub]]}}</ref> che garantisce alte prestazioni e l'uso efficiente delle risorse su dispositivi a risorse limitate come i [[Microcontrollore|microcontrollori]].
CircuitPython compila il codice sorgente Python in bytecode. Dopo che il [[codice sorgente]] è stato compilato in [[bytecode]], l'interprete runtime di CircuitPython esegue questo bytecode sull'hardware del microcontrollore.
Riga 27 ⟶ 24:
All'utente viene presentato un prompt interattivo noto come [[Read–eval–print loop|REPL (Read-Eval-Print Loop)]], uno strumento che permette agli utenti di interagire con l'interprete Python in tempo reale.
CircuitPython include una varietà di moduli che consentono agli sviluppatori di accedere sia all'hardware di basso livello dei dispositivi supportati che a librerie di livello superiore pensate per facilitare l'apprendimento dei principianti.
CircuitPython è una variante di MicroPython, che è stata originariamente creata da Damien George.
CircuitPython punta a essere conforme a [[CPython]], l'implementazione di riferimento del linguaggio di programmazione Python.
== Utilizzo ==
'''CircuitPython''' si sta affermando come alternativa per la programmazione dei microcontrollori, che tradizionalmente viene eseguita in linguaggi come [[C (linguaggio di programmazione)|C]], [[C++]] o [[assembly]]. Viene utilizzato anche per la creazione di piccoli dispositivi portatili per videogiochi.
Lo sviluppatore Chris Young ha portato il suo software di trasmissione e ricezione infrarossi su CircuitPython per facilitare l'interazione tra dispositivi e per aiutare le persone con problemi di [[Accessibilità (design)|accessibilità]]<ref>{{Cita web|url=http://tech.cyborg5.com/2017/06/06/announcing-irlibcp-a-circuit-python-module-for-infrared-transmitting-and-receiving/|titolo= |sito=CY's Tech Talk}}</ref>
== Comunità ==
La comunità offre supporto agli utenti attraverso una chat room [[Discord]] e a un forum di supporto dedicato.
Settimanalmente, dal 15 novembre 2016, viene pubblicata da Adafruit la newsletter dal titolo "''Python on Microcontrollers"''. Questa newsletter fornisce notizie, aggiornamenti e informazioni utili su CircuitPython, MicroPython e, in generale, sull'uso di Python su [[Single-board computer|computer a scheda singola (SBC)]].
Attraverso il subreddit [[Reddit|di Reddit]], "''r/CircuitPython''", vengono fornite notizie su CircuitPython e su progetti correlati. Attualmente conta circa 4.300 membri.
== Supporto hardware ==
La versione 9.1.0 supporta una gamma di architetture, chiamate "''porte''" (ports).
Le architetture supportate sono:
Riga 66 ⟶ 63:
* stm: famiglie di chip ST non-STM32F4
Le versioni precedenti di CircuitPython supportavano il microcontrollore [[ESP8266]], ma il suo supporto è stato abbandonato dalla versione 4.
== Blinka Software Abstraction Layer ==
Blinka è una libreria di astrazione software sviluppata da [[Adafruit Industries|Adafruit]] <ref name="circuitpython.org">{{Cita web|url=https://circuitpython.org/blinka|titolo= |sito=CircuitPython}}</ref> per permettere l'uso delle [[Application programming interface|API]] di CircuitPython su dispositivi che eseguono [[CPython]] o [[MicroPython]]. Questo significa che puoi utilizzare librerie e codice scritto per CircuitPython anche su altre piattaforme, come Raspberry Pi o PC desktop. Questo consente di sviluppare e testare i progetti CircuitPython su una piattaforma familiare (elencati su circuitpython.org), prima di trasferirli su un microcontrollore.
Blinka è una libreria Python installabile tramite <nowiki>''</nowiki>''pip''<nowiki>''</nowiki>. Questa libreria consente di eseguire codice scritto per CircuitPython su piattaforme che eseguono [[Linux]], come [[Raspberry Pi]], utilizzando il runtime CPython invece del runtime di CircuitPython. Questo significa che, mentre il codice utilizza le API di CircuitPython fornite da Blinka, l'esecuzione avviene tramite il runtime di CPython. Questo aspetto è ben documentato nella guida ''CircuitPython Libraries on Linux and Raspberry Pi''..
== Moduli (Librerie) ==
Adafruit può contare su una comunità molto attiva che ha contribuito con una vasta gamma di librerie software per più di 488 sensori e driver.
== Note ==
<references />
== Collegamenti esterni ==
Riga 83 ⟶ 80:
* {{GitHub|Adafruit/CircuitPython}}
* {{YouTube|2=MicroPython}} • Tutorials di Tony DiCola / [[Adafruit Industries|Adafruit]]
[[Categoria:Software con licenza MIT]]
[[Categoria:Software libero in C]]
[[Categoria:Python]]
▲{{Portale|Informatica|Software libero}}
|