ZYNQ 用PL按鍵通過中斷控制PS端LED亮滅

2021-10-05 23:47:53 字數 2097 閱讀 9770

實現功能:pl端五個按鍵,可以觸發中斷,改變led燈的亮滅狀態

開發板:zedboard

axi interconnect:實際是乙個開關,管理和只會axi介面之間的通訊(包括一對

一、一對多、多對

一、多對多)

processing_system7_0:為整個處理器系統提供復位訊號

axi_gpio:軟核gpio,即由fpga搭建,而不是硬體出廠配置好的

axi_gpio:位寬1;中斷使能開啟;  自動連線之後位寬變為5

#define intc_device_id xpar_scugic_single_device_id //中斷控制器id

#define mio7_led 7 //ps端led

#define mio50_key 51 //按鍵

//axi_gpio中段號:61

#define axi_gpio_interrupt_id xpar_fabric_axi_gpio_0_ip2intc_irpt_intr

#define gpio_channel1 1 //axi_gpio通道1

xgpiops_config *configptr;

xscugic_config *intcconfig; /* instance of the interrupt controller */

xgpiops gpio; /* the driver instance for gpio device. */

xgpio axi_gpio; /* the instance of the gpio driver */

static xscugic intc; /* the instance of the interrupt controller driver */

void setupinterruptsystem(xscugic *gicinstanceptr, xgpio *axi_gpio,

u16 axi_gpiointrid);

void intrhandler();

u32 key_press = 0;

int main()

} return 0;

}void setupinterruptsystem(xscugic *gicinstanceptr, xgpio *axi_gpio,

u16 axi_gpiointrid)

void intrhandler()

ZYNQ筆記(4) PL觸發中斷

一 zynq中斷框圖 pl到ps部分的中斷經過icd控制器分發器後同時進入cpu1 和cpu0。從下面的 中可以看到中斷向量的具體值。pl到ps部分一共有20個中斷可以使用。其中4個是快速中斷。剩餘的16個是本章中涉及了,可以任意定義。如下表所示。二 zynq中斷分類 1.軟體中斷 sgi zynq...

中斷 按鍵控制LED燈

xjp的資源 初始化函式 init.c 進行一些初始化 include s3c24xx.h led1,led2,led4對應gpf4 gpf5 gpf6 define gpf4 out 1 define gpf5 out 1 define gpf6 out 1 define gpf4 msk 3 d...

32中斷控制按鍵點亮LED

設定pb11為下降沿觸發,初始化中斷模式 gpio inittypedef gpio initstructure exti inittypedef exti initstructure nvic inittypedef nvic initstructure 配置管腳時鐘和復用時鐘 rcc apb2p...