
|
![]() | #1 (permalink) Top | ||
User Data registr.: 14-02-2008 Residenza: Lauria (PZ)
Messaggi: 339
| Citazione:
Citazione:
ma con che guadagno? facilità di sviluppo? manutenibilità del codice? non credo. velocità di esecuzione? in minima parte, visto che le sezioni critiche si possono programmare in assembler. Il C nacque per questo, fornisce un linguaggio strutturato che è un pelo sotto l'assembler in termini di velocità, ma ad un abisso di distanza per tutto il resto. Certo, se devi fare programmini semplici o programmini che necessitano di estrema ottimizzazione allora può anche andare l'asm, per il resto è un suicidio. Se poi adduci lo scopo didattico allora niente da dire, scrivere programmi in asm è sempre un ottimo esercizio mentale e aiuta a comprendere benissimo l'architettura sottostante. Poi il C è un linguaggio trasversale, lo trovi ovunque dal microcontrollore al mainframe, quindi può essere un buon investimento per un lavoro futuro. | ||
![]() | ![]() |
![]() | #2 (permalink) Top |
User Data registr.: 28-05-2005 Residenza: Roma
Messaggi: 660
|
Se tu mi parli di un dsPIC30F allora ti posso concedere che magari realizzare alcune parti in "alti linguaggi" può essere comodo, ma in questo genere di processori l'esadecimale finale è generato, mai da un unico linguaggio ad alto livello, quanto più da un'amalgama di una moltitudine di linguaggi di programmazione, che possono raggiungere alte rese, tanto che sia le applicazioni, sia gli sviluppatori per questo genere di super prototipi sono molto rari, tanto che questi stessi PIC sono rari da trovare in un comune negozio. Per il rimanente 98% delle applicazioni (tra cui rientra la totalità delle possibili necessità di un aeromodellista: sai che c'è un utente qui che ha sviluppato un regolatore brushless con un serie 16F? Chiedi di Ivan) possono essere egregiamente risolte da un pic serie 16F. Ho visto utenti passare da un pic 16F ad un 18F solo perchè non avevano abbastanza pin a disposizione, ed usare solo il 3% delle potenzialità di un processore 18F. Alcune delle più elementari tecniche come il multiplexing sviluppato via firmware o il multi-PWM sempre via firmware sono cose ostiche e di solito vengono delegate alle risorse hardware di un PIC, questo perchè svilupparle via software complicherebbe di non poco il codice stesso, in pratica il motivo per cui i programmatori assembler sono così pochi è presto detto: programmare in un linguaggio difficile ma dalle potenzialità nettamente superiori agl altri linguaggi(almeno per questo tipo di architettura) è difficile. Alla fine: Vuoi usare bene i PIC? Impara l'assembler, avrai in questo modo il controllo di ogni singolo bit. |
![]() | ![]() |
![]() | #3 (permalink) Top | |
User | Citazione:
L'assembler è ottimo per realizzare delle piccole macro o routine in cui è richiesta la massima velocità ed efficienza del codice, od ove le risorse hw siano molto limitate. E' praticamente impossibile sviluppare applicazioni complesse, real-time, multitasking et similia in assembler, a meno di non avere molto tempo a disposizione e moltissima esperienza. Il controllo di ogni singolo bit lo si ottiene anche utilizzando compilatori 'C' non per nulla la stessa Microchip ( e non solo lei ma anche Cypress, Atmel, Freescale) fornisce gratuitamente il compilatore 'C' e numerose librerie pronte all'uso. Imparare bene un linguaggio come il 'C' consente poi di utilizzare lo stesso anche in ambiente P.C. per interfacce utente o simili poichè le funzioni base seguono lo standard ANSI in quasi tutti i S.O. windows o linux che sia. Il mio consiglio è di fare qualche esperimento con l'assembler usando i PIC della serie 12, poi passare alla serie 18Fxxxx ed imparare molto bene a programmare in 'C', investirai bene il tuo tempo e ti divertirai di più. IMHO ![]()
__________________ Peace & Love Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein) ![]() | |
![]() | ![]() |
![]() | #4 (permalink) Top |
User Data registr.: 28-05-2005 Residenza: Roma
Messaggi: 660
|
Ci credo che puoi comprare un dsPIC su internet sul sito microchip o si RS, oserei dire che solo questi grandissimi distributori hanno questo genere di attrezzature, se io vado al piccolo negozietto di elettronica che ho sotto casa è normale che lui non abbia un dsPIC. Quasi nessuna applicazione è in grado di apprezzare la differente velocità (almeno nelle applicazioni che quasi tutti noi usiamo) avere un impulso di 1 microsecondo oppure uno di mezzo microsecondo non è influente, perchè nessuno di noi avra mai bisogno di un orologio atomico nell'aeromodellismo (senza nulla togliere a questa nobile arte), e poi quello che dicevo io era diverso, io dicevo semplicemente che di solito si passa a pic più grandi per ovviare a problemi che non si è in grado di risolvere via software, ma è dalla notte dei tempi che si sa che se vuoi qualcosa che sia fatto bene, un pò devi penare, è una cosa normale. Tu mi dici che passeresti ad un 18F perchè pensi che con quello che risparmi in un prossimo futuro potresti ottenere un miglioramento delle prestazioni? Allora io ti rispondo che nella quasi totalità dei casi per ottenere qualcosa di migliore si deve cambiare tutto quello che c'è intorno, quindi ecco che l'ipotetico guadagno è vano. Ma su una cosa siamo d'accordo: per routine particolarmente complesse è vantaggioso usare il C o simili, non mi sognerei di dire il contrario, ma è altrettanto vero che usare il C per controllare un LCD non è una cosa vantaggiosa..... fammi un esempio di un applicazione così complessa che non è sviluppabile in assembler, applicabile nel nostro campo. Detto questo resta inteso che ognuno è liberissimo di usare ciò che preferisce. Ciao |
![]() | ![]() |
![]() | #5 (permalink) Top |
User Data registr.: 03-08-2009 Residenza: Pistoia
Messaggi: 279
![]() |
ecco fatto! alla fine ho deciso per il "C"... dopo una 50ina di pagine di guida (leticate varie con la mi mamma perchè io dicevo di studiare ma non cosa ![]() ![]() ![]() ![]() il 16f84a è veramente ottimo per iniziare e l'mplab con hitec-c per compilatore vanno davvero bene. Come programma per programmare i pic ho scelto ICprog, fatto bene anche lui... prossimo passo: interfacciarci un display lcd per "printeffare" ![]() che bello! mi diverto davvero tanto! |
![]() | ![]() |
![]() | #6 (permalink) Top |
User Data registr.: 10-06-2007 Residenza: Sansepolcro (Ar)
Messaggi: 1.948
|
Segui i consigli di Elnonino. Il C è ottimo per il pic, te lo dice uno che programma i pic in basic e in assembler, ma non ha mai avuto tempo e voglia di imparare ad usare il C!!! Adesso lo rimpiango molto. Comunque nel campo del modellismo userai l'assembler per le routine veloci, come gli interrupt per leggere gli impulsi della ricevente mentre utilizzerai linguaggi ad alto livello per fare calcoli con variabili a 16 o più bit, che in assembler ti farebbero impazzire. Senza contare tutte le librerie pronte che trovi per il C. Io ho fatto un progetto di uno stabilizzatore per elicotteri usando pic 18 ma ti assicuro che un DsPic non ci sarebbe stato male, perchè ho faticato molto con il 18, specialmente per ottenere una discreta definizione sulla lettura di 4 canali radio che in base al tipo di ricevente possono arrivare contemporaneamente, in sequenza o sovrapposti 2 a 2. http://www.baronerosso.it/forum/elim...licottero.html Quindi inizia con i 12 o 16 in assembler, approfondisci i 18 in C e poi puoi passare tranquillamente ai DsPic quando ne sentirai la necessità. Ultima modifica di marcosinatti : 05 dicembre 09 alle ore 00:52 |
![]() | ![]() |
![]() | #7 (permalink) Top |
User Data registr.: 20-08-2011 Residenza: rosignano marittimo
Messaggi: 1
| un solo problema i pic....
salve a tutti mi chiamo mirko anche io sono alle prese con i Pic, diciamo per passione voglia di rimettermi in gioco a 37 anni e sopratutto per un nuovo lavoro l'inizio è stato dei più scoppiettanti si parter con un PIC32MX460F512L questo per necessità è obbligatorio , sono 20 giorni che studio e ristudio il datasheet ma mi rimangono molti dubbi direi che se qualche buona anima me ne toglie solo alcuni non credo piangerò..... 1- durante l'approccio ad una programmazione di un pic quale sono le sequenze di problemi da affrontare prima. (io devo tramite pagina html commutare delle uscite a rele e segnalare su porta usb queste commutazioni. 2 - partendo anche io da 0 o meglio buona conoscenza di elettronica anche a livello di micro ma acerbissimo in programmazione come devo approcciarmi secondo voi? 3 - mi sono recuperato la mia bella explorer 16 e mi diverto a provarci ammetto però che ho perso la bussola nella quantità di informazioni che si recuperano on-line. beh per adesso direi basta poi vedremo. comunque un saluto a tutti mirko |
![]() | ![]() |
![]() |
Bookmarks |
| |
![]() | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
come programmare i pic | Nello82 | Circuiti Elettronici | 16 | 31 marzo 09 11:51 |
vorrei imparare a programmare pic | elicottero78 | Circuiti Elettronici | 4 | 20 ottobre 08 11:27 |
Programmare PIC 18F8627 | Paperinik. | Circuiti Elettronici | 1 | 25 gennaio 08 11:41 |
Programmare Pic 16c745 | ettore72 | Circuiti Elettronici | 3 | 17 gennaio 08 10:21 |
Programmare pic 16c745 | elizoom | Circuiti Elettronici | 12 | 19 gennaio 06 12:38 |