-/*
+/*
* Application using MF624 UIO driver
- *
- * Copyright (C) 2011 Rostislav Lisovy <lisovy@gmail.com>
- *
+ *
+ * Copyright (C) 2011 Rostislav Lisovy <lisovy@gmail.com>
+ *
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
off_t mmap_start;
size_t mmap_size;
size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
-
+
mmap_start = barmap->mmap_offset & ~page_mask;
mmap_size = barmap->mmap_offset + barmap->size + page_mask - mmap_start;
mmap_size &= ~page_mask;
MFST2REG(mfst, 0, GPIOC_reg));
}
-
+
int DAC_write(mf624_state_t* mfst, dac_channel_t channel, int val)
{
mf624_read16(MFST2REG(mfst, 2, ADSTART_reg));
// Check if conversion has finished
- while((mf624_read32(MFST2REG(mfst, 0, GPIOC_reg)) & GPIOC_EOLC_mask)) {
+ while((mf624_read32(MFST2REG(mfst, 0, GPIOC_reg)) & GPIOC_EOLC_mask)) {
for (i = 0; i < 1000; i++) {} // small wait
}
if (status != -1) {
printf(" Probably OK\n");
}
-
+
printf("Tring to disable interrupts\n");
status = disable_interrupts(device_fd);
if (status != -1) {
-/**
+/**
* Try to initialize the MF624 UIO driver.
*
* If and only if S is not NULL and initialization fails, then
* ssSetErrorStatus() gets called to report the error via Simulink
* interface.
- *
+ *
* @param S Pointer to SimStruct for error reporting or NULL.
- *
+ *
* @return Zero in case of success, -1 in case of error.
*/
int mf624_init(SimStruct *S)
}
-/**
+/**
* Check whether MF624 card is initialized.
- *
- * @param S
- *
+ *
+ * @param S
+ *
* @return Zero if MF624 is initialized, -1 othewise.
*/
int mf624_check(SimStruct *S)
printf("Setting DA1 to 5 V\n");
DAC_write(mfst, DA1, 0x3000);
sleep(1);
-
+
printf("Reading ADC0: ");
printf("%f V\n", ADC_read(mfst, AD0));
sleep(1);