欢迎来到天天文库
浏览记录
ID:33885993
大小:220.31 KB
页数:7页
时间:2019-03-01
《自定义外设数码管ip设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、鸿翔电子www.mcuhx.com实验二:SOPC设计4位7位数码管自定义外设接口设计一.实验目的:(1)进一步熟悉SOPC的设计流程;(2)学习自定义外设的基本设计方法。二.实验原理:一般一个自定义外设的接口部分,由以下几部分功能模块构成:逻辑功能,实现所要求的基本功能。寄存器文件,NiosCPU通过avalon总线访问LCD接口元件的各寄存器实现不同的操作。Avalon接口,提供Avalon总线所必需的信号,Nios通过这些信号访问寄存器。Component组成框图如下:命令寄存器AvalonSlave状态寄存器逻辑接口功
2、能数据发送寄存器数据接收寄存器当然对于一些接口部分比较简单的外设,也可以把这个三个模块功能合在一个模块中。三.实验步骤:3.1设计数管码外设模块新建QII工程。新建一个工程目录“sopc_seg”,在此目录下建立一个名为“sopc_seg”的QuartusII工程,并新建一个顶层图,保存于工程中。File->New->VerilogHDLfile新建一个Verilog文件。注:有关avalon总线规范请参考相关文档。数码管的avalon接口逻辑程序如下:moduleseg7led(clk,reset_n,chipselect,
3、address,write_n,writedata,read_n,readdata,seg_data,seg_com);inputclk;inputreset_n;inputchipselect;//片选(没用到)鸿翔电子www.mcuhx.cominputwrite_n;//alvalon总线上的写信号inputread_n;//alvalon总线上的读信号input[1:0]address;//alvalon总线上的地址线信号input[7:0]writedata;//alvalon总线上的写数据总线信号output[7:
4、0]readdata;//alvalon总线上的读数据总线信号output[7:0]seg_data;//数码管数据口output[3:0]seg_com;//数据管公共端口reg[7:0]outdata;reg[7:0]datain[3:0];reg[3:0]seg_com;reg[7:0]seg_data;reg[7:0]bcd_led;reg[36:0]count;assignreaddata=outdata;always@(posedgeclk)beginif(!reset_n)begindatain[0]<=8'h0
5、0000000;datain[1]<=8'h00000000;datain[2]<=8'h00000000;datain[3]<=8'h00000000;endelseif(!read_n)//读有效的时候发数据到总线outdata<=datain[address];elseif(!write_n)//写有效时//通过地址线来选择写入4位数码管中的哪一位。datain[address]<=writedata;endalways@(posedgeclk)begincount=count+1;endalways@(count[14
6、:13])//数码管扫描begincase(count[14:13])鸿翔电子www.mcuhx.com2'b00:beginbcd_led=datain[0];seg_com=4'b1110;end2'b01:beginbcd_led=datain[1];seg_com=4'b1101;end2'b10:beginbcd_led=datain[2];seg_com=4'b1011;end2'b11:beginbcd_led=datain[3];seg_com=4'b0111;endendcaseend/***********
7、***************************************************--DESCRIPTION:BINtosevensegmentsconverter--segmentencoding--a--+---+--f
8、
9、b--+---+<-g--e
10、
11、c--+---+--d--Outputs(data_out)active:low**************************************************************/always@(seg_comorbcd_le
12、d)begincase(bcd_led[3:0])4'h0:seg_data=8'hc0;//04'h1:seg_data=8'hf9;//14'h2:seg_data=8'ha4;//24'h3:seg_data=8'hb0;//34'h4:seg_data=8'h99;/
此文档下载收益归作者所有