预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PAGE-58- 程序 1.FPGA与ARM7的串口通信程序 modulePC104_EP1C12( clk_i0,//7.68M clk_i1,//40M rst_i,//外部复位输入(FPGA240脚) //------------------------------------------------ //MCU mcu_dat,//计算机数据位(DB0-DB7) mcu_adr,//计算机地址位(AB0-AB5) mcu_rd,//计算机读(PC104的NIOR信号) mcu_wr,//计算机写(PC104的NIOW信号) mcu_cs,//计算机片选(PC104的AEN信号) //------------------------------------------------ // LED, led,//61PIN //------------------------------------------------ //FIFO fifo_dat,//FIFO数据24位 fifo_wr,//FIFO写 fifo_ef,fifo_hf,fifo_ff,//FIFO空半满满信号 fifo_reset,//FIFO复位,数据清空 fifo_rd1,//低16位读, fifo_rd2,//高16位读, //------------------------------------------------ //testpoint t1,t2,t3,t4,t5,t6,t7,t8,t9,//测试点TP1-TP9 initd, ); //------------------------------------------------------- inputclk_i0,clk_i1; inputrst_i; inputinitd; //------------------------------------------------------- inout[7:0] mcu_dat; input[5:0]mcu_adr; input mcu_rd; input mcu_wr; input mcu_cs; wire mcu_cs; //------------------------------------------------------- outputt1,t2,t3,t4,t5,t6,t7,t8; inputt9; //------------------------------------------------------- output [23:0]fifo_dat;//FIFO数据24位 output fifo_wr;//FIFO写 input fifo_ef,fifo_hf,fifo_ff;//FIFO空半满满信号 output fifo_reset;//FIFO复位,数据清空 output fifo_rd1;//低16位读, output fifo_rd2;//高16位读, wire[2:0]fifo_status;//FIFO状态寄存器 reg[7:0]mcu_dat_i; reg[23:0]fifo_dat_i; regfifo_reset_i; reg[23:0]fifo_counter;//FIFO计数器24位 reg[7:0]reg_test,reg_test2;//测试寄存器 reg[7:0]reg_counter;//测试计数器 outputled; regfifo_wr_clk; wire reset=rst_i; wire[2:0]statu; wireclk; assignclk=clk_i1; assignled=fifo_ff; assignt3=fifo_rd1; assignt6=fifo_rd2; assignfifo_status[0]=fifo_ef; assignfifo_status[1]=fifo_hf; assignfifo_status[2]=fifo_ff; assignfifo_wr=fifo_wr_clk; assignfifo_reset=fifo_reset_i&reset;//命令控制或复位控制FIFO清空 assignfifo_rd1=mcu_rd|mcu_cs|(mcu_adr[5:0]!=6'h00);//读取[15:0]位FIFO数据 assignfifo_rd2=mcu_rd|mcu_cs|(mcu_adr[5:0]!=6'h02);//读取[23:16]位FIFO数据 assignmcu_dat=(mcu_rd|mcu_cs)?16'hzzzz:mcu_dat_