get_lm.c

来自「universeII驱动」· C语言 代码 · 共 53 行

C
53 行
字号
#include <vme/vme.h>#include <vme/vme_api.h>#include <stdio.h>#define LEVEL             VME_INTERRUPT_LM2#define VME_ADDRESS       0x08000000#define ADDRESS_SPACE     VME_A32int main(){	vme_bus_handle_t bus_handle;	vme_lm_handle_t lm_handle;	vme_interrupt_handle_t interrupt_handle;	int data;	if (vme_init(&bus_handle)) {		perror("Error initializing the VMEbus");		return -1;	}	if (vme_location_monitor_create(bus_handle, &lm_handle, VME_ADDRESS,					ADDRESS_SPACE, 0, 0)) {		perror("Error creating VMEbus location monitor image");		vme_term(bus_handle);		return -1;	}	if (vme_interrupt_attach(bus_handle, &interrupt_handle, LEVEL, 0,				 VME_INTERRUPT_BLOCKING, &data)) {		perror("Error attaching to the interrupt");		vme_location_monitor_release(bus_handle, lm_handle);		vme_term(bus_handle);		return -1;	}	printf("Location monitor interrupt\n");	if (vme_location_monitor_release(bus_handle, lm_handle)) {		perror("Error releasing VMEbus location monitor image");		vme_term(bus_handle);		return -1;	}	if (vme_term(bus_handle)) {		perror("Error terminating");		return -1;	}	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?