Pages: [1]   Go Down
Author Topic: Firmware, chi è e come funziona ?  (Read 1010 times)
0 Members and 1 Guest are viewing this topic.
Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti,

è un po che non scrivo qui, comunque volevo chiedervi come funzionano i firmware.

sto provando a seguire queste guide, anche se con scarso successo.

1. --> http://www.contraptor.org/mini-cnc
2. --> http://reprap.org/wiki/Arduino_GCode_Interpreter
3. --> http://reprap.org/wiki/G-code

nel primo link è un sito dove spiegano come costruire una piccola CNC e fin li mi è tutto chiaro ma quando si inizia a parlare del firmware non capisco più niente, istintivamente googolato il nome sotto quella voce trovo il secondo e il terzo link in cui si inizia a parlare di un linguaggio chiamato gcode(che credo sia un linguaggio della CNC).
E il problemi arrivano quando mi si chiede di mandare un firmware all arduino smiley-roll-blue ?!?!?!!

ora uso un mega 2560
« Last Edit: October 26, 2012, 03:27:05 pm by CarloMaragno » Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22959
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Il firmware è il codice contenuto in un microcontrollore. Parlando dell'Arduino, è la traduzione in linguaggio macchina dello sketch utente.
Firmware indica normalmente un programma normalmente non modificabile dall'utilizzatore di un apparato. Un firmware è anche il codice del tuo telefonino oppure del tuo televisore, che normalmente non sono modificabili dall'utente.
Logged


Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quindi il firmware è il codice che fa capire l' Arduino le istruzioni che si scrivono sul' IDE.
Cambiare firmware vuol dire far capire delle altre istruzioni al Arduino, Giusto?!?!?!?


MA come si cambia un firmware?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22959
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ogni cosa ha il suo linguaggio. Tu scrivi in C ma il C non è capito dalla CPU del microcontrollore, essa sa "leggere" solo il linguaggio macchina. Il compilatore converte il tuo sketch che scrivi nell'IDE in un formato leggibile dall'Atmega328. La scrittura di un nuovo firmware la fai con l'upload eseguito tramite l'IDE.
Logged


Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

QUINDI:

Firmware == Sketch


pero i file che ho scaricato io sono un sacco come facci ad aprirli tutti insieme??
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22959
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Firmware=sketch se parliamo di Arduino

Hai un link al firmware?
Logged


Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si

http://sourceforge.net/projects/reprap/files/PIC%20Firmware/20060430/
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22959
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quelli sono file binari, ossia firmware già pronti per essere caricati su un microcontrollore. Per fare ciò devi usare avrdude da terminale (cerca sul forum, ci sono tante discussioni: io personalmente ho messo tante volte i comandi da dare).
Logged


Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

avrdude è un file un comando una porta o che....


si, ma vengono fuori discussioni su errori strampalate
« Last Edit: October 26, 2012, 04:12:13 pm by CarloMaragno » Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22959
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

avrdude è un comando.
Se hai Linux, basta fare "man avrdude" per vedere come usarlo.
Logged


Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 45
Posts: 1504
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Le macchine utensili a controllo numerico (CNC) usano da tempo un linguaggio chiamato G-code che è universale (o quasi) e che risponde alle regole ISO 6983.

In pratica, alla macchina si invia un file ASCII che contiene delle righe di testo di questo tipo:
Code:
N10 G01 X100 Y100 Z100 S1000 F250 M03
Se Arduino è il controller CNC, esso deve interpretare questo file in modo che agisca di conseguenza:
N10 ... numero blocco istruzioni
G01 ... interpolazione lineare
X100 ... asse X
Y100 ... asse Y
Z100  ... asse Z
S1000 ... velocità spostamento
F250 ... avanzamento (feed)
M03 ... avvia mandrino in senso orario
Logged

Teolo (pd) italy
Offline Offline
Jr. Member
**
Karma: 0
Posts: 96
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok grazie
Logged

Pages: [1]   Go Up
Jump to: