Senzor SXGA CMOS color OV9665#
Interfațarea camerei#
Modulul camerei are 24 de pini pe conectorul său plat (FPC). Mai jos este prezentată configurația pinilor pentru modulul camerei. Pinul 1 este cel mai din dreapta pin de pe FPC, cu modulul camerei orientat cu partea dreaptă în sus.
Pin | Semnal | Pin | Semnal |
|---|---|---|---|
1 | NC | 13 | XCLK |
2 | AGND | 14 | Y8 |
3 | SIO_D | 15 | DGND |
4 | AVDD | 16 | Y7 |
5 | SIO_C | 17 | PCLK |
6 | RESET | 18 | Y6 |
7 | VSYNC | 19 | Y2 |
8 | PWDN | 20 | Y5 |
9 | HREF | 21 | Y3 |
10 | NC | 22 | Y4 |
11 | DVDD | 23 | Y1 |
12 | Y9 | 24 | Y0 |
Control alimentare#
Trebuie să furnizați 2.8V până la 3.0V pinului AVDD și 1.8V până la 3.0V pinului DVDD. Ar trebui să alimentați pinii AVDD și DVDD folosind surse de alimentare separate cu zgomot redus. În plus, pinii AGND și DGND ar trebui să fie separați cât mai mult timp posibil în configurația dumneavoastră pentru o calitate bună a imaginii.
Treceți pinul RESET la nivel scăzut pentru a reseta modulul camerei.
Treceți pinul PWDN la nivel ridicat pentru a opri modulul camerei în modul de oprire a alimentării.
Magistrală de control#
Pinii SIO_D și SIO_C sunt utilizați pentru a controla modulul camerei. Pinul SIO_D este pinul de date al magistralei de control, iar pinul SIO_C este pinul de ceas al magistralei de control. Consultați secțiunea initialization pentru mai multe detalii.
Magistrală de date#
Pinii de la Y0 până la Y9 de pe modulul camerei formează o magistrală de date pe 10 biți. Pentru modul RGB565 și YUV422, Y0 și Y1 nu sunt utilizați. Y2 până la Y9 sunt utilizați pentru a trimite un octet pe 8 biți, unde Y2 este LSB și Y9 este MSB.
În timp ce pinul HREF este la nivel înalt, Y2 până la Y9 sunt valide. La frontul crescător al pinului PCLK, Y2 până la Y9 ar trebui eșantionate. Fiecare pixel este transferat în 2 impulsuri PCLK. În modul SXGA, pinul PCLK va trece la nivel înalt de 2,560 de ori în timp ce pinul HREF este la nivel înalt, iar pinul HREF va trece la nivel înalt de 1024 de ori. În modul VGA, pinul PCLK va trece la nivel înalt de 1,280 de ori în timp ce pinul HREF este la nivel înalt, iar pinul HREF va trece la nivel înalt de 480 de ori. Rezoluția SXGA este de 1280x1024 pixeli, iar rezoluția VGA este de 640x480 pixeli.
Pinul VSYNC va trece la nivel ridicat și apoi la nivel scăzut pentru a marca începutul fiecărui cadru.
În modul RGB565, modulul camerei va trimite [MSB {R4, R3, R2, R1, R0, G5, G4, G3} LSB] la fiecare tact impar și [MSB {G2, G1, G0, B4, B3, B2, B1, B0} LSB] la fiecare tact par pentru fiecare pixel.
În modul YUV422, modulul camerei va trimite date YUV pe 8 biți, unde U și V sunt trimise la jumătate din lățimea de bandă. Modulul camerei trimite Y0 la primul tact, urmat de U la al doilea tact, urmat de Y1 la al treilea tact, urmat de V la al patrulea tact și apoi repetă modelul. Y0, U și V formează pixel0, iar Y1, U și V formează pixel1. Doi pixeli sunt trimiși la fiecare patru tacturi.
Inițializarea camerei#
Pentru a controla modulul de cameră OV9665 trebuie să comunicați cu acesta folosind protocolul SCCB – care este exact același cu protocolul I2C. Adresele slave ale dispozitivului sunt 0x60 pentru scriere și 0x61 pentru citire. Pentru a inițializa camera trebuie să scrieți 0x80 în registrul 0x12 pentru a reseta camera și apoi să așteptați o secundă. După aceea trebuie să trimiteți setările registrelor de inițializare. Rețineți că modulul de cameră necesită un semnal de ceas de 10 MHz până la 24 MHz (de obicei 24 MHz) pe pinul său XCLK pentru a funcționa.
Inițializare SXGA#
Pentru a inițializa camera pentru modul SXGA trimiteți următoarele setări de registre. Pentru a seta rata de cadre în modul SXGA scrieți următoarele valori la adresa registrului 0x11: 0x80 pentru 15 FPS, 0x81 pentru 7.5 FPS, 0x82 pentru 5 FPS, 0x83 pentru 3.75 FPS, 0x84 pentru 3 FPS etc. când XCLK este condus la 24 MHz. NOTĂ: Valoarea FPS nu poate fi prea mică, altfel camera nu va funcționa corect.
Inițializare VGA#
Pentru a inițializa camera pentru modul VGA trimiteți următoarele setări de registre. Pentru a seta rata de cadre în modul VGA scrieți următoarele valori la adresa registrului 0x11: 0x80 pentru 30 FPS, 0x81 pentru 15 FPS, 0x82 pentru 10 FPS, 0x83 pentru 7.5 FPS, 0x84 pentru 6 FPS etc. când XCLK este condus la 24 MHz. NOTĂ: Valoarea FPS nu poate fi prea mică, altfel camera nu va funcționa corect.
Mod de culoare#
Odată ce camera este inițializată fie în modul SXGA, fie VGA, la o anumită rată de cadre, trebuie apoi să configurați formatul de ieșire de culoare al camerei. Puteți utiliza fie RGB565, fie YUV422. Trimiteți aceste setări de registru pentru a intra în modul RGB565 și aceste setări de registru pentru a intra în modul YUV422.