MCF5270: come interfacciare un disposivito lento al microcontrollore della Freescale

MCF5270 Freescale: Viashimo vuole interfacciare un dispositivo lento (un ADC - ~1.2MHz) al microcontrollore MCF5270 della Freescale, che è un dispositivo piuttosto veloce (~ 150 MHz). Sta usando l'ADC0817 e gli stati massimi di attesa 15ws, che è di circa 107ns.

L'MCF5270 non supporta alcuna ulteriore attesa senza utilizzare il suo modello bus (che non supporta l'ADC).

In breve, Viashimo sta cercando suggerimenti per poter leggere i dati dal ADC0817.

Starblue gli risponde che è possibile attivare l'ADC attraverso alcuni GPIO, fare un numero adeguato di NOP e poi leggere il valore. Durante questo processo, gli interrupt devono essere disabilitati.

Jeff dice che la memoria mappata dovrebbe funzionare - normalmente lui aspetta l'interrupt dall'ADC, poi legge il byte dall'indirizzo specificato. Dal momento che si riceve un interrupt, non c'è bisogno di aspettare; ed anche GPIO dovrebbe funzionare. Per assicurarsi che l'ADC funzioni si può mettere un analizzatore logico sui dati e sull'interrupt per vedere se l'ADC produce l'output corretto.

Stephen Friederichs invece pensa che MMIO non funzioni perchè si deve usare più del numero massimo di stati di attesa sul bus per ottenere la glue logic per rispondere. Concorda sul funzionamento dei GPIO e gli consiglia di controllare le specifiche del datasheet.

I commenti e le risposte saranno molto apprezzati.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend