spugna85 Inserito: 21 febbraio 2007 Segnala Share Inserito: 21 febbraio 2007 Salve! Abbiamo un progettino da fare utilizzando un PIC18f452: dobbiamo interfacciare una RAM esterna parallela e verificarne il corretto funzionamento.Vorremmo qualche consiglio considerando che non conosciamo ancora il tipo di RAM che ci assegneranno e non abbiamo molta esperienza E' secondo voi possibile iniziare la scrittura del codice senza conoscere la RAM o ci conviene aspettare?Se avete qualche link che potrebbe esserci utile ve ne saremmo grati. Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 21 febbraio 2007 Segnala Share Inserita: 21 febbraio 2007 Dipende dal parallelismo della RAM (8, 16, 32) e dalla sua grandezza.Comunque parametrizzando i limiti di indirizzo e la larghezza di parola, se avete chiara la configurazione Hw, è possibile scrivere il softeare. Tra l'altro il test di una RAM è una cosa estremamente semplice. Si alternano, in scrittura, due valori: 0xAA e 0x55 che contengono 0101... e sono duali. SI scirve tutta la memoria, alternanandi i due valori; la si rilegge verificandone la corrispondenza. Si ripete scambiando l'ordine, cioè se si la prima volta si scrive 0xAA e 0x55, al secondo ciclo si scrive 0x55 e 0xAA. Link al commento Condividi su altri siti More sharing options...
spugna85 Inserita: 21 febbraio 2007 Autore Segnala Share Inserita: 21 febbraio 2007 Grazie dell'attenzione, vorremmo solo un chiarimento sulla verifica della corrispondenza: se noi dobbiamo leggere la nostra ram esterna piena, non la possiamo vedere completa nella ram interna del pic, quindi dobbiamo valutare in tempo reale 0xAA e 0x55 che si alternano in un registro specifico del pic dopo la singola lettura? se si quale? scusi se la domanda le risulta banale ma siamo alle prime armi. Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 21 febbraio 2007 Segnala Share Inserita: 21 febbraio 2007 Forse dovreste studiare come funziona un microprocessore-microcontrollore generico e come lavora il PIC in particolare. Tutte le operazioni si svolgono tramite i registri accomulatori. Nel PIC ne esiste uno, denominato W. Tutte le operazioni, se non sono sul bit, si svolgono su questo registro. Nel casospecifico potrebbe essere:--------------------MOVLW 0x55XORWF f dove f è la locazione di memoria in cui si è caricato il dato della RAM.Come caricare la RAM? dipende da come avete realizzato l'HW. Se ustate solo le porte del PIC per i leggere e scrivere i dati e per indirizzare la memoria si dovrà prima scrivere l'indirizzo sulle porte che sono state dedicate allo scopo e poi leggere la porta dedicata ai dati. Link al commento Condividi su altri siti More sharing options...
spugna85 Inserita: 22 febbraio 2007 Autore Segnala Share Inserita: 22 febbraio 2007 Il progettino è cambiato. Dobbiamo semplicemente creare un'interfaccia per la RAM e controllare che un dato da noi specificato possa essere scritto e letto correttamente in una determinata locazione di memoria. Abbiamo una Ram 32k x 8bit, quindi avremmo 23 pin del pic da connettere(15 indirizzo - 8 dati). Per evitare questa eccessiva occupazione dei pin abbiamo pensato di utilizzare 2 shift register da 8bit per l'indirizzamento, mentre per i dati manteniamo il parallelismo utilizzando un port (D). E' la soluzione ideale? Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora