Меню
+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
Страницы 1
Тема закрыта
|
||||
|
linux, l154, вывод на ЦАПОписание системы:
Проблема:
Буду благодарен за любое решение проблемы
Алексей Войтылов |
|||
|
||||
|
Re: linux, l154, вывод на ЦАПДа, значение обрезалось до 8 бит.
Исправления в файле "drivers/drv154.c": static int set_sample(BOARD_STRUCT *b, int channel, int value)
Спасибо за обнаруженную ошибку. |
|||
|
||||
|
Re: linux, l154, вывод на ЦАПВсегда пожалуйста. 1. А почему в reset() то не исправили?
2. Не работает следующий код как надо: int main(int argc, char *argv) {
channel_info ci;
buffer=(short*)malloc(length*sizeof(short));
for(i=0;i<length;i++){
}
3. Непонятен следующий момент. Хочется на ЦАП выдавать периодический сигнал (синус, например), не заботясь об этом. Как это реализовать с помощью прерываний (в смысле как использовать таймеры на плате, чтобы вновь запускался период синуса)? При этом, разумеется, хочется что-то читать с АЦП. Как это сочетается с ключем O_NONBLOCK? За ТТХ в первое сообщение. Алексей Войтылов |
|||
|
||||
|
Re: linux, l154, вывод на ЦАПВдогонку. Проясните разницу между ci.channel, ci.log_channel и ci.number |
|||
|
||||
|
Re: linux, l154, вывод на ЦАП1. Исправил. Теперь на ЦАП будет выдаваться 0V... 2. Функция read() предназначена для непрерывного ввода/вывода, она возвращает из внутреннего буфера данные, которые считываются туда ранее по прерыванию от таймера. Установка одиночного отсчета с помощью LDSP_SET_CHANNEL случайным образом попадет куда-то в середину кадра.
3. Можно сделать отдельный поток, который непрерывно выводит через write() один и тот же блок данных, или просто отобразить буфер ЦАП через mmap(). По поводу полей структуры:
|
Страницы 1
Тема закрыта