Пример #1
0
int main(int argc, char *argv[])
{
	sis33_t *dev;
	int ret;

	parse_args(argc, argv);

	/* log error messages */
	sis33_loglevel(3);

	dev = sis33_open(module_nr);
	if (dev == NULL)
		exit(EXIT_FAILURE);

	if (auto_mode != -1 && sis33_set_start_auto(dev, auto_mode) < 0)
		exit(EXIT_FAILURE);

	ret = sis33_get_start_auto(dev, &auto_mode);
	if (ret)
		exit(EXIT_FAILURE);
	printf("Auto: %d\n", auto_mode);

	if (delay != -1 && sis33_set_start_delay(dev, delay) < 0)
		exit(EXIT_FAILURE);

	ret = sis33_get_start_delay(dev, &delay);
	if (ret)
		exit(EXIT_FAILURE);
	printf("Delay: %d\n", delay);

	if (sis33_close(dev))
		exit(EXIT_FAILURE);

	return 0;
}
Пример #2
0
int main(int argc, char *argv[])
{
	sis33_t *dev;
	unsigned int segments_max;
	unsigned int segments_min;

	parse_args(argc, argv);

	/* log error messages */
	sis33_loglevel(3);

	dev = sis33_open(module_nr);
	if (dev == NULL)
		exit(EXIT_FAILURE);

	if (segments && sis33_set_nr_segments(dev, segments) < 0)
		exit(EXIT_FAILURE);

	if (sis33_get_nr_segments(dev, &segments) < 0)
		exit(EXIT_FAILURE);
	if (sis33_get_max_nr_segments(dev, &segments_max) < 0)
		exit(EXIT_FAILURE);
	if (sis33_get_min_nr_segments(dev, &segments_min) < 0)
		exit(EXIT_FAILURE);
	printf("Segments: %d (max. %d min. %d)\n", segments, segments_max, segments_min);

	if (sis33_close(dev))
		exit(EXIT_FAILURE);

	return 0;
}
Пример #3
0
int main(int argc, char *argv[])
{
	struct sis33_acq *acqs;
	int acq_events;
	sis33_t *dev;

	parse_args(argc, argv);

	/* log errors */
	sis33_loglevel(3);

	dev = sis33_open(module_nr);
	if (dev == NULL)
		exit(EXIT_FAILURE);

	/* get a valid event length */
	ev_length = sis33_round_event_length(dev, ev_length, SIS33_ROUND_NEAREST);

	if (acquire) {
		if (no_wait) {
			if (sis33_acq(dev, segment_nr, nr_events, ev_length) < 0)
				exit(EXIT_FAILURE);
		} else {
			if (sis33_acq_wait(dev, segment_nr, nr_events, ev_length) < 0)
				exit(EXIT_FAILURE);
		}
	}

	if (fetch) {
		acqs = sis33_acqs_zalloc(nr_events, ev_length);
		if (acqs == NULL)
			exit(EXIT_FAILURE);
		acq_events = sis33_fetch(dev, segment_nr, channel_nr, acqs, nr_events, NULL);
		if (acq_events < 0)
			exit(EXIT_FAILURE);
		if (show_tstamps) {
			if (sis33_event_timestamping_is_supported(dev))
				print_timestamps(acqs, acq_events);
			else
				fprintf(stderr, "This device does not support event timestamping\n");
		} else {
			print_acqs(acqs, acq_events);
		}
		sis33_acqs_free(acqs, nr_events);
	}

	if (sis33_close(dev))
		exit(EXIT_FAILURE);
	return 0;
}
Пример #4
0
int main(int argc, char *argv[])
{
	sis33_t *dev;
	int ret;

	parse_args(argc, argv);

	/* log error messages */
	sis33_loglevel(3);

	dev = sis33_open(module_nr);
	if (dev == NULL)
		exit(EXIT_FAILURE);

	if (clksrc != -1 && sis33_set_clock_source(dev, clksrc) < 0)
		exit(EXIT_FAILURE);

	ret = sis33_get_clock_source(dev, &clksrc);
	if (ret)
		exit(EXIT_FAILURE);
	print_clksrc(clksrc);

	if (clkfreq) {
		clkfreq = sis33_round_clock_frequency(dev, clkfreq, SIS33_ROUND_NEAREST);
		if (sis33_set_clock_frequency(dev, clkfreq) < 0)
			exit(EXIT_FAILURE);
	}

	if (clksrc == SIS33_CLKSRC_INTERNAL) {
		ret = sis33_get_clock_frequency(dev, &clkfreq);
		if (ret)
			exit(EXIT_FAILURE);
		printf("Frequency: %3.3g MHz\n", (double)clkfreq / 1000000);
	}

	if (sis33_close(dev))
		exit(EXIT_FAILURE);

	return 0;
}
Пример #5
0
int main(int argc, char *argv[])
{
	unsigned int events_max;
	sis33_t *dev;

	parse_args(argc, argv);

	/* log error messages */
	sis33_loglevel(3);

	dev = sis33_open(module_nr);
	if (dev == NULL) {
		fprintf(stderr, "Couldn't open sis33.%d\n", module_nr);
		exit(EXIT_FAILURE);
	}
	if (sis33_get_max_nr_events(dev, &events_max) < 0)
		exit(EXIT_FAILURE);
	printf("%u\n", events_max);
	if (sis33_close(dev)) {
		fprintf(stderr, "sis33_close failed\n");
		exit(EXIT_FAILURE);
	}
	return 0;
}