EDK学习笔记——C函数整理
来源:互联网 发布:单片机花贲浇花 编辑:程序博客网 时间:2024/06/06 20:40
XGpio_Initialize( XGpio * InstancePtr,u16 DeviceId) ;
InstancePtr:指向设备的指针(自己定义),
DeviceId:设备id,xparameters.h中找到。
返回:XST_SUCCESS(成功),XST_DEVICE_NOT_FOUND(失败)。
XGpio_SetDataDirection(XGpio * InstancePtr,unsigned Channel,u32 DirectionMask) ;
Channel:通道(1或2),
DirectionMask:标志设备输入输出(1为输入,0为输出)。
XGpio_DiscreteRead(XGpio * InstancePtr,unsigned Channel);读取InstancePtr指向寄存器的值
返回:读取的数值
XGpio_DiscreteWrite(XGpio * InstancePtr,unsigned Channel,u32 Data) ;
Data:将要写入InstancePtr指向寄存器的值。
XGpio_mSetDataReg(BaseAddress, Channel, Data) ;往GPIO置数。
Data:写入寄存器的数据。
XIntc_RegisterHandler(Xuint32 BaseAddress, int InterruptId, XInterruptHandler Handler, void *CallBackRef)
InterruptId是中断ID号,格式为XPAR_<产生中断的元件的实例名>_<中断信号名> _INTR,xparameter.h中找到,
Handler是中断函数名,用户定义,
CallBackRef被用来传递参数(中断函数被调用时),不用为0或NULL,外部中断时用NULL,
int XIntc_Connect (XIntc *InstancePtr,u8 Id,XInterruptHandler Handler,void *CallBackRef)也可完成类似功能。
XIntc_mMasterEnable(BaseAddress); 使能所有在master enable寄存器中的中断。
XIntc_mMasterDisable(BaseAddress); 禁止所有的中断。
XIntc_mEnableIntr(BaseAddress,EnableMask);
EnableMask:写入寄存器的32bit值,每bit都对应着中断控制器的中断输入,设置为1的bits对应设备进行中断。
XIntc_mDisableIntr(BaseAddress,DisableMask) ;
EnableMask:写入寄存器的32bit值,每bit都对应着中断控制器的中断输入,设置为1的bits对应设备中断禁止。
XTmrCtr_mSetLoadReg(BaseAddress,TmrCtrNumber,RegisterValue);设置时间计数器的LoadReg值。
TmrCtrNumber:8bits,时钟定时器,0到(XTC_DEVICE_TIMER_COUNT-1)。
RegisterValue:写入寄存器的32bit值。
XTmrCtr_mSetControlStatusReg(BaseAddress,TmrCtrNumber,RegisterValue);设置ControlStatusReg值。
XTmrCtr_mGetControlStatusReg(BaseAddress,TmrCtrNumber);获取ControlStatus寄存器的值。使能Microblaze中断
microblaze_enable_interrupts();使能Microblaze中断
- EDK学习笔记——C函数整理
- 【C/C++学习笔记】memmove()、memcpy()、memccpy()、strcpy()函数整理
- C语言基础——学习笔记整理3
- BIOS/UEFI基础——EDK
- C语言函数学习整理
- 整理Javascript函数学习笔记
- C语言学习笔记整理
- C语言学习笔记整理
- C语言学习笔记整理
- EDK
- C++:函数<学习笔记>
- C与指针学习笔记——函数指针
- c语言学习笔记(8)——函数
- 多态性与虚函数——C/C++学习笔记
- 【C++】学习笔记二十九——函数
- 【C++】学习笔记三十一——函数和数组
- 【C++】学习笔记三十二——函数和二维数组
- 【C++】学习笔记三十四——函数和结构
- libssl.so.10: cannot open shared object file: No such file or directory
- 几种进程间的通信方式
- 适当的时候,用递归取代for循环
- Python编程规范
- msp430的DCO校准值被清除后该如何处理
- EDK学习笔记——C函数整理
- 连续子数组的最大和
- React Native开发笔记
- Spring整合Ehcache管理缓存
- poj 1511 Invitation Cards(SPFA)(矩阵以及邻接表对比)
- Android TCP socket通信
- 进程间通讯方式以及各个方式的优缺点
- String类型分析!
- 6.ThinkPHP 3.1.2 CURD演示 1