Posso eseguire codice Python sui chip AVR? Come?
Posso eseguire codice Python sui chip AVR? Come?
I microcontrollori AVR sono disponibili in molte dimensioni e forme. Il codice Python è disponibile in molte dimensioni e forme. Quindi cerchiamo di analizzare un po' questa domanda.
- Microcontrollori AVR. Ce ne sono molti. A me piacciono i miei giocattoli ATmega328p conosciuti come Arduino Nano e/o Uno, in realtà potrebbero essere gli stessi, la differenza si limita al fattore di forma del pcb. Ha qualche chilo di memoria, qualche chilo di ram, qualche eeprom, e questo è più o meno tutto. D'altra parte, ho scelto una bestia a caso dalla famiglia AVR32 https://web.archive.org/web/20110910140105/http://www.atmel.com/dyn/resources/prod_documents/doc32000.pdf L'AT32UC3A1512 ha 64 chili di sram, che è molto generoso per la maggior parte delle persone che giocano con dispositivi embedded.
Tuttavia: la memoria esterna può essere aggiunta. Mentre può essere un po' più complicato aggiungere memoria esterna allo spazio di indirizzi dell'mcu, un'estensione SPI può essere utilizzata per memorizzare byte, kilobyte... megabyte...
Quindi, anche se non sembra così interessante, un interprete python di base è certamente qualcosa che può essere fatto. - Python: il suo valore viene da due fonti. Da un lato abbiamo il codice sorgente apparentemente semplice ed elegante e la gestione della memoria. Dall'altra la lista infinita di librerie. Ora, a proposito di queste librerie: alcune sono solo un'interfaccia esposta di alto livello di codice altrimenti di basso livello scritto in C++. Ad un certo punto, un'importazione fallirà in un modo o nell'altro. Perché anche se tutto viene ricompilato, la memoria non sarà vostra amica.
Detto questo, un semplice google vi avrebbe dato delle risposte. Odio questo aspetto dell'attenzione su Quora. Usa google. Ci sono progetti python / macchine virtuali ecc per i microcontrollori. Ma a causa degli svantaggi, non toccherei nemmeno questo approccio. Sono più il tipo di ragazzo C semplice con memoria preallocata, quando si tratta di modesti dispositivi incorporati, non mi piace la confusione dei linguaggi di alto livello.
Articoli simili
- Quali sono le differenze tra codice macchina, codice byte, codice oggetto e codice sorgente?
- Il mio Samsung Galaxy S4 ha un codice paese XSB. Posso aggiornare manualmente il sistema operativo con un diverso codice paese, codice prodotto e CSC?
- Come eseguire uno script Python senza installare Python
- Qual è la differenza tra bytecode, codice nativo, codice macchina e codice assembly?