当前位置:首页 > 片上电子信息系统,基于EDA的FPGA,串口通信及串口中断
Net sys_rst_pin TIG;
## IO Devices constraints
#### Module RS232 constraints
# Net fpga_0_RS232_RX_pin LOC=; # Net fpga_0_RS232_TX_pin LOC=;
#### Module LEDS constraints
# Net fpga_0_LEDS_GPIO_d_out_pin<0> LOC=; # Net fpga_0_LEDS_GPIO_d_out_pin<1> LOC=; # Net fpga_0_LEDS_GPIO_d_out_pin<2> LOC=; # Net fpga_0_LEDS_GPIO_d_out_pin<3> LOC=; # Net fpga_0_LEDS_GPIO_d_out_pin<4> LOC=; # Net fpga_0_LEDS_GPIO_d_out_pin<5> LOC=;
Net sys_clk_pin LOC=H17; Net sys_rst_pin LOC=AD4; ## System level constraints
Net sys_clk_pin TNM_NET = sys_clk_pin;
TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 50000 ps; Net sys_rst_pin TIG;
## IO Devices constraints
#### Module RS232 constraints
Net fpga_0_RS232_RX_pin LOC=N8; Net fpga_0_RS232_TX_pin LOC=R8;
#### Module LEDS constraints
Net fpga_0_LEDS_GPIO_d_out_pin<0> LOC=AG6; Net fpga_0_LEDS_GPIO_d_out_pin<1> LOC=AG5; Net fpga_0_LEDS_GPIO_d_out_pin<2> LOC=AF5; Net fpga_0_LEDS_GPIO_d_out_pin<3> LOC=AF6; Net fpga_0_LEDS_GPIO_d_out_pin<4> LOC=AE7; Net fpga_0_LEDS_GPIO_d_out_pin<5> LOC=AE6;
#### Module SW constraints
Net SW_GPIO_in_pin<0> LOC=AG7; Net SW_GPIO_in_pin<1> LOC=AH5; Net SW_GPIO_in_pin<2> LOC=AH7;
17
Net SW_GPIO_in_pin<3> LOC=AJ6; Net SW_GPIO_in_pin<4> LOC=AJ7; Net SW_GPIO_in_pin<5> LOC=AK6;
#### Module CTRL constraints
Net CTRL_GPIO_d_out_pin<0> LOC=C13;## IO16 piN Net CTRL_GPIO_d_out_pin<1> LOC=H15;## IO17 piN
.c文件:
#include \#include \
//此处中实验指导要求#include \但是该文件只定义了XGpio_mGetDataReg函数,并无其他我们将要用到的函数 //而#include \中有如下字符段“
//#include \ //#include \ //#include \
//符合其它函数的调用需求,所以改用#include \ #define XPAR_LEDS_DEVICE_ID 0 main() {
XGpio leds_out;//指向GPIO
XGpio_Initialize (&leds_out, XPAR_LEDS_DEVICE_ID);
//int XGpio_Initialize(XGpio *InstancePtr, u16 DeviceId); //对象的指针 XGpio_SetDataDirection (&leds_out, 1, 0x00);
//XGpio *InstancePtr, unsigned Channel,u32 DirectionMask
//确定如何设置GPIO信号为输出,通过调用XGpio_SetDataDirection函数实现。
int volatile i; while(1) { XGpio_DiscreteWrite(&leds_out, 1, 0x3F);//(XGpio *InstancePtr, unsigned Channel, u32 Mask); */ for(i=0;i<1000000;i++); XGpio_DiscreteWrite(&leds_out, 1, 0x00); for(i=0;i<1000000;i++); } }
18
实验结果:六盏LED灯循环往复,间歇性亮灭。实验结果符合任务要
求。
19
2.2 任务二 2.2.1 实验目的
PC机通过串口RS232控制6盏LED灯,如果上位机发送‘1’
(char),则LED亮,并且FPGA通过串口给PC机发送字符串“LED ON!”,否则LED灭,FPGA通过串口向PC机发送字符串“LED OFF!”。//串口助手
2.2.2 实验内容:
建立一个包含下列IP的处理器系统:
1、 硬件环境沿用任务一
2、 设定任务一中建立的UART参数
20
共分享92篇相关文档