实验 点阵显示
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2015-1-16
5
三、实验指导
实验过程中需注意的几点: 1)动态显示的方法是,按一定的频率轮流向各行中对应的列 送出低电平,点亮该点; 2)注意扫描计数器的频率变化对输出的影响;
2015-1-16
6
三、实验指导
module led_0_7 (clk,rst,dataout,en); input clk,rst; //系统时钟50M输入 从12脚输入。 output[7:0] dataout; //数码管的段码输出 output[7:0] en; //数码管的位选使能输出 reg[7:0] dataout; reg[7:0] en; reg[15:0] cnt_scan;//扫描频率计数器 reg[4:0] dataout_buf; always@(posedge clk or negedge rst) begin if(!rst) begin cnt_scan<=0; end else begin end always @(cnt_scan) begin case(cnt_scan[15:13]) 3'b000 : en = 8'b1111_1110; 3'b001 : en = 8'b1111_1101; 3'b010 : en = 8'b1111_1011; 3'b011 : en = 8'b1111_0111; 3'b100 : en = 8'b1110_1111; 3'b101 : en = 8'b1101_1111; 3'b110 : en = 8'b1011_1111; 3'b111 : en = 8'b0111_1111; default : en = 8'b1111_1110; endcase end
左边第二列
左边第一列
列选 择
3
一、实验要求
1、掌握点阵显示的硬件原理; 2、掌握点阵显示的编程方法; 3、利用硬件实验开发板去显示心形符号, 字母c,B,汉字“口”,“张”;
2015-1-16
4
二、实验内容
学会使用Quartus II进行数据点阵 显示; 用文本输入的方式完成点阵显示汉字, 字母等程序的设计,编译,并进行硬件测 试;
end
endcase
2015-1-16
8
四、实验报告
下课前整理出一份完整的实验报告,包括文字说明
和波形仿真截图、下载成功的截图。
1、实验中出现的问题及分析 2、波形仿真截图及分析 3、编程下载成功截图及管脚分析
2015-1-16
实验报告格式要求
9
Eda学习重点
了解FPGA/CPLD器件 掌握Quartus II软件的使用 掌握Verilog HDL语言及原理图输入 能够运用Quartus II进行设计和器件编程
2015-1-16
1
点阵行列显示原理
2015-1-16
2
点阵行列显示原理
行 选 择
跳帽J9要接上
第一行 第二行 . . . . . . 2015-1-16 第八行
8'b1110_1111: dataout_buf=4; 8'b1101_1111: dataout_buf=5; 8'b1011_1111: dataout_buf=6; 8'b0111_1111: dataout_buf=7; default: dataout_buf=8; always@(dataout_buf) begin //在点阵上面显示一个爱心需要的点阵代码,0点亮阵列 case(dataout_buf) 4'b0000: dataout=8'b11111111; 4'b0001: dataout=8'b11111111; 4'b0010: dataout=8'b10011001; 4'b0011: dataout=8'b01100110; 4'b0100: dataout=8'b01111110; 4'b0101: dataout=8'b10111101; 4'b0110: dataout=8'b11011011; 4'b0111: dataout=8'b1ቤተ መጻሕፍቲ ባይዱ100111; end endmodule endcase
cnt_scan<=cnt_scan+1; end
2015-1-16
7
三、实验指导
always@(en) //对应COM信号给出各段数据 begin case(en) 8'b1111_1110: dataout_buf=0; 8'b1111_1101: dataout_buf=1; 8'b1111_1011: dataout_buf=2; 8'b1111_0111: dataout_buf=3;