📄 sinwave.v
字号:
module sinwave(sclk,reset,waveval);
input sclk,reset;
output[7:0] waveval;
reg[7:0] waveval;
reg wave;
reg[7:0] wavenum;
/*always @(posedge sclk or negedge reset)
begin
if(!reset)
begin
wave <= 0;
end
else
begin
if(wavenum == 0)
begin
wave <= 0;
end
else if(wavenum == 'd180)
begin
wave <= 1;
end
end
end
always @(posedge sclk or negedge reset)
begin
if(!reset)
begin
wavenum <= 0;
wave <= 1;
end
else
begin
if(wave==1)
begin
wavenum <= wavenum + 1;
end
else
begin
wavenum <= wavenum - 1;
end
if(wavenum == 0)
begin
wave <= 1;
end
else if(wavenum == 'd180)
begin
wave <= 0;
end
end
end */
always @(posedge sclk or negedge reset)
begin
if(!reset)
begin
waveval <= 0;
wave <= 0;
wavenum <= 0;
end
else
begin
if(wave)
begin
wavenum <= wavenum - 1;
end
else
begin
wavenum <= wavenum + 1;
end
case(wavenum)
'd0:
begin
wave <= 0;
waveval <= 'd255;
end
'd1:
waveval <= 'd255;
'd2:
waveval <= 'd255;
'd3:
waveval <= 'd255;
'd4:
waveval <= 'd254;
'd5:
waveval <= 'd254;
'd6:
waveval <= 'd254;
'd7:
waveval <= 'd254;
'd8:
waveval <= 'd254;
'd9:
waveval <= 'd253;
'd10:
waveval <= 'd253;
'd11:
waveval <= 'd253;
'd12:
waveval <= 'd252;
'd13:
waveval <= 'd252;
'd14:
waveval <= 'd251;
'd15:
waveval <= 'd251;
'd16:
waveval <= 'd250;
'd17:
waveval <= 'd249;
'd18:
waveval <= 'd249;
'd19:
waveval <= 'd248;
'd20:
waveval <= 'd247;
'd21:
waveval <= 'd246;
'd22:
waveval <= 'd246;
'd23:
waveval <= 'd245;
'd24:
waveval <= 'd244;
'd25:
waveval <= 'd242;
'd26:
waveval <= 'd242;
'd27:
waveval <= 'd241;
'd28:
waveval <= 'd240;
'd29:
waveval <= 'd239;
'd30:
waveval <= 'd238;
'd31:
waveval <= 'd237;
'd32:
waveval <= 'd236;
'd33:
waveval <= 'd234;
'd34:
waveval <= 'd233;
'd35:
waveval <= 'd232;
'd36:
waveval <= 'd231;
'd37:
waveval <= 'd229;
'd38:
waveval <= 'd228;
'd39:
waveval <= 'd227;
'd40:
waveval <= 'd225;
'd41:
waveval <= 'd224;
'd42:
waveval <= 'd222;
'd43:
waveval <= 'd221;
'd44:
waveval <= 'd219;
'd45:
waveval <= 'd218;
'd46:
waveval <= 'd216;
'd47:
waveval <= 'd215;
'd48:
waveval <= 'd213;
'd49:
waveval <= 'd211;
'd50:
waveval <= 'd210;
'd51:
waveval <= 'd208;
'd52:
waveval <= 'd206;
'd53:
waveval <= 'd204;
'd54:
waveval <= 'd203;
'd55:
waveval <= 'd201;
'd56:
waveval <= 'd199;
'd57:
waveval <= 'd197;
'd58:
waveval <= 'd195;
'd59:
waveval <= 'd193;
'd60:
waveval <= 'd191;
'd61:
waveval <= 'd190;
'd62:
waveval <= 'd188;
'd63:
waveval <= 'd186;
'd64:
waveval <= 'd184;
'd65:
waveval <= 'd182;
'd66:
waveval <= 'd180;
'd67:
waveval <= 'd178;
'd68:
waveval <= 'd175;
'd69:
waveval <= 'd173;
'd70:
waveval <= 'd171;
'd71:
waveval <= 'd169;
'd72:
waveval <= 'd167;
'd73:
waveval <= 'd165;
'd74:
waveval <= 'd163;
'd75:
waveval <= 'd161;
'd76:
waveval <= 'd159;
'd77:
waveval <= 'd156;
'd78:
waveval <= 'd154;
'd79:
waveval <= 'd152;
'd80:
waveval <= 'd150;
'd81:
waveval <= 'd148;
'd82:
waveval <= 'd146;
'd83:
waveval <= 'd143;
'd84:
waveval <= 'd141;
'd85:
waveval <= 'd139;
'd86:
waveval <= 'd137;
'd87:
waveval <= 'd135;
'd88:
waveval <= 'd132;
'd89:
waveval <= 'd130;
'd90:
waveval <= 'd128;
'd91:
waveval <= 'd125;
'd92:
waveval <= 'd123;
'd93:
waveval <= 'd121;
'd94:
waveval <= 'd119;
'd95:
waveval <= 'd117;
'd96:
waveval <= 'd115;
'd97:
waveval <= 'd113;
'd98:
waveval <= 'd110;
'd99:
waveval <= 'd108;
'd100:
waveval <= 'd106;
'd101:
waveval <= 'd104;
'd102:
waveval <= 'd102;
'd103:
waveval <= 'd99;
'd104:
waveval <= 'd97;
'd105:
waveval <= 'd95;
'd106:
waveval <= 'd93;
'd107:
waveval <= 'd91;
'd108:
waveval <= 'd89;
'd109:
waveval <= 'd87;
'd110:
waveval <= 'd85;
'd111:
waveval <= 'd82;
'd112:
waveval <= 'd80;
'd113:
waveval <= 'd78;
'd114:
waveval <= 'd76;
'd115:
waveval <= 'd74;
'd116:
waveval <= 'd72;
'd117:
waveval <= 'd70;
'd118:
waveval <= 'd68;
'd119:
waveval <= 'd66;
'd120:
waveval <= 'd64;
'd121:
waveval <= 'd62;
'd122:
waveval <= 'd61;
'd123:
waveval <= 'd59;
'd124:
waveval <= 'd57;
'd125:
waveval <= 'd55;
'd126:
waveval <= 'd53;
'd127:
waveval <= 'd51;
'd128:
waveval <= 'd50;
'd129:
waveval <= 'd48;
'd130:
waveval <= 'd46;
'd131:
waveval <= 'd45;
'd132:
waveval <= 'd43;
'd133:
waveval <= 'd41;
'd134:
waveval <= 'd40;
'd135:
waveval <= 'd38;
'd136:
waveval <= 'd37;
'd137:
waveval <= 'd35;
'd138:
waveval <= 'd34;
'd139:
waveval <= 'd32;
'd140:
waveval <= 'd31;
'd141:
waveval <= 'd29;
'd142:
waveval <= 'd28;
'd143:
waveval <= 'd26;
'd144:
waveval <= 'd25;
'd145:
waveval <= 'd24;
'd146:
waveval <= 'd23;
'd147:
waveval <= 'd21;
'd148:
waveval <= 'd20;
'd149:
waveval <= 'd19;
'd150:
waveval <= 'd18;
'd151:
waveval <= 'd17;
'd152:
waveval <= 'd16;
'd153:
waveval <= 'd15;
'd154:
waveval <= 'd14;
'd155:
waveval <= 'd13;
'd156:
waveval <= 'd12;
'd157:
waveval <= 'd11;
'd158:
waveval <= 'd10;
'd159:
waveval <= 'd9;
'd160:
waveval <= 'd9;
'd161:
waveval <= 'd8;
'd162:
waveval <= 'd7;
'd163:
waveval <= 'd6;
'd164:
waveval <= 'd6;
'd165:
waveval <= 'd5;
'd166:
waveval <= 'd5;
'd167:
waveval <= 'd4;
'd168:
waveval <= 'd4;
'd169:
waveval <= 'd3;
'd170:
waveval <= 'd3;
'd171:
waveval <= 'd2;
'd172:
waveval <= 'd2;
'd173:
waveval <= 'd2;
'd174:
waveval <= 'd1;
'd175:
waveval <= 'd1;
'd176:
waveval <= 'd1;
'd177:
waveval <= 'd0;
'd178:
waveval <= 'd0;
'd179:
waveval <= 'd0;
'd180:
begin
wave <= 1;
waveval <= 'd0;
end
default:
;//wavenum <= 0;//waveval <= 0;
endcase
end
end
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -