Project showcase

Unique Arduino TFT Shield - OV7670 Cam Live View © GPL3+

Connecting OV7670 camera to Arduino Uno + TFT shield and viewing live video from the camera on a TFT shield screen.

  • 9,531 views
  • 8 comments
  • 15 respects

Components and supplies

Ph a000066 iso (1) ztbmubhmho
Arduino UNO
×1
TFT shield for Arduino
×1
Camera OV7670 (without FIFO)
×1

About this project

Unique TFT Shield for Arduino Uno. OV7670 camera live video (continued)

Hello! Today's article is a continuation of the previous article. Earlier, I started talking about a unique TFT shield for the Arduino platform. Today, I would like to demonstrate the new features of this shield: I connected the regular camera OV7670 (without FIFO) to the TFT shield and are viewing live video from the camera on the TFT screen. Demo video here. To be continued.

P.S. If you like or are interested in this topic, please rate my article. Perhaps your assessment will speed up the next article. :-) Thanks for attention.

Previous article:

1) Unique TFT Shield for Arduino Uno - Start.

Next articles:

2) Arduino Bluetooth Camera (ABC),

3) TFT shield for Arduino Nano - Start,

4) Photos and RGB video on TFT SPI display.

Update 01.04.2021:

Hello again! There is an updated library for a series of screens, which currently consists of two shields and two breakout boards. The sketch is compiled depending on the selected version (from 1 to 4) and the type of microcontroller (MegaAVR or ESP-32). Added photos, examples. More information can be found in the https://github.com/Ekaburg/EkaTFT.

Code

OV7670 regsC/C++
#ifndef OV7670_REGS_H
#define OV7670_REGS_H

const uint8_t OV7670_VGA[][2] PROGMEM =
{
    {   1, 0x42}, // Size of byte, Address (ID) 
    { 640/16,  480/16}, // Size X, Size Y
    {0b01000010, 0b00000100}, // Reset_Enable_N, 7|6|5|4|3|Vsync Invert|Hsync Invert|0
    {0x3a, 0x0C},
    {0x40, 0xC0},
    {0x12, 0x00},
    {0x0c, 0x00},
    {0x3e, 0x00},
    {0x70, 0x3A},
    {0x71, 0x35},
    {0x72, 0x11},
    {0x73, 0xF0},
    {0xa2, 0x02},
    {0x11, 0x80},
    {0x7a, 0x18},
    {0x7b, 0x02},
    {0x7c, 0x07},
    {0x7d, 0x1F},
    {0x7e, 0x49},
    {0x7f, 0x5A},
    {0x80, 0x6A},
    {0x81, 0x79},
    {0x82, 0x87},
    {0x83, 0x94},
    {0x84, 0x9F},
    {0x85, 0xAF},
    {0x86, 0xBB},
    {0x87, 0xCF},
    {0x88, 0xEE},
    {0x89, 0xEE},
    {0x13, 0xE0},
    {0x00, 0x00},
    {0x10, 0x00},
    {0x0d, 0x00},
    {0x24, 0x98},
    {0x25, 0x63},
    {0x26, 0xD3},
    {0x2a, 0x00},
    {0x2b, 0x00},
    {0x2d, 0x00},
    {0x13, 0xe5},
    {0x13, 0xe7},
    {0x1e, 0x30},
    {0x74, 0x60},
    {0x01, 0x80},
    {0x02, 0x80},
    {0x15, 0x10},
    {0x4f, 0x40},
    {0x50, 0x34},
    {0x51, 0x0C},
    {0x52, 0x17},
    {0x53, 0x29},
    {0x54, 0x40},
    {0x57, 0x80},
    {0x58, 0x1e},
    {0x41, 0x10},
    {0x75, 0x60},
    {0x76, 0x50},
    {0x77, 0x48},
    {0x3d, 0x92},
    {0x3b, 0x00},
    {0x04, 0x00},
    {0xff, 0xff},
};        

#endif
Camera_InitC/C++
Camera OV7670 init
/*
 * Arduino TFT_shield_v1.00 Camera OV7670 initialization example
 * 
 * Author: Kamil Lee (2019)
 * 
 * Comments: Camera OV7670 initialization
 * 
 * 
 */

#include <YATFT.h> // Hardware-specific library
#include <util/yacam.h>

#include "ov7670_regs.h"

YATFT tft(0);
CAM   cam;


/*******************************************************************************
*
*******************************************************************************/
void setup() {

    uint8_t state;

    // initialize the serial port
    Serial.begin(115200);
    Serial.println("Camera initialization example!");

    // initialize the display
    tft.begin();

    cam.CamInit(&OV7670_VGA[0][0]);
    cam.CamVideoPreview(0, 0, 1, true);
}

void loop()
{
}

Schematics

OV7670 datasheet

Comments

Similar projects you might like

Unique TFT Shield for Arduino Uno (Start)

Project showcase by Alf81010

  • 9,732 views
  • 7 comments
  • 24 respects

Coronavirus Live Updator

Project tutorial by Sai Chakradhar

  • 12,817 views
  • 17 comments
  • 47 respects

Security System Using Arduino Bluetooth Camera

Project tutorial by amrmostaafaa

  • 27,218 views
  • 14 comments
  • 41 respects

Touchless faucet with door control system for COVID-19

Project tutorial by Rucksikaa Raajkumar

  • 12,660 views
  • 15 comments
  • 38 respects

How to communicate two Arduinos via RS485

Project tutorial by Moreira

  • 9,765 views
  • 1 comment
  • 7 respects
Add projectSign up / Login