欢迎来到天天文库
浏览记录
ID:27852579
大小:25.50 KB
页数:4页
时间:2018-12-06
《利用Xilinx的XPS工具写的一个时钟程序.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、利用Xilinx的XPS工具写的一个时钟程序 1.GPIO外设的配置:(1)新建工程,添加duan,wei,Leds_8Bit三个GPio外设,并且将其与总线连接,设置地址和相应的长度。然后将添加的三个GPio端口在port下的GPio_d_out设置为makeExternal,用来产生外部GPIO连接。(2)在Project下点击UCF文件,添加相应的三个GPio外设的端口。然后在ApplicaTIon下双击CompilerOpTIons,在Environment下选择UseDefaultLinker,在DebugandO
2、pTImizaTIon下选择NoOptimization。(3)点击编译按钮,进行编译。 2.定时器和中断的配置:(1)在IPCatalog下的DMAandTimer中双击添加XPSTimer/Counter定时器,在Clock,ResetandInterrupt下双击XPSInterrupt......,添加中断。将定时器的名字改为delay,并且与总线相连接。在地址下点击GenerateAddresses,为其添加地址。(2)在port下输入timer1作为delay的interrupt连接Interrupt下拉为tim
3、er1。在microblaze_0下的INTERRUPT选择NewConnection,创建一个新的网络。(3)在Irq下选择microblaze_0_INTERRUPT。单击Intr,将弹出的窗口中的timer1添加到右边的窗口。(4)将delay下的CaptureTrig0设置为net_gnd。(5)双击delay,在弹出的窗口中将OnlyOneTimerispresent选中。(6)最后在Application下的Sources中右键添加写好的C文件。选择工具栏中DeviceConfiguration下的Update,进
4、行编译。编译完成后点击Download下载到EXCD-1板卡中。 3.扩展功能:按键控制时、分的加减。(1)首先添加按键的GPIO外设button,设置方法同第一步的方法相同。注意添加的时候不要忘了在system.ucf中添加其对应的端口。(2)然后在C程序中添加相应的代码。定义全局变量Xuint32DataRead;//读取按钮数XGpioPush_Bottons_4Bit;//定义GPIO按钮 在初始化函数中添加按键初始化语句: Status=XGpio_Initialize(&Push_Bottons_4Bit,X
5、PAR_BUTTON_DEVICE_ID);//GPIO_BUTTONS_4BIT初始化XGpio_SetDataDirection(&Push_Bottons_4Bit,1,0xFFFFFFFF);//设置为输入 添加按键扫描函数:voidkeyscan() {DataRead=XGpio_DiscreteRead(&Push_Bottons_4Bit,1);//读取按键信息if(DataRead==0x7)//第一个按键{XIntc_mMasterEnable(XPAR_XPS_INTC_0_BASEADDR);//关
6、闭中断XIntc_mEnableIntr(XPAR_XPS_INTC_0_BASEADDR,0x0);delay(400);DataRead=XGpio_DiscreteRead(&Push_Bottons_4Bit,1);//读取按键信息 if(DataRead!=0x7){shi++;if(shi==24)shi=0;XIntc_mMasterEnable(XPAR_XPS_INTC_0_BASEADDR);//再次打开中断XIntc_mEnableIntr(XPAR_XPS_INTC_0_BASEADDR,0x1);}
7、}//此处仅仅只有一种扫描,若要增加按键,即多增加几个if即可
此文档下载收益归作者所有