Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 07 marzo 06, 14:33   #1 (permalink)  Top
UserPlus
 
L'avatar di davidea
 
Data registr.: 24-08-2004
Residenza: palermo (pa)
Messaggi: 846
Invia un messaggio via MSN a davidea
microcontrollori

leggendo le specifiche sia di atmel che di microchip, ho notato che su alcuni microcontrollori e' possibile per il sw scrivere dati in area programma, e siccome in alcune applicazioni avrei bisogno di una memoria dati piu' grande della EEPROM onboard, ho pensato di far scireve i dati da memorizzare dall mio sw direttamente su una porzione non usata della memoria programma, che ne pensate??
e' una pratica sporca? utilizzata di frequente?

sicuramente mi risparmio una memoria esterna, e quindi meno peso e meno spazio occupato, ma la memoria programma e' data per scrivibile 100000 volte solamente.....

che ne pensate?
__________________
73 de davidea!!!
davidea non è collegato   Rispondi citando
Vecchio 07 marzo 06, 15:00   #2 (permalink)  Top
User
 
L'avatar di gigiovanni
 
Data registr.: 17-10-2005
Residenza: Palermo
Messaggi: 512
Immagini: 1
Invia un messaggio via MSN a gigiovanni
Non è una procedura sporca... se memorizzi dei dati nella memoria programma, questi puoi solo scriverli in fase di scrittura del sorgente (almeno credo...di solito si memorizzano in memoria programma, delle costanti)... poi ci sono dei microcontrollori che permettono la scrittura della EEprom programma anche durante il funzionamento del PIC (per esempio si può variare, agendo a livello codice, il programma mentre è in esecuzione)... oppure ti resta sempre la memoria RAM che è abbastanza grande...ma è sempre RAM... effettivamente la EEprom interna del PIC, a seconda dell'applicazione che si vuole fare, può risultare piccola, però puoi sempre valutare l'idea di collegare una EEprom esterna su bus I2C, ad esempio le eeprom del tipo 24LCXX...non sono poi tanto pesanti.... certo, ti complichi la vita a livello software, però hai un sacco di memoria a disposizione...eheh.... non so se mi spiego...il gioco vale la candela....eheh
gigiovanni non è collegato   Rispondi citando
Vecchio 07 marzo 06, 18:42   #3 (permalink)  Top
UserPlus
 
L'avatar di davidea
 
Data registr.: 24-08-2004
Residenza: palermo (pa)
Messaggi: 846
Invia un messaggio via MSN a davidea
Citazione:
Originalmente inviato da gigiovanni
... poi ci sono dei microcontrollori che permettono la scrittura della EEprom programma anche durante il funzionamento del PIC (per esempio si può variare, agendo a livello codice, il programma mentre è in esecuzione)...

però puoi sempre valutare l'idea di collegare una EEprom esterna su bus I2C, ad esempio le eeprom del tipo 24LCXX...non sono poi tanto pesanti.... certo, ti complichi la vita a livello software, però hai un sacco di memoria a disposizione...eheh.... non so se mi spiego...il gioco vale la candela....eheh

no, intendevo pic16f877a e atmega32 che permettono di avere un bootloader che scrive il programma che dovra' essere eseguito, io invece di scrivere il nuovo programma, vorrei memorizzare delle letture effettuate sulla porta ADC!!

se consideri che il pic ha 8k di memoria programma e l' atmel ne ha 32k, anche se ne sfrutto solo 4k, e' come se avessi una 24lc32 onboard!!!
__________________
73 de davidea!!!
davidea non è collegato   Rispondi citando
Vecchio 07 marzo 06, 19:10   #4 (permalink)  Top
User
 
L'avatar di gigiovanni
 
Data registr.: 17-10-2005
Residenza: Palermo
Messaggi: 512
Immagini: 1
Invia un messaggio via MSN a gigiovanni
Si, siamo d'accordo, ma credo he tu ti stia riferendo alla memoria RAM, non alla EEPROM... la Ram si cancella una volta che spegni il PIC, ok ?
gigiovanni non è collegato   Rispondi citando
Vecchio 07 marzo 06, 19:19   #5 (permalink)  Top
UserPlus
 
L'avatar di davidea
 
Data registr.: 24-08-2004
Residenza: palermo (pa)
Messaggi: 846
Invia un messaggio via MSN a davidea
Citazione:
Originalmente inviato da gigiovanni
Si, siamo d'accordo, ma credo he tu ti stia riferendo alla memoria RAM, non alla EEPROM... la Ram si cancella una volta che spegni il PIC, ok ?
no, mi riferisco alla memoria EEPROM - PROGRAMMA, quella dove viene scritto normalmente il file HEX, quella che quando e' esaurita non puoi piu' aggiungere istruzioni!!!!
__________________
73 de davidea!!!
davidea non è collegato   Rispondi citando
Vecchio 07 marzo 06, 19:32   #6 (permalink)  Top
User
 
L'avatar di gigiovanni
 
Data registr.: 17-10-2005
Residenza: Palermo
Messaggi: 512
Immagini: 1
Invia un messaggio via MSN a gigiovanni
Allora...a quel che ho capito...devi fare delle letture da ADC e memorizzare i risultati... OK ?
La EEPROM PROGRAMMA non è su tutti i modelli di PIC che la puoi andare a scrivere !!! sugli atmel non ho esperienza... allora..scusa, ho controlato adesso, nel 16f877 puoi scrivere la memoria programma, basta andare a mettere un "1" nel bit n° 7 del registro EECON1 prima di scrivere su EEPROM....

comunque secondo me resta sempre più logico andare a leggere/scrivere su EEprom esterna.... ce ne sono anche da 1 Mega !!! pesano e consumano pochissimo.... e poi ti porto un esempio....

Supponiamo che il circuito sia montato in un modello dove acquisisce temperatura, velocità.... ecc (è un esempio). Fai un volo... quindi la eeprom si riempie...poi scendi a terra, cambi la eeprom (ci stai due secondi se monti uno zoccolino) e ne metti una nuova...tanto costano pochissimo... così le usi tipo le card delle fotocamere...

Una cosa simile l'ho usata nella realizzazione di un circuito che gestisce l'apertura di un cancello automatico tramite autenticazione di chiave a codice (64 bit di codice...eheh)... se serve modificare i codici degli utenti che hanno accesso al parcheggio basta che programmo una eeprom con i nuovi codici, vado nella centralina (fatta col PIC) tolgo la vecchia eeprom e metto la nuova... se avessi inserito i codici nella memoria programma avrei dovuto rimettere mano al programma...ecc

poi in ogni cosa ci sono i pro e i contro... se qualche grammo di eeprom in più sono eccessivi...allora la strada tua è preferibile...
gigiovanni non è collegato   Rispondi citando
Vecchio 08 marzo 06, 01:15   #7 (permalink)  Top
UserPlus
 
L'avatar di protomax
 
Data registr.: 21-02-2005
Residenza: TURIN 45N 7E
Messaggi: 1.951
Invia un messaggio via MSN a protomax
Si puo' scrivere su EEPROM programma anche su atmega, il problema e' che a differenza della EEprom classica (100Kcicli scrittura) la EEprom Programma supporta solo 10000 cicli scrittura che possono essere comunque tanti....

Su Atmega pero' si trovano gia dalla ver 32 le librerie per scrivere su memoria SD(secure digital) in modalita' fat16 quindi ribalti tutto su pc ed hai gia il file di testo .

Io ti consiglio di usare la memoria EEprom dati per quel 1K che serve e lasciar stare la eeprom programma che ti permette di metterci ben altro libreria fat inclusa e poi vuoi mettere la comodita' anche solo 16Mb SD
__________________
C'e' chi vola con l'elettronica e chi fa volare l'elettronica ... entrambi volano.
________________________________________________
ProtoMax proudly present: ProtoMeter 2
32bit ARM core + ZigBee Radio all in one Telemetry system
... Next on this forum
protomax non è collegato   Rispondi citando
Vecchio 09 marzo 06, 21:53   #8 (permalink)  Top
User
 
Data registr.: 04-02-2006
Residenza: Busto Arsizio(nelle vicinanze)
Messaggi: 103
Invia un messaggio via MSN a pixter
Ciao..

Se ti interessa ho visto che anche per i pic esistono librerie per scrivere su memorie SD..se conosci il C c'è un programma che si chiama mikroC di mikroelettronika, l'unica pecca è che il programma lo forniscono tutto completo ma puoi compilare fino ad un massimo di non ricordo quanti K di codice..le versioni free ti fregano sempre..
pixter non è collegato   Rispondi citando
Vecchio 10 marzo 06, 01:41   #9 (permalink)  Top
UserPlus
 
L'avatar di davidea
 
Data registr.: 24-08-2004
Residenza: palermo (pa)
Messaggi: 846
Invia un messaggio via MSN a davidea
Citazione:
Originalmente inviato da pixter
Ciao..

Se ti interessa ho visto che anche per i pic esistono librerie per scrivere su memorie SD..se conosci il C c'è un programma che si chiama mikroC di mikroelettronika, l'unica pecca è che il programma lo forniscono tutto completo ma puoi compilare fino ad un massimo di non ricordo quanti K di codice..le versioni free ti fregano sempre..
anche sul sito della microchip c'e' il fw per scrivere su mmc, unica pecca che bisogna mandare blocchi da 512byte per volta!!!!

ho visto che comunque non ha riscosso molto successo la mia idea, e cio' mi basta per orientarmi altrove, d' altronde la domanda era fatta per avere dei pareri da chi magari ci lavora da piu' tempo di me!!!
__________________
73 de davidea!!!
davidea non è collegato   Rispondi citando
Vecchio 10 marzo 06, 09:48   #10 (permalink)  Top
UserPlus
 
L'avatar di protomax
 
Data registr.: 21-02-2005
Residenza: TURIN 45N 7E
Messaggi: 1.951
Invia un messaggio via MSN a protomax
Citazione:
Originalmente inviato da davidea
anche sul sito della microchip c'e' il fw per scrivere su mmc, unica pecca che bisogna mandare blocchi da 512byte per volta!!!!

ho visto che comunque non ha riscosso molto successo la mia idea, e cio' mi basta per orientarmi altrove, d' altronde la domanda era fatta per avere dei pareri da chi magari ci lavora da piu' tempo di me!!!
E vabbe meglio che niente 512 byte per blocco non sono pochi per un microC
__________________
C'e' chi vola con l'elettronica e chi fa volare l'elettronica ... entrambi volano.
________________________________________________
ProtoMax proudly present: ProtoMeter 2
32bit ARM core + ZigBee Radio all in one Telemetry system
... Next on this forum
protomax non è collegato   Rispondi citando
Rispondi

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato




Tutti gli orari sono GMT +2. Adesso sono le 09:17.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002