Здравствуйте. Перевожу проект с 2.6 версии на 3.x верcию ядра линукса. Камень - sama5d3. В модуле ядра происходит постоянная задержка прерывания приема символа (через usart) примерно в 30 микросекунд (от 15 микросекунд до 40 микросекунд).
Описание теста: Из программы производится ioctl вызов к модулю. В модуле происходит настройка usarta на посылку и прием 1 байта. И там же обработчик прерывания.
Время замерялось при помощи осциллографа.
Версия linux: # uname -a Linux buildroot 3.12.24-rt38 #4 PREEMPT RT Wed Aug 20 16:37:31 FET 2014 armv7l GNU/Linux
Почему всегда присутствует задержка? Не было ни одного запуска программы, чтобы задержка была хотя бы менее 10 микросекунд.
|