Cioè, per fare i microcontrollori che funzionano ci vuole il file da metterci dentro. Per fare il file si può fare come dicono i prof solo che quelli ci hanno la testa malata, quelli ti incasinano la vita con l' assembly ma io lo so perché: perché non capiscono una mazza e allora tutti i programmi che fai non devono funzionare. Per essere figo devi usare il C. Non che non si possa usare un' altra cosa ma i fighi usano il C. Il C ti serve anche per il lavoro perché se cerchi lavoro ti chiedono se sai programmare in C. Non ho mai capito perché ma te lo chiedono. Ora tu gli puoi raccontare una balla e magari se la bevono e ti assumono, ma se poi ti dicono di fare il programma in C sono dolori e non ti assumono più.
In questo articolo ti spiego il C. Non hai bisogno di comprare libri (che palle!) o di andare ad un corso, quelle sono cose inutili che ti fanno sprecare tempo e soldi. Tu segui bene quello che ti dico e poi prova. Tranquillo che vai sul sicuro!
Indice |
Cos' è il C
Il C si chiama così perché si usava per fare i programmi con il computer, lo dice la parola stessa: C vuol dire computer. Però si usava per i computer vecchi poi, quando hanno fatto i computer nuovi hanno fatto il C++ (che è più meglio del C anche se non so perché) e poi il C# (che si pronuncia "C con il cancelletto") perché c'è stato windows. Oggi con il C ci fai i file per i PIC e anche per gli altri. Addirittura ci fai anche i programmi per gli ARM, hai presente gli ARM? Cioè sono quei micro incasinatissimi ma è meglio che li lasci perdere. Quella è roba per i fuori di testa che non hanno un cacchio da fare nella vita e stanno tutto il giorno davanti al computer a farsi le seghe mentali. Non hanno la tipa, non vanno in discoteca e non li trovi mai al bar. Se fai con gli ARM diventi come loro quindi lascia perdere.
Cosa stavo dicendo? Ah si, il C è figo perché è incasinato. Invece delle parole ci sono le parentesi e tutti quei caratteri che non usi mai tipo & | !=. Li avevano messi apposta per incasinare perché così solo pochi riuscivano a fare i programmi, e così chi faceva i programmi non si faceva fregare il lavoro da gli altri. C' era anche il Pascal che invece dei simboletti usava le parole ma era troppo facile e tutti riuscivano a fare i programmi, allora hanno incasinato tutto ed hanno fatto sparire il Pascal. Cioè non è che il Pascal non c'è più ma è per i vecchi. E poi con il Pascal fai un casino di errori, con il C fai meno errori. Puoi anche sbagliare un' istruzione ma non ti da errore.
Dicevo che una volta il C si usava solo per i computer ma poi i microcontrollisti si sono fatti furbi ed hanno chiesto il C per i microcontrollori. E avevano ragione! Perché dovevano farsi il mazzo con l' assembly? Non era giusto e così hanno fatto il C per i micro.
Cosa ti serve per fare i programmi con il C
Per fare un programma in C prima di tutto devi avere un amico che fa i programmi con il C. Se hai culo riesci a farti amico uno di quelli che usano gli ARM. Per farsi amico uno di questi lo devi cercare in rete, gli devi dire che è bravo, insomma lo devi impapucchiare per bene perché ti serve, poi ti spiego come. Ah, fatti dare il suo numero di cell.
Poi ti serve il sistema di sviluppo. Per trovare il sistema di sviluppo giusto vai nel forum, dici che vuoi fare un programma su un micro (però gli devi dire quale), aspetti un giorno o due e qualcuno ti dirà cosa ti serve. A quel punto gli chiedi il link, scarichi e installi. I sistemi di sviluppo hanno anche i pdf che servono per imparare ma puoi anche non leggerli, meglio se rompi le palle nel forum. Perché perdere tempo a studiare quelle cose scritte in inglese quando c' è sempre qualcuno che ti risolve i problemi?
Il programma C
Allora, nel programma C c' è il main e la printf. Il main lo devi mettere per forza ma la printf puoi anche non metterla. Il main ha le parentesi graffe, a volte ne ha tante ma a volte solo due. Te l' ho detto prima che il C è incasinato e quindi se vuoi fare un programma semplice ci metti solo due parentesi e sei a posto. La printf serve per scrivere le parole e i numeri ma la puoi usare solo sul computer o su un micro che ha anche il video perché la printf ha bisogno del video.
E poi ci sono le #include. Le #include le devi mettere per forza sennò ti da errore. Io le metto tutte così sono tranquillo. Non ho mai capito a cosa servono e non mi interessa. Ho scoperto però che bisogna metterle quindi mettine più che puoi ma una per volta fino a quando non ti da più errore.
Poi c'è il for. Il for serve per fare le cose tante volte ma ci devi mettere le parentesi dopo il for e poi le parentesi graffe e dentro ci metti le cose che deve fare.
Il C ha anche le variabili. Le variabili sono i numeri, ma non i numeri tipo 1, 2 o 3 (che non sono sempre uguali) sono parole che ci puoi mettere il numero che vuoi, e servono per fare i calcoli e per i for.
Le variabili sono int. Per fare una variabile scrivi int e poi ci scrivi una lettera o una parola qualsiasi e hai fatto la variabile. Ricordati di metterci il punto e virgola dopo perché devi metterlo e di non metterci l' asterisco davanti al nome sennò poi non ti funziona niente.
Nel C c'è anche l' if, il while ed altre cose ma servono a poco e poi trovi sempre qualcuno che ti dice quando usarle quindi puoi anche non impararle, è fatica sprecata dai retta a me.
E poi ci sono le funzioni. Cioè ogni tanto devi prendere un pezzo di programma del main e metterlo dentro una funzione. Non servono a niente ma se non le fai ti cazziano. Le funzioni possono avere il return o non averlo. Tu per essere sicuro scrivi sempre void davanti al nome della funzione. E' il metodo per non doverci mettere il return dentro, tanto il return non serve ad una mazza, ti incasina solo la vita.
Come fare un programma
Per fare un programma vai in rete, cerchi qualcosa che più o meno fa quello che vuoi fare tu, lo metti dentro il sistema di sviluppo e ti da errore. Allora vai nel forum e chiedi perché ti da errore, non perdere tempo a cercarlo tu, meglio se lo cerca un altro. Se nessuno te lo trova allora telefoni al tipo, a quello che scrive i programmi con gli ARM, e chiedi a lui. Telefonagli pure anche quando torni dalla discoteca o dal bar, tanto quelli stanno giorno e notte attaccati al computer e non li disturbi. Lui ti trova il problema, gli dici che è un genio, gli prometti una pizza ma tranquillo che lui poi se lo dimentica.
Quando hai il programma che non ti da più errore sappi che non fa ancora quello che vuoi te. Allora devi guardarlo un po' e provare a cambiare qualcosa da qualche parte, prima o poi ti farà quello che vuoi. Se non ci riesci chiedi nel forum.
Come vedi non è difficile, non serve studiare libri anche perché sono in inglese, ed è meglio uscire con la tipa o con gli amici invece di mettersi a studiare l' inglese che è una palla. Quando sarai diventato bravo a trovare i programmi in rete e quando sarai diventato amico del tipo che fa i programmi per gli ARM vedrai che non avrai problemi a scrivere qualsiasi programma. Dai retta a me che io lo so.
Cosa fare se non riesci a scrivere in C
Anche qui non c' è problema. Se non riesci a fare i programmi in C devi usare arduino. Con arduino basta che ci metti l' istuzione giusta e lui ti fa tutto. E poi ci sono un casino di programmi già fatti. Tu li scarichi, li metti dentro ed hai risolto tutto. Però se usi arduino non sei figo come usare il C, si vabbè fai le cose che funzionano e se trovi qualcuno che non sa niente di programmazione te la puoi tirare dicendo che programmi in C ma non sempre funziona. Però c'è anche qui il trucco, il segreto: tu fai le cose con arduino e poi dici che l' hai fatto in C perché arduino, almeno così ho sentito dire in giro, si potrebbe anche programmare in C e quindi è molto più facile darla da bere. Fai un figurone e passi pure per figo!
A scanso di equivoci
E' evidente che questo è un articolo scherzoso scritto per divertimento, per ridere e per prendermi una piccola pausa sul lavoro (programmazione in C tanto per cambiare). E' l' estremizzazione di un pensiero, per fortuna non diffusissimo, che vorrebbe accomunare la pratica della programmazione al bricolage. Nella programmazione niente è lasciato al caso e prima di scrivere è necessario studiare molto, pianificare, analizzare e solo dopo iniziare a scrivere. E' un lavoro che, anche a distanza di decine di anni, trovo ancora molto stimolante. Scrivere un programma che funziona può essere normale routine come può diventare sempre un' occasione nuova per migliorasi in termini di stile, affidabilità, robustezza, manutenibilità e prestazioni.
Fra i linguaggi strutturati il C è, a mio avviso, il più potente perché si basa su un assunto: fidarsi del programmatore. Questo permette molta più libertà nella scrittura del sorgente ma, di contro, investe il programmatore di più responsabilità. In programmazione non è ammesso l' errore e con il C è facile sbagliare, quindi è necessario essere particolarmente attenti e meticolosi per evitare di cadere, anche solo per una svista, nei numerosi trabocchetti che tale libertà di uso inevitabilmente mette di fronte.
Lavorare con il C sui microcontrollori non vuol dire che non si debba conoscere l' assembly, tutt' altro. Rende la vita molto più facile e diventa una vera potenza quando si incomincia a guardare il sorgente in assembly prodotto dal compilatore. Andare a scavare a fondo anche in quel che fa il compilatore è un ottimo esercizio. Sapere cosa succede "dietro le quinte" aiuta a modellare il proprio stile per ottenere elevate prestazioni e codice compatto.
Ovviamente non ci si può improvvisare programmatori, bisogna studiare a lungo e di continuo. E' una fatica ma personalmente sono convinto che ne valga la pena, anche solo come esercizio di conoscenza.
Questa volta concludo con un' esortazione non alla sperimentazione ma allo studio attento e meticoloso di questo bellissimo linguaggio. Avere più di un buon libro di programmazione è buona cosa, come buona cosa è studiare e provare tutte le particolarità del C e non fermarsi solo a quel che serve per ottenere un risultato.
Buono studio e buona programmazione a tutti!