SCCB : Comprendre le bus de commande de caméra série
Aujourd’hui, on va voir en détail le SCCB, un protocole essentiel dans le monde des caméras embarquées et des modules image utilisés dans l’électronique embarquée. Le SCCB, ou Serial Camera Control Bus, est un bus de communication série conçu pour configurer et piloter les capteurs d’image, notamment dans les caméras CMOS courantes.
Qu’est-ce que le SCCB ?
Le SCCB est un protocole de communication série synchrone développé par OmniVision pour permettre le contrôle simple et efficace des capteurs de caméra. Souvent assimilé au bus I²C, il présente quelques particularités propres à son usage dans les caméras. Ce bus est notamment utilisé pour envoyer des commandes de configuration, comme le réglage de la résolution, de l’exposition, ou de la balance des blancs.
Caractéristiques techniques du SCCB
- Type de bus : série synchrone à 2 fils
- Lignes utilisées : SDA (données) et SCL (horloge)
- Topologie : bus multidrop, plusieurs périphériques possibles
- Mode de transfert : maître/esclave
- Vitesse : généralement jusqu’à 100 kHz, adaptée à la configuration, pas au transfert d’images
- Protocole de communication : similaire à I²C, avec des différences au niveau de l’adressage et de la temporisation
Fonctionnement et protocole
Le SCCB utilise deux lignes principales :
- SCL (Serial Clock Line) : gérée par le maître, elle synchronise le transfert des données.
- SDA (Serial Data Line) : bidirectionnelle, elle transporte les données de commande et les réponses.
Une transaction typique commence par un start condition, suivie de l’envoi de l’adresse de l’esclave (capteur caméra) avec un bit R/W pour indiquer une lecture ou écriture. Ensuite, les données sont transmises octet par octet, chaque octet étant suivi d’un bit d’acquittement (ACK) pour garantir la bonne réception.
Comparaison entre SCCB et I²C
Bien que proches, SCCB et I²C ne sont pas strictement identiques :
Caractéristique | SCCB | I²C |
---|---|---|
Adresse esclave | 7 bits, sans gestion de certains bits I²C standards | 7 ou 10 bits, conforme aux normes I²C |
Vitesses | Standard (jusqu’à 100 kHz) | Standard, Fast, High-Speed (jusqu’à plusieurs MHz) |
Signal d’acknowledgement | Présent, mais timings différents | Standard, timings normalisés |
Applications | Contrôle de capteurs image (caméras) | Usage général sur circuits intégrés |
Utilisation pratique du SCCB
Dans la plupart des modules caméra embarqués, le SCCB sert à écrire dans les registres du capteur d’image pour :
- Initialiser le capteur au démarrage
- Modifier la configuration de la capture (gain, exposition, format d’image)
- Lire certains états ou paramètres internes
Le maître, souvent un microcontrôleur ou un processeur embarqué, pilote ce bus via des GPIO ou un contrôleur I²C adapté. Par exemple, pour configurer un capteur OV7670, on envoie via SCCB une série d’octets qui vont définir la qualité et le mode d’image.
Exemple simplifié de transaction SCCB
- Start condition
- Envoi de l’adresse du capteur + bit écriture
- ACK du capteur
- Envoi de l’adresse du registre à configurer
- ACK du capteur
- Envoi de la donnée à écrire dans le registre
- ACK du capteur
- Stop condition
Ce protocole reste très simple mais efficace pour piloter les capteurs d’images, en minimisant le nombre de fils nécessaires.
Pour approfondir vos connaissances, n’hésitez pas à explorer comment l’I²C est implémenté dans les microcontrôleurs modernes, un sujet tout aussi passionnant et complémentaire.
Related Posts
- MUX – Multiplexeur : Fonction et Applications en Électronique
- HID – Comprendre le Périphérique d’Interface Humaine
- PIN – Diode PIN : Fonctionnement et Applications
- HPF – Filtre passe-haut : fonctionnement et applications
- PIR Sensor : Comprendre le Capteur Infrarouge Passif
- POT – Potentiomètre : principe et fonctionnement