Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Как быстро произвести вот это деление: 1575000/val
Отправлено
Aleksey_n
17 июня 2008 г. 12:18
val - unsigned int
получаемое значение лежит в пределах 500-5000.
считать нужно в прерывании, точность нужна до десятков.
Если поделить 1575000 на 256 и отбросить младший байт у val - слишком теряем в точности. Может через табличный расчет? МК - ATMega64
Составить ответ
|
Вернуться на конференцию
Ответы
если val меняется каждый раз незначительно, то это облегчает задачу - можно быстро подбирать результат за несколько итераций.
—
Каа
(17.06.2008 15:08:26
213.132.80.164
,
пустое
)
а) кусочно-линейная аппроксимация, чтобы таблица была поменьше. б) полином 3-степени. с) деление столбиком в асме - скорее всего наиболее быстрый вариант
—
argus98
(17.06.2008 13:21:41
81.22.205.230
,
пустое
)
где вариант пример варианта с посмотреть. насколько он быстрее? (+)
—
Aleksey_n
(17.06.2008 13:25:22
207.226.45.250
, 146 байт)
PS вариант б) со степенью погорячился, похоже нужен 5-порядок, если не 6
—
argus98
(17.06.2008 14:08:20
81.22.205.230
,
пустое
)
ну неужели деление столбиком такая сложная штука??? вычесть - сравнить - сдвинуть и так 13 раз (если результат меньше 8192) (+):
—
argus98
(17.06.2008 13:38:0
81.22.205.230
, 94 байт)
В апноутах AVR есть по математике на ASM - смотри внизу странички
—
Romarioti
(17.06.2008 13:32:31
85.141.239.98
,
пустое
,
ссылка
)
x=((1575000UL<<11UL)/(unsugned long)val)>>11UL;
—
rezident
(17.06.2008 12:34:41
195.222.149.11
,
пустое
)
че, очень часто прерывание происходит ? или время его жзни очень критично ?
—
политруккк
(17.06.2008 12:32:56
65.110.6.33
, 129 байт)
Прерывание до 400 раз в сек. (+)
—
Aleksey_n
(17.06.2008 12:38:15
207.226.45.250
, 202 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 45:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru