【SDK驱动开发1】中断的使用(以一个dma为例)



sdk中hw和bsp建立好后,以一个跑freertos的hello world模块开始开发,以下按照截止到20170922的经验来记录。


1.首先要安排好目录结构

初步想的话,本次代码大致可分为:1)一些ps侧低速接口(i2c,uart,sd)的驱动;2)交互界面的驱动;3)dma的驱动;

所以app/src下,建了三个目录,分别是drivers(用于放ps侧低速接口的驱动),console(用于放交互界面驱动),fpga(用于放pl侧dma的驱动,以及其他pl侧模块的驱动)。


2. drivers目录

如果默认用ps侧uart0,那么这一步可以忽略。


3.console目录

后面会单独写一个章节介绍交互界面的代码。


3.src目录

将ps侧irq的一些函数(例如scugic的初始化和配置,irq的connect函数(通用函数,其他中断都可以通过此函数连接至scugic),irq的配置函数(触发方式),irq的使能等)放在这个目录(可能还需要调整位置,暂时先放这里),文件名为ps_irq.c和ps_irq.h。

ps_irq.c中主要定义了如下几个函数:

    1)int32_t ps_irq_init_gic(),主要用于scugic的初始化,大致结构如下

    2)int32_t ps_irq_connect_irq(uint32_t Int_Id, xil_InterruptHandler Handler, void *CallBackRef)


。。。后续补充吧。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值