没有合适的资源?快使用搜索试试~ 我知道了~
实验十_1181002038_张璐矾1
需积分: 0 0 下载量 134 浏览量
2022-08-08
20:05:55
上传
评论
收藏 1.26MB DOCX 举报
温馨提示
试读
12页
实验十_1181002038_张璐矾1
资源详情
资源评论
资源推荐
电子设计自动化(EDA)实验报告
实验十一
1. 实验内容
实现点阵的汉字显示:张
2. 代码
module seven(clk,reset,row,col);
input clk;
input reset;
output reg [15:0] row; //行
output reg [3:0] col;//列
initial col=4'b0;
parameter [2:0]s1=000;
parameter [2:0]s2=001;
parameter [2:0]s3=010;
parameter [2:0]s4=011;
reg[6:0]data;
reg [2:0]current_state;
reg [2:0]next_state;
reg divi_50hz;
reg [24:0] count_reg1; //定义一个 25 位的计数值
always@(posedge clk)
if(count_reg1==25'd24999) //(50Mhz / 50hz)/ 2 - 1
begin
divi_50hz <= ~ divi_50hz; //高低电平翻转
count_reg1 <= 25'd0; //计数值清零
end
else
begin
count_reg1 <= count_reg1 + 25'd1;
end
always @(posedge clk)
begin
if (!reset) col<=4'b0;
else
begin //利用计数器产生列的 16 种编码:0000-1111
if(col<15) col<=col+1;
else col<=4'b0000;
end
end
//reg [2:0]count;
always@(posedge divi_50hz)
begin
current_state<=next_state;
end
always@(posedge divi_50hz)
begin
case(current_state)
s1:next_state<=s2;
s2:next_state<=s3;
s3:next_state<=s4;
s4:next_state<=s1;
default:next_state<=s1;
endcase
end
always@(posedge divi_50hz or negedge reset)
begin
case(current_state)
s1:
begin
if (!reset) row<=16'b0;
else
begin
case (col)
4'b0000: row<=16'b0001000001000000; //第 1 列
4'b0001: row<=16'b0001000010000000; //第 2 列
4'b0010: row<=16'b0001000100000000; //3
4'b0011: row<=16'b0001001111111111; //4
4'b0100: row<=16'b0001110000000010; //5
4'b0101: row<=16'b0011000010000010; //6
4'b0110: row<=16'b1101000010000010; //7
4'b0111: row<=16'b0001000010000010; //8
4'b1000: row<=16'b0001000010000010; //9
4'b1001: row<=16'b0001011111111110; //10
4'b1010: row<=16'b0001000010000010; //11
4'b1011: row<=16'b0001000010000010; //12
4'b1100: row<=16'b0001000010000010; //13
4'b1101: row<=16'b0001000010000010; //14
4'b1110: row<=16'b0001000000000010; //15
4'b1111: row<=16'b0000000000000000; //16
default:row<=16'b0000000000000000;
endcase
end
end
s2:
begin
if (!reset) row<=16'b0;
else
begin
case (col)
4'b0000: row<=16'b0000001000000000; //第 1 列
4'b0001: row<=16'b0000001000000000; //第 2 列
4'b0010: row<=16'b1000001000000000; //3
4'b0011: row<=16'b1000001000000000; //4
4'b0100: row<=16'b1000001000000000; //5
4'b0101: row<=16'b1000001000000000; //6
4'b0110: row<=16'b1000001000000000; //7
4'b0111: row<=16'b1111111111111110; //8
4'b1000: row<=16'b1000001000000000; //9
4'b1001: row<=16'b1000001000000000; //10
4'b1010: row<=16'b1000001000000000; //11
4'b1011: row<=16'b1000001000000000; //12
4'b1100: row<=16'b1000001000000000; //13
4'b1101: row<=16'b0000001000000000; //14
4'b1110: row<=16'b0000001000000000; //15
4'b1111: row<=16'b0000000000000000; //16
default:row<=16'b0000000000000000;
endcase
end
end
s3:
begin
if (!reset) row<=16'b0;
else
begin
case (col)
4'b0000: row<=16'b0011111111110000; //第 1 列
4'b0001: row<=16'b0010000000100000; //第 2 列
4'b0010: row<=16'b0010000000100000; //3
4'b0011: row<=16'b0011111111110010; //4
4'b0100: row<=16'b0000000000001100; //5
4'b0101: row<=16'b0011111111110000; //6
4'b0110: row<=16'b0010001000010000; //7
剩余11页未读,继续阅读
BJWcn
- 粉丝: 29
- 资源: 294
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0