mardi 20 novembre 2012

Utilisation du Square-Wave Output du DS1307

P1010221_r1024.JPG

P1010221_r1024.JPG

Le composant DS1307 de Maxim Integrated est une horloge temps réel série s'interfaçant sur un bus I2C. Le DS1307 offre également une sortie qui peut-être configurée en sortie logique ou en sortie de générateur de signal carré.

Bien que parfaitement documentée et simple d'utilisation, cette sortie est relativement peu utilisée. Cet article propose de l'exploiter en ajoutant quelques méthodes à la bibliothèque Arduino RTClib de JeeLabs.

Lire la suite

jeudi 8 novembre 2012

Utilisation de la RAM du DS1307

P1010221_r1024.JPG

P1010221_r1024.JPG

Le composant DS1307 de Maxim Integrated est une horloge temps réel série s'interfaçant sur un bus I2C. Outre sa fonction première, le DS1307 offre également quelques octets de mémoire vive (RAM) sauvegardés même en cas de coupure de l'alimentation, si toutefois une pile de sauvegarde est présente.

Bien que parfaitement documenté, cet espace mémoire est bien souvent oublié. Cet article propose de l'exploiter en ajoutant quelques méthodes à la bibliothèque Arduino RTClib de JeeLabs.

Lire la suite

mardi 26 juin 2012

ATmega TWI Bit Rate Generator Unit

Overview_of_the_TWI_Module_color.png

La plupart des microcontrôleurs megaAVR d'Atmel, dont l'ATmega328P, dispose d'un module I2C ou TWI. Celui-ci se décompose en plusieurs sous ensembles ou units :

  • Bit Rate Generator Unit ;
  • Bus Interface Unit ;
  • Address Match Unit ;
  • Control Unit.

Overview_of_the_TWI_Module_color.png

Cet article se focalise sur le Bit Rate Generator Unit et propose d'apprendre à le configurer sur un ATmega328P. Par conséquent, il n'a pas pour objectif de proposer une bibliothèque TWI complète, cette dernière étant en cours de développement.

Le Bit Rate Generator Unit contrôle la période du signal SCL en mode maître ou master. Cette période est déterminée par la configuration du bit rate dans le registre TWBR et du prescaler dans le registre TWSR.

Le bit rate est le débit binaire, c'est à dire le nombre de bits par seconde envoyés ou reçus sur le bus TWI. Le prescaler est un diviseur de fréquence. Il permet de diviser la fréquence CPU pour atteindre la fréquence SCL du bus TWI.

Lire la suite