Files
Imants Pulkstenis d18a10f6ea Initial commit
Uploading to GitHub
2019-07-11 18:01:21 +03:00

45 lines
1.3 KiB
Verilog

module ov7670_controller (
input clk, // 25MHz input clk
inout ov7670_sda,
output ov7670_scl,
input resend,
output config_finished,
output ov7670_pwdn,
output ov7670_reset,
output ov7670_mclk );
//--------------wires and registers----------------------
wire [15:0] command;
wire finished;
wire taken;
localparam CAMERA_ADDR = 8'h42; // or 8'h21
//------------controls of camera-------------------------
assign ov7670_reset = 1'b1; // Normal mode
assign ov7670_pwdn = 1'b0; // Power device up
assign ov7670_mclk = clk;
assign config_finished = finished;
//-----------sub modules---------------------------------
i2c_sender i2c_sender (
.clk(clk),
.ov7670_sda(ov7670_sda),
.ov7670_scl(ov7670_scl),
.taken(taken),
.send(~finished),
.id(CAMERA_ADDR),
.register(command[15:8]),
.value(command[7:0]) );
ov7670_registers ov7670_registers (
.clk(clk),
.resend(resend),
.advance(taken),
.command(command),
.finished(finished) );
endmodule