- Drivers
- ORbit16™
- PICMicro
- Risorse
- Servizi
- Software
- Add-In Excel 2003 per la conversione tra basi numeriche
- AquaGauge Control for .NET
- Conversione coordinate (+ sorgente)
- Custom Char HD44780
- Digital Caliper Readout
- Gargaroz
- IcoDrive
- JoyTester
- Macro Excel 2003 per formattare le tabelle con colorazione alternata delle righe pari e dispari
- Messenger Resources Extractor
- Phrase4Date MySQL Generator
- PICTimer
- RFID Reader
- Ripristina Mostra Desktop
- Rotopad
- Serial Tester
- SincroFF
- Info
Questo sito e tutto il suo contenuto sono distribuiti sotto la licenza Creative Commons Attribuzione - Non Commerciale - Non opere derivate 2.5 Italia e con le condizioni d'uso definite nel disclaimer: siete pregati di leggere entrambi questi documenti prima di usufruire dei contenuti di questo sito. Per alcuni contenuti è necessaria una registrazione gratuita: non è necessario pagare e non è necessario accumulare punteggi per accedere agli articoli e scaricare i sorgenti. Basta solo essere onesti. Se volete che questo sito continui a rimanere attivo, a contribuire ogni giorno alla diffusione della cultura libera, non copiate il materiale per ripubblicarlo in altri luoghi : chi fa questo è solo un miserabile e un perdente. Se volete partecipare su settorezero e rendere le vostre idee, i vostri progetti, fruibili da tutti senza limitazioni, come dovrebbe essere in un paese civile e acculturato, potete farlo tranquillamente.
i2c
Librerie PIC12 e PIC16 » I2C hardware per moduli MSSP (modalità master/slave)
Prerequisiti
PicMicro con modulo MSSP. Non è supportato il modulo SSP. Hitech C versione > 9.81
Utilizzo
Definire in i2c.h la frequenza del clock da utilizzare espressa in KHz, valori ammessi: 100, 400 e 1000:
#define CLOCK 400 // 400KHzDefinire in i2c.h la frequenza dell’oscillatore espressa in Hertz:
#define FOSC 32000000UL // 32MHzDefinire in i2c.h i due pin del modulo MSSP utilizzati come C:
#define SCL_PIN TRISA1 #define SDA_PIN TRISA2
Includere nel programma principale la chiamata a i2c.c:
#include "i2c.c"Inizializzare nel main il modulo:
I2cInitMaster(); // inizializzo il modulo MSSP in modalità master
Funzioni disponibili
void I2cInitMaster (void); // Init MSSP in Master mode void I2cInitSlave (const unsigned char address); // Init MSSP in Slave mode (indirizzo a 7 bit) void I2cWait(void); // Attesa flag interrupt su modulo MSSP void I2cWaitForIdle(void); // Attesa bus in stato idle void I2cStart(void); // Sequenza di start void I2cRepStart(void); // Sequenza di start ripetuto void I2cStop(void); // Sequenza di stop unsigned char I2cReadMaster(unsigned char ack); // Lettura in modalità Master unsigned char I2cWriteMaster(unsigned char I2cWriteData); // Scrittura in modalità Master unsigned char I2cReadSlave(); // Lettura in modalità Slave void I2cWriteSlave(unsigned char data); // Scrittura in modalità Slave
Nella versione 1.2 della libreria è disponibile la funzione aggiuntiva:
void I2cBulkRead(unsigned char devAddress, unsigned char regAddress, unsigned char numReads, unsigned char *buffer); // lettura bulk
La lettura bulk consente di eseguire la lettura di più registri del dispositivo slave in sequenza a partire dal registro definito da regAddress, vengono eseguite numReads letture consecutive e i risultati delle letture vengono memorizzate nell’array *buffer. L’indirizzo del dispositivo slave, devAddress, va definito come indirizzo a 7 bit
Download versione 1.0
| Routine Hardware I2C per moduli MSSP - Modalità Master e Slave - Ver 1.0 (5.88 kB - 26 downloads) |
Download versione 1.2
Questo download è riservato esclusivamente ai collaboratori. Questa versione ha in più unicamente la funzione I2cBulkRead che permette la lettura sequenziale comunque facile da implementare leggendo questo articolo.
| Routine Hardware I2C per moduli MSSP - Modalità Master e Slave - Ver 1.2 (6.29 kB - 5 downloads) |
I contenuti di settorezero.com sono distribuiti sotto una licenza Creative Commons Attribuzione-Non Commerciale-Non Opere derivate 2.5 Italia a cui vanno aggiunte le condizioni d'uso definite nel disclaimer.
settorezero.com e tutti i suoi contenuti sono tutelati dalla legge sul diritto d'autore per cui i trasgressori sono perseguibili a norma di legge.

Il tema di questo sito è basato sul tema Fusion per wordpress, realizzato originariamente da digitalnature e fa uso del plugin Wassup per il computo delle statistiche. Per contattare l'autore siete pregati di utilizzare la sezione contatti.
Per essere aggiornato con tutte le novità di settorezero.com seguici anche anche su Facebook Twitter Tumblr Blogspot Youtube.






