User`s manual

667 // allow user to adjust volume
668 wire vup,vdown;
669 reg old_vup,old_vdown;
670 debounce bup(.reset(reset),.clock(clock_27mhz),.noisy(~button3),.clean(vup));
671 debounce bdown(.reset(reset),.clock(clock_27mhz),.noisy(~button_down),.clean(vdown));
672 reg [4:0] volume;
673 always @ (posedge clock_27mhz) begin
674 if (reset) volume <= 5’d8;
675 else begin
676 if (vup & ~old_vup & volume != 5’d31) volume <= volume+1;
677 if (vdown & ~old_vdown & volume != 5’d0) volume <= volume-1;
678 end
679 old_vup <= vup;
680 old_vdown <= vdown;
681 end
682
683 // AC97 driver
684 lab5audio labaudio(clock_27mhz, reset, volume, from_ac97_data, to_ac97_data, ready,
685 audio_reset_b, ac97_sdata_out, ac97_sdata_in,
686 ac97_synch, ac97_bit_clock);
687
688 // writeSwitch UP to write, DOWN to read
689 wire writeSwitch;
690 debounce sw7(.reset(reset),.clock(clock_27mhz),.noisy(switch[3]),.clean(writeSwitch));
691
692 wire startSwitch;
693 debounce sw6(.reset(reset),.clock(clock_27mhz),.noisy(switch[2]),.clean(startSwitch));
694
695 wire memReset;
696 debounce benter(.reset(reset),.clock(clock_27mhz),.noisy(~button_enter),.clean(memReset));
697
698 wire audioTrigger;
699 debounce b3(.reset(reset),.clock(clock_27mhz),.noisy(~button0),.clean(audioTrigger));
700
701 wire [63:0] hexdisp;
702
703 // Receive and Playback module
704 audioManager management(
705 .clock(clock_27mhz),
706 .reset(memReset),
707
708 // User I/O
709 .startSwitch(startSwitch),
710 .audioSelector(percent_kept),
711 .writeSwitch(writeSwitch),
712 // .hexdisp(hexdisp),
103