Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Микроконтроллеры > Програмированиэ микроконтролера


Автор: Kolya groza morey 11.06.07, 19:06
Такой вопрос. Нужна запрограмировать микроконтролер на языке С++ чтобы на индикатор выводилось значение интеграла, но в компиляторе к нему нет библиотеки math.h. Копирование з обыкновенного С не помогло. Что делать? Или может кто подскажет как корень квадратный записать подпрограмой без изпользования библиотеки math.

Автор: Kosha 11.06.07, 19:58
Что за компилятор и что за контроллер?

Автор: UncleBob 11.06.07, 21:58
http://algolist.manual.ru/maths/count_fast/sqrt.php
http://algolist.manual.ru/maths/count_fast/intsqrt.php

Автор: Kolya groza morey 12.06.07, 07:40
Uncle_Bob спасибо за помощь и может бить подскажеш как так же само записать натуральный логарифм.

Автор: trainer 13.06.07, 04:47
Для микроконтроллеров C++ практически не используется. А те, что используются, имеют серьезные ограничения, вызванные особенностями самих микроконтроллеров.
Для микроконтроллеров используют C.

Автор: Kosha 13.06.07, 07:58
Ну точнее обычно используют C с разными примочками от C++, для упрощения жизни :)
На чистом C редко кто ваяет. :)

Автор: UncleBob 13.06.07, 12:10
Kolya groza morey, для многих функций составляются таблицы значений (в статическом массиве) с определенным шагом. Соответсвенно нужное значение потом выбирается просто из массива по индексу.

Автор: byte 13.06.07, 20:20
Цитата Uncle_Bob @
Kolya groza morey, для многих функций составляются таблицы значений (в статическом массиве) с определенным шагом. Соответсвенно нужное значение потом выбирается просто из массива по индексу.

+ использование интерполяции.

Автор: kolobok0 15.06.07, 13:04
Цитата Kolya groza morey @
Такой вопрос. Нужна запрограмировать микроконтролер на языке С++ чтобы на индикатор выводилось значение интеграла, но в компиляторе к нему нет библиотеки math.h. Копирование з обыкновенного С не помогло. Что делать? Или может кто подскажет как корень квадратный записать подпрограмой без изпользования библиотеки math.

Про корень квадратный...
Если без библиотек - то первое что приходит на ум это
1) соориентироваться по длине исходящего числа (корень будет в два раза короче).
2) методом деления пополам подобрать исходное число.

но помниться мне, вроде как были лаконичные примеры похожих задач.
Попробуйте обратиться на сайт изготовителей МК. Например Atmel выкладывает много сырцов по решению похожих задач,
как для AVR так и для 51 серии..

удачи Вам
(круглый)
ЗЫ
Правда там азм, си...Си плас плас - то уже скорее всего на армах (мощностей поболее)...

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)