Home
Accesso / Registrazione

giazax

ritratto di giazax

User title

User

Cronologia

Membro da
1 anno 43 settimane

 

 

Ultimi POST

ritratto di giazax

pilotaggio ADC7680

Salve a tutti,

ritratto di giazax

Implementazione SPI Hardware

Salve a tutti,
dovrei interfacciare un pic18f con una scheda della ASD, su cui sono presenti ben tre sensori, il protocollo di comunicazione tra PIC e Scheda è SPI, mentre la "modalità SPI è TBD" (qualcuno può chiarirmi cosa significa esattamente?)...per poter interagire con la scheda ho dei "codici comando" con una descrizione di questo tipo

ritratto di giazax

Utilizzo del protocollo SPI per interfacciare PIC18F8723

Salve a tutti,
vorrei scrivere un semplice firmware (uso il linguaggio C con il compilatore C18) per interfacciare il PIC18F8723 con un giroscopio, l'L3G4200D della ST.....non conosco ancora bene il protocollo SPI per cui mi chiedevo se qualcuno si vuoi del FORUM mi potrebbe indicare un buon libro, tutorial o qualsiasi cosa (magari dei codici di esempio) che mi possano essere d'aiuto

Grazie

Ultimi Commenti

Grazie per le tue osservazioni...per quanto riguarda app è per l'appunto una inzializzazione...perchè dici che è sbagliato? un saluto
Ciao, premetto che non sono un firmwarista (..l'avrai capito :-) ) so per esperienza che e' meglio non utilizzare variabili globali...sia per questioni di leggibilita' del codice ma anche perche' con le variabili globali e' molto facile incorrere in errori...questo codice fa parte di un codice molto piu' complesso.....non fatto da me tranne che per alcune funzionalita'..... un saluto g.
salve, tbd era su un documento...che poi sono un paio di fogli che poi mi e' stato dato.....chiedendo in giro mi e' stato detto che devo usare le funzioni spi del compilatore c18.....e no il bit banging.....quello che non capisco e' che la funzione readspi legge solo un byte...mentre il mol dato e' composto da 4 byte....come faccio a leggerlo con questa funzione? perche' non posso usare il bit banging? grazie per i suggerimenti
...la routine l'ho fatta in c, ma se uso le funzioni della lbreria del c18 potrei utilizzare una cosa del tipo : writespi(istruzione di lettura sensore) dato1 = readspi() dato2 = readspi() dato3 = readspi() dato4 = readspi() poiche il dato in uscita e' di 4 byte, di cui il primo e proprio l'istruzione data, il 2 e il 3 sono i 16 bit della misura, mentre il 4 e il crc calcolato sui primi 3 .....? oppure devo pulire il registro di scorrimento del pic (16f8723)?....oppure non ho capito nulla? grazie per il tuo aiuto
SPI
Grazie mille, per i tuoi suggerimenti....ho pensato di provare i due modi, sia il bit banging, che il modulo mssp....che postero', e poi ci sono due cose che mi piacerebbe capire, il primo se i due metodi sono equivalenti per quanto riguarda le prestazioni, la seconda riguarda proprio la lettura di 32 bit in uscita...se cioe' basta la lettura in sequenza del buffer per riuscire a catturare tutti i dati che mi servono....non mi resta altro che imlementare le funzioni e fare delle prove....sperando di non fare errori
Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 10 utenti e 66 visitatori collegati.

Ultimi Commenti