Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

RAM esterna PIC18?

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

1
voti

[1] RAM esterna PIC18?

Messaggioda Foto Utentegiovannispina » 6 giu 2014, 18:03

Salve ragazzi!
Stavo implementando alcune funzioni di base per uno schermo LCD (Nokia6100) e ho notato che, a 64MHz, il rendering è comunque lento per i miei standard per quanto gli algoritmi siano ottimizzati. Avevo intenzione di evitare questa piccola lentezza implementando un frame buffer, ma non appena ho scritto
Codice: Seleziona tutto
uint16 frame_buffer[132][132];
ho realizzato che il PIC non aveva abbastanza RAM per una cosa simile. :lol:

Il mio dubbio è questo:
Ho dato un occhiatina all'AN869 e pare proprio che io possa estendere la RAM del mio PIC utilizzando l'EMI. Vale la pena estendere la RAM? Non è che anche la lettura/scrittura su RAM esterna comporti qualche ritardo?

Cioè a me non interessa molto estendere la RAM, mi interessa più che altro velocizzare il rendering e quindi, se quella esterna mi va lenta, non me ne faccio niente. Sapete qualcosa a riguardo?
Avatar utente
Foto Utentegiovannispina
126 1 3
 
Messaggi: 43
Iscritto il: 27 lug 2013, 12:31

1
voti

[2] Re: RAM esterna PIC18?

Messaggioda Foto Utentedemos81 » 12 giu 2014, 11:36

Ciao, premetto che ahimé non ho la soluzione, ma mi sto documentando perché trovo l'argomento interessante.
se ho ben capito tu vorresti :

- accedere in modalità Extended Microcontroller Mode o Microprocessor with Boot Block Mode a una memoria esterna usandola come espansione di quella programma

- a partire da dove finisce il tuo programma inserire la matrice di dati uint [132][132] e usarla in lettura e scrittura secondo quanto scritto nelle modalità del paragrafo 6.0 del EXTERNAL MEMORY INTERFACE del datasheet PIC18F6520/8520/6620/8620/6720/8720

ho capito bene?

Sinceramente non so esattamente il PIC a cui ti riferisci ma per questi di cui ho sfogliato il datasheet parla di limite di Fosc di 25 MHz se usi queste modalità.
che PIC hai per le mani? di che velocità necessiti?

Se possiamo magari ci aiutiamo a vicenda e impariamo una cosa nuova in più entrambi.
Avatar utente
Foto Utentedemos81
1.479 1 6 8
Expert EY
Expert EY
 
Messaggi: 601
Iscritto il: 16 mar 2009, 20:56

0
voti

[3] Re: RAM esterna PIC18?

Messaggioda Foto Utentegiovannispina » 28 giu 2014, 14:38

Ciao, grazie per avermi risposto. Purtroppo ho trovato un altro modo per evitare di usare la memoria esterna. Ho scoperto che lo schermo LCD in questione, oltre ad avere una ram, faceva da se il controllo se il pixel era cambiato o meno. Con qualche modifica al codice sono riuscito a renderlo meno "lento".

Dopo qualche ricerca su internet sono arrivato alla conclusione che usare memorie esterne non è la migliore delle soluzioni a meno che non si abbiano interfacce parallele. Se avessi voluto fare lettura e scrittura per confrontare pixel per pixel avrei impiegato il doppio del tempo della sola scrittura su schermo. Inoltre credo che la miglior soluzione nei casi in cui la memoria non basti è proprio quella di cambiare MCU.

Comunque sì, prima avevo intenzione di usare l'8520 l'EMI con un osc. di 25MHz (avevo provato lo stesso codice con 64MHz con un PIC diverso) ma adesso non mi serve più, grazie lo stesso.
Avatar utente
Foto Utentegiovannispina
126 1 3
 
Messaggi: 43
Iscritto il: 27 lug 2013, 12:31


Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti