реклама на сайте
подробности

 
 
> AT91 и драйвер таймера, как работать?
Dubov
сообщение Jun 13 2012, 11:51
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Что нужно включить в файл board-xxx.c для того чтобы появился драйвер таймера в системе. Здаётся мне что толкьо вызова at91_add_device_tc() недостаточно.
Хочу получить драйвер, посредствам которого можно через пользовательский интерфейс управлять частотой генерации на ноге.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Enthusiast
сообщение Jun 19 2012, 11:45
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Предлагаю обойтись без разработки драйверов, воспользовавшись стандартными возможностями "Линукса". Исходный код я приводил здесь.
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jun 20 2012, 07:52
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(Enthusiast @ Jun 19 2012, 15:45) *
Предлагаю обойтись без разработки драйверов, воспользовавшись стандартными возможностями "Линукса". Исходный код я приводил здесь.

Таймерное программное прерывание не подходит потому что джиттер выходного сигнала будет сильно зависеть от загруженности процессора и, например при обновлении экрана(при выводе списка задач посредствам утилиты top) выходной сигнал может вообще пропадать на короткое время.
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Jun 20 2012, 08:14
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(Dubov @ Jun 20 2012, 11:52) *
Таймерное программное прерывание не подходит потому что джиттер выходного сигнала будет сильно зависеть от загруженности процессора и, например при обновлении экрана(при выводе списка задач посредствам утилиты top) выходной сигнал может вообще пропадать на короткое время.

В моём случае уход времени интервального таймера был в пределах 25 мкс (+/- 12,5 мкс) при стопроцентной загрузке процессора и "бомбардировании" платы сетевыми пакетами.
В любом случае, что мешает выставить приоритет реального времени для своей задачи? На свежих ядрах такое вполне возможно.
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jun 24 2012, 18:28
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(Enthusiast @ Jun 20 2012, 11:14) *
В моём случае уход времени интервального таймера был в пределах 25 мкс (+/- 12,5 мкс) при стопроцентной загрузке процессора и "бомбардировании" платы сетевыми пакетами.
В любом случае, что мешает выставить приоритет реального времени для своей задачи? На свежих ядрах такое вполне возможно.

Нашёл занятную таблицу для расчёта джиттера тактирующего сигнала для АЦП:
http://ru.wikipedia.org/wiki/%D0%90%D0%BD%....D0.B5.D1.80.29

Выходит, что при разрядности АЦП 16 бит и частоте тактирования 100кГц, получаем, что джиттер тактового сигнала не должен превышать примерно 50 пс.

Теперь привожу статью о "реальном времени" в Linux для AT91:
http://www.at91.com/linux4sam/bin/view/Linux4SAM/RealTime ,
вывод которой гласит что максимальный джиттер даже в режиме RT примерно 177 мкс.

Тогда возникаетв вопрос:
можно ли вообще из-под Linux тактировать АЦП? или 50пс - это полный бред для джиттера? Тогда какой джиттер достаточен?

Сообщение отредактировал Dubov - Jun 24 2012, 18:30
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Dubov   AT91 и драйвер таймера   Jun 13 2012, 11:51
- - xor.kruger   Для того чтобы просто подергать ногой с заданной ч...   Jun 18 2012, 11:56
|- - Dubov   Цитата(xor.kruger @ Jun 18 2012, 14:56) Д...   Jun 19 2012, 04:44
- - xor.kruger   ЦитатаИнтереса для: хочется увидеть как создать др...   Jun 19 2012, 07:04
|- - Enthusiast   Цитата(Dubov @ Jun 24 2012, 22:28) Тогда ...   Jun 25 2012, 12:54
|- - Dubov   Цитата(Enthusiast @ Jun 25 2012, 16:54) Т...   Jun 25 2012, 16:33
|- - Enthusiast   Цитата(Dubov @ Jun 25 2012, 20:33) бред н...   Jun 26 2012, 12:50
- - Dubov   Похоже тема плавно перетекает в тему "Отчего ...   Jun 26 2012, 21:06
- - Dron_Gus   ИМХО, топикстартер хочет ипользовать аппаратный та...   Jun 27 2012, 20:26
- - Enthusiast   Всё верно: мы настраиваем и запускаем в работу апп...   Jun 28 2012, 04:02
|- - Zelepuk   Цитата(Dron_Gus @ Jun 27 2012, 23:26) ИМХ...   Jun 28 2012, 04:40
|- - Dron_Gus   Цитата(Enthusiast @ Jun 28 2012, 08:02) В...   Jun 28 2012, 07:58
|- - Zelepuk   А ещё думаю можно написать драйвер для управления ...   Jun 28 2012, 08:08
|- - Enthusiast   Цитата(Dron_Gus @ Jun 28 2012, 10:58) Не ...   Jun 28 2012, 18:26
|- - Dron_Gus   Цитата(Enthusiast @ Jun 28 2012, 22:26) Д...   Jun 28 2012, 19:32
|- - Dubov   Цитата(Dron_Gus @ Jun 28 2012, 23:32) Над...   Jun 29 2012, 04:44
- - Dron_Gus   Читайте раздел "34. Timer Counter".   Jun 28 2012, 08:15
- - Zelepuk   У нас тактировали АЦП с частотой 50кГц от Плис. не...   Jun 28 2012, 08:29


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th June 2025 - 22:20
Рейтинг@Mail.ru


Страница сгенерированна за 0.01402 секунд с 7
ELECTRONIX ©2004-2016