`timescale 1ns / 1ps

module speaker_control(
    output audio_mclk,
    output audio_lrck,
    output audio_sck,
    output audio_sdin,
    input clk,
    input rst_n,
    input [15:0] audio_left,
    input [15:0] audio_right
    );
    
    frequency_div U_mclk(
      .clk_out(audio_mclk),
      .note_div(26'd2),
      .clk(clk),
      .rst_n(rst_n)
    );
    frequency_div U_lrck(
      .clk_out(audio_lrck),
      .note_div(26'd256),
      .clk(clk),
      .rst_n(rst_n)
    );
    frequency_div U_sck(
      .clk_out(audio_sck),
      .note_div(26'd8),
      .clk(clk),
      .rst_n(rst_n)
    );
    turn U_turn(
      .audio_sdin(audio_sdin),
      .audio_left(audio_left),
      .audio_right(audio_right),
      .audio_sck(audio_sck),
      .rst_n(rst_n)
    );
endmodule
