📄 savecon.v
字号:
`timescale 1ns / 1psmodule savecon(clk, rst,date,but3,but4, counths, countvs, red, green, blue,addre2,web); input clk; input rst; input date; input [3:0] but3; input [3:0] but4; input [9:0] counths; input [9:0] countvs; output [2:0] red; output [2:0] green; output [1:0] blue;// output [14:0] addre1; output [14:0] addre2; output web; wire web; reg [2:0] red; reg [2:0] green; reg [1:0] blue; reg [14:0] addre1; reg [14:0] addre2; reg dateb; reg [14:0] m; reg [14:0] n; reg [14:0] y; reg [14:0] z; // reg [7:0] count160; reg [14:0] b;
reg [14:0] c;
//reg [14:0] bian; // reg [8:0] x;assign web=0;/* always@( posedge clk or negedge rst) begin if(!rst) addre2<=19199; else begin if(countvs>181 &&countvs<302) //qian bian 2 ge di dian ping begin if(counths>383 && counths<544) //qian bian 144 ge di dianping begin if(addre2==19199) addre2<=0; else begin dateb<=1; addre2<=addre2+1; end end else dateb<=0; end else dateb<=0; end end */always@( posedge clk or negedge rst) begin if(!rst) addre1<=19199; else begin if(countvs>181 &&countvs<302) //qian bian 2 ge di dian ping begin if(counths>383 && counths<544) //qian bian 144 ge di dianping begin if(addre1==19199) begin
addre1<=0;
dateb<=1;
end else begin dateb<=1; addre1<=addre1+1; end end else dateb<=0; end else dateb<=0; end end
always@( posedge clk or negedge rst) begin if(!rst) begin addre2<=0; z<=0; y<=0; //x<=0; n<=0; m<=0; //b<=0; end else begin if(countvs>181 &&countvs<302) //qian bian 2 ge di dian ping begin if(counths>383 && counths<544) //qian bian 144 ge di dianping begin if(but4==1 || but4==0 ||but4==2) begin if(addre1==0) begin y<=0; z<=0; m<=n; addre2<=n; if(but4==1 || but4==0) begin if(n==159 || n>159) n<=0; else begin if(but4==0) n<=n+1; else n<=n; end end else if(but4==2) begin if(n==0) n<=159; else n<=n-1; end end else begin if(addre1==160+y) begin y<=y+160; addre2<=160+m; m<=m+160; end else begin if((addre2+1)==(z+160)) begin addre2<=z; z<=z+160; end else addre2<=addre2+1; end end end else if(but4==3) begin if(addre1==0) begin if(n>19039) n<=0; else n<=n+160; addre2<=n; end else begin if(addre2==19199) addre2<=0; else addre2<=addre2+1; end end else if(but4==4) begin if(addre1==0) begin if(n>19040 ||n==0) n<=19040; else n<=n-160; addre2<=n; end else begin if(addre2==19199) addre2<=0; else addre2<=addre2+1; end end end end end end /* always@( posedge clk or negedge rst) begin if(!rst) begin red<=0; green<=0; blue<=0; end else begin if(counths<97) begin red<=0; green<=0; blue<=0; end else if(date==1 && dateb==1) begin red<=7; green<=0; blue<=0; end else begin red<=0; green<=0; blue<=3; end end end*/always@( posedge clk or negedge rst) begin if(!rst) begin
b<=160;
c<=159; red<=0; green<=0; blue<=0; end else begin if(counths<97) begin red<=0; green<=0; blue<=0; end
else if(dateb==1 &&((addre1>=0&&addre1<159)|| (addre1>19040&&addre1<19199)))
begin
red<=7; green<=1; blue<=0;
end
else if(dateb==1 &&(addre1==b)) begin
if(b==19040)
b<=160;
else
b<=b+160; red<=7; green<=1; blue<=0; end
else if(dateb==1 &&(addre1==c)) begin if(c==19199) c<=159; else c<=c+160; red<=7; green<=1; blue<=0; end else if(but3==0) begin if(date==1 && dateb==1) begin red<=7; green<=0; blue<=0; end else begin red<=0; green<=0; blue<=3; end end else if(but3==1) begin if(date==1 && dateb==1) begin red<=7; green<=0; blue<=0; end else begin red<=0; green<=7; blue<=0; end end else if(but3==2) begin if(date==1 && dateb==1) begin red<=0; green<=7; blue<=0; end else begin red<=1; green<=2; blue<=3; end end else if(but3==3) begin if(date==1 && dateb==1) begin red<=7; green<=0; blue<=0; end else begin red<=2; green<=5; blue<=1; end end else if(but3==4) begin if(date==1 && dateb==1) begin red<=0; green<=7; blue<=0; end else begin red<=0; green<=0; blue<=3; end end else if(but3==5) begin if(date==1 && dateb==1) begin red<=0; green<=0; blue<=3; end else begin red<=7; green<=0; blue<=0; end end else if(but3==6) begin if(date==1 && dateb==1) begin red<=3; green<=6; blue<=2; end else begin red<=1; green<=1; blue<=1; end end else if(but3==7) begin if(date==1 && dateb==1) begin red<=0; green<=0; blue<=3; end else begin red<=1; green<=1; blue<=0; end end else if(but3==8) begin if(date==1 && dateb==1) begin red<=0; green<=7; blue<=0; end else begin red<=0; green<=0; blue<=7; end end else if(but3==9) begin if(date==1 && dateb==1) begin red<=6; green<=2; blue<=1; end else begin red<=3; green<=1; blue<=3; end end else begin if(date==1 && dateb==1) begin red<=0; green<=1; blue<=1; end else begin red<=1; green<=2; blue<=3; end end end endendmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -