Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Programmazione x NOVIZI si ma con cosa ??

Progetti, interfacciamento, discussioni varie su questa piattaforma.

Moderatori: Foto UtenteMassimoB, Foto UtenteWALTERmwp, Foto Utentexyz

1
voti

[31] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto Utentesimo85 » 10 giu 2017, 13:29

Si ma se prendi per esempio i PIC, prima di cambiare di banco di memoria in mpasm, devi prima studiarti il perché, quindi l'architettura. Questo è il succo del discorso, credo.

O_/
Avatar utente
Foto Utentesimo85
30,8k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

1
voti

[32] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto UtenteFedhman » 10 giu 2017, 13:42

Già ma una volta che lo sai se poi non hai modo di provare a farlo...te lo scordi, e in fretta. Prendiamo due argomenti di base, gli interrupt ed i timer. Si potrebbe studiare per qualche ora come funzionano in generale. E va bene, poi? Bho. Letteralmente, "bho, ok".

Invece avendo già modo di sperimentare si può:
- Studiare in generale che cos'è un interrupt e che cos'è un timer, dal proprio libro sui microcontrollori.
- Aprire il datasheet del micro sulla propria scrivania, leggere che tipi di interrupt può gestire il proprio micro, come funzionano e come impostarli. Poi leggere che timer ha e quali registri si utilizzano per programmarli.
Così si può fare subito il confronto tra il datasheet di un micro reale e la teoria, scoprendo magari delle incongruenze o delle limitazioni.
- Provare a programmare il micro per generare un interrupt col timer. Ci si sbaglia una tonnellata di volte e ne si è ben consci, perché non lo si vede funzionare. Punto: è sulla nostra scrivania e non funziona. Perché? Si va a caccia del problema. Quindi si rivede la teoria, si rivede il datasheet, si ripassa tutto, spinti dal fatto che non funziona una mazza, non da velleità di studio.
- Una volta risolto il problema ci si ricorderà di un caso reale, specifico, correlato allo studio teorico compiuto. La lezione insegna più cose: nozioni sui due concetti, modi per cercare e risolvere il problema, familiarità coi datasheet e con un micro reale.

Ripetere con un'altra periferica o applicazione, oppure complicare l'applicazione corrente.
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.170 2 9 13
Master
Master
 
Messaggi: 475
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

1
voti

[33] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto Utentesimo85 » 10 giu 2017, 13:50

Certo Foto UtenteFedhman ma io non ho scritto che bisogna studiarsi il libro intero e poi praticare.

Se stai studiando il C e ti studi il libro senza praticare, succede poi quello che dici.
Mi è successo quando studiai il C per conto mio senza scrivere codice: 200 pagine di K&R e poi ? In panne. Dovetti riprendere il libro con tutto quello che non mi ricordavo.

Ma non puoi per esempio metterti a programmare in Assembly senza avere una idea generale dell'architettura, a cominciare dai registri, quali sono e a cosa servono e come usarli, etc.. Io mi riferisco a questo.

O_/
Avatar utente
Foto Utentesimo85
30,8k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[34] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto Utentewruggeri » 10 giu 2017, 14:13

simo85 ha scritto:Infatti è quello che si fa (o si dovrebbe fare) in qualsiasi corso di microprocessori o microcontrollori.
E non si parte nemmeno dal C, ma con Assembly. Almeno per me è stato così.


Anche nel corso che ho fatto io si trattava l'assembly... e non potrebbe essere altrimenti, in un corso che dovrebbe puntare a fornire una conoscenza "completa" dell'argomento.
Rispondo solo a chi si esprime correttamente in italiano e rispetta il regolamento.
Se non conosci un argomento, non parlarne.
Gli unici fatti sono quelli dimostrabili, il resto è opinione.
Non sono omofobo, sessista, leghista o analoghe merdate.
Avatar utente
Foto Utentewruggeri
5.524 2 8 13
Master EY
Master EY
 
Messaggi: 1136
Iscritto il: 25 nov 2016, 18:46

1
voti

[35] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto UtenteFedhman » 10 giu 2017, 19:11

Foto Utentesimo85 avevo compreso, ci tenevo a precisare per chi si approccia all'argomento per la prima volta e magari pensa di dover "completare gli studi" prima di poter toccare un microcontrollore. È un approccio controproducente.

Riguardo all'assembly ricordo un commento di un bravissimo professore del poli che suonava come:

L'assembly ve lo facciamo vedere, e sappiate che ci sono casi in cui sarete obbligati a usarlo. Ma non fatelo sempre, neppure spesso, cercate di non farlo mai se non quand'è proprio necessario. Ci sono ditte che sono fallite perché i loro programmatori programmavano in assembly anziché in C.

Non stava scherzando. Ormai i tempi sono cambiati, ben venga l'idea di dargli un'occhiata in quanto vicinissimo all'hardware ma dovendo scegliere come formarsi non è realistica l'idea di privilegiarlo rispetto al C, neppure per "studiare più da vicino l'hardware". Meglio studiare seriamente l'assembly in seguito, se e quando le proprie applicazioni saranno così pesanti da doverne richiedere un uso serio e soprattutto motivato.

Capita anche di doverne inserire piccoli stralci all'interno di programmi C, alcuni compilatori lo permettono. Chi è proprio obbligato ad usarlo in genere fa così (conosco chi è costretto a farlo: neanche morti si mettono a scrivere tutto in assembly, è follia).
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.170 2 9 13
Master
Master
 
Messaggi: 475
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

2
voti

[36] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto Utentesimo85 » 10 giu 2017, 19:22

No vabbé non è che io vivo negli anni 60/70 e programmo ancora in asm. Ci mancherebbe. :mrgreen:

O_/
Avatar utente
Foto Utentesimo85
30,8k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[37] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto UtenteFedhman » 10 giu 2017, 19:30

simo85 ha scritto:No vabbé non è che io vivo negli anni 60/70 e programmo ancora in asm. Ci mancherebbe. :mrgreen:


Immaginavo :mrgreen:
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.170 2 9 13
Master
Master
 
Messaggi: 475
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

1
voti

[38] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto Utentesimo85 » 10 giu 2017, 19:37

Foto UtenteFedhman pensa che volevo consigliargli Programming from the ground up ma mi sono trattenuto. :mrgreen:
Avatar utente
Foto Utentesimo85
30,8k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

2
voti

[39] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto UtenteMarcoD » 10 giu 2017, 20:20

Miei ricordi di quando ero giovane:
i minicalcolatori a 16bit (come i microcontrollori di oggi) avevano al massimo 32kword di memoria a nuclei.
Quando durante il debug trovavi un errore del programma , e non bastava correggere una istruzione e non potevi riassemblare, modificavi il programma introducendo un jump a un indirizzo libero della memoria, scrivevi in ottale l'istruzione o le istruzioni da aggiungere, e poi rifacevi un jump alla prima istruzione utile del programma originale.
Il calcolatore aveva 16 tasti per impostare la word e i tasti address e load per posizionarsi all'indirizzo
e caricare il dato. Poi avevano due righe di 16 LED ciascuno per indicare l'indirizzo e il dato.
Si poteva fare avanzare il programa una istruzione/passo alla volta e visualizzare sui LED cosa capitava.
:-) :-)
Avatar utente
Foto UtenteMarcoD
8.834 4 9 13
Master EY
Master EY
 
Messaggi: 4118
Iscritto il: 9 lug 2015, 16:58
Località: Torino

1
voti

[40] Re: Programmazione x NOVIZI si ma con cosa ??

Messaggioda Foto UtenteFedhman » 10 giu 2017, 20:21

MarcoD ha scritto:Si poteva fare avanzare il programa una istruzione/passo alla volta e visualizzare sui LED cosa capitava.


http://www.megaprocessor.com/
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.170 2 9 13
Master
Master
 
Messaggi: 475
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

PrecedenteProssimo

Torna a Arduino

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite