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

 
 
> ST Visual Develop для STM8 и математические функции
zheka
сообщение Aug 11 2018, 08:59
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



Господа, понадобилось мне разбить число float для вывода на сегментный индикатор (на целую и дробную части). Залез я в какой-то проект старый для STM32, где у меня это было реализовано - ан нет, не работает, библиотека math.h нужна.
А а ST Visual Development нету такой.
Попытался кормить ему тот файл, что в Keil - компилятор им подавился. Около сотни ошибок, подавляющее большинство из них - "not an argument"

Собственно вопросы - кто-нибудь пытался вставить библиотеки от KEIL в ST Visual Development?
Может в STVD есть свои математические функции?

Если нет, то как протыми средствами C разделить float на челую и дробную (до двух знаков) части?

Попробовал написать свою функцию, точностью до одного знака после запятой.

Код
void LCD_Show_Current(float current)
{

    int int_num, decimal_num;
    float decimal_part;
    
    int_num=current;
        decimal_part=current-int_num;

    decimal_num=decimal_part*10;
}


Результат странный - decimal part почему-то всегда меньше на 0.1 (соответственно decimal_num меньше на единицу).

В функцию число поступает правильное (проверял уже внутри функции). А вот после decimal_part=current-int_num; получается недостача.

В упор не вижу, где я ошибся?

Тихо сам с собою - когда присваиваю переменной значение скажем 13.7, в отладчике оказывается, что переменная равна 13.69999998....
Что за самодеятельность контроллера?

Сообщение отредактировал zheka - Aug 11 2018, 08:45
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zheka
сообщение Aug 13 2018, 17:47
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



Бесплатнее некуда
Цитата
The evaluation license is completely free of charge and allows you to try the integrated development environment and evaluate its efficiency and ease of use. When you start the product for the first time, you will be asked to register to get your evaluation license.

After installation, you have the following evaluation options to choose from:
•a 30-day time-limited but fully functional license
•a size-limited Kickstart license without any time limit

Restrictions to the 30-day time-limited evaluation
•A 30-day time limitation.
•Source code for runtime libraries is not included.
•No support for MISRA C.
•Limited technical support.
•Must not be used for product development or any other kind of commercial use.

Restrictions to the Kickstart, size-limited evaluation
•A 8 Kbyte code size limitation.
•Source code for runtime libraries is not included.
•No support for MISRA C.
•Limited technical support.


Информация с сайта iar

Но это не беда. Мне предложили на выбор 30 дневное ограничение либо 8кб ограничение по коду. Я выбрал второе.

Сообщение отредактировал zheka - Aug 13 2018, 17:58
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zheka   ST Visual Develop для STM8 и математические функции   Aug 11 2018, 08:59
- - iiv   замените на Код decimal_num=((int)...   Aug 11 2018, 10:00
- - zheka   Что-то не совсем понял идею... У меня, пока вы п...   Aug 11 2018, 11:11
|- - iiv   Цитата(zheka @ Aug 11 2018, 16:11) Въехал...   Aug 11 2018, 12:00
- - HardEgor   Цитата(zheka @ Aug 11 2018, 15:59) Если н...   Aug 11 2018, 12:19
- - Genadi Zawidowski   Example /* MODF.C */ #include <math.h> #in...   Aug 11 2018, 12:46
- - zheka   КодЧую, что это обработка датчика температуры... Н...   Aug 11 2018, 19:12
|- - jcxz   Цитата(zheka @ Aug 11 2018, 22:12) Нет, э...   Aug 11 2018, 19:15
- - Harbinger   Цитата(zheka @ Aug 11 2018, 22:12) Неуже ...   Aug 12 2018, 05:01
- - zheka   Я использую COSMIC Ну и нарисовалась очередная про...   Aug 12 2018, 07:31
|- - jcxz   Цитата(zheka @ Aug 12 2018, 10:31) А прог...   Aug 12 2018, 08:08
- - zheka   Цитатас таким уменьем программирования, как в ...   Aug 12 2018, 09:46
|- - jcxz   Цитата(zheka @ Aug 12 2018, 12:46) Или вы...   Aug 12 2018, 14:27
- - Harbinger   Аппаратный SPI там никак не задействовать? Кривая ...   Aug 12 2018, 11:53
|- - zheka   Цитата(Harbinger @ Aug 12 2018, 14:53) Ап...   Aug 12 2018, 12:45
|- - aaarrr   Цитата(zheka @ Aug 12 2018, 15:45) Как ок...   Aug 12 2018, 12:51
|- - zheka   Цитата(aaarrr @ Aug 12 2018, 15:51) Так в...   Aug 12 2018, 13:00
- - zheka   ЦитатаЗачем хотя-бы дублировать одни и те же опера...   Aug 12 2018, 14:33
|- - jcxz   Цитата(zheka @ Aug 12 2018, 17:33) Это гд...   Aug 12 2018, 14:53
- - zheka   ЦитатаПосмотрите на свои LCD_Show_Voltage()/LCD_Sh...   Aug 12 2018, 18:18
|- - jcxz   Цитата(zheka @ Aug 12 2018, 21:18) А ну-к...   Aug 12 2018, 19:18
|- - zheka   Цитата(jcxz @ Aug 12 2018, 22:18) Самое п...   Aug 12 2018, 19:44
|- - jcxz   Цитата(zheka @ Aug 12 2018, 22:44) Из ком...   Aug 13 2018, 14:05
- - Harbinger   Не видя всего проекта, сложно что-то сказать. Рабо...   Aug 13 2018, 17:02
- - Harbinger   Второе и предлагалось. Cosmic на новом компе так и...   Aug 13 2018, 18:29
- - zheka   Н-да.. вы были правы. В IAR все работает. Продолж...   Aug 13 2018, 19:14
|- - jcxz   Цитата(zheka @ Aug 13 2018, 22:14) Почему...   Aug 13 2018, 20:30
- - zheka   Скачал полное руководство - RM0016 Описание halt з...   Aug 14 2018, 18:21
- - zheka   В общем я взял обычную китайскую отладочную плату,...   Aug 18 2018, 18:54
|- - jcxz   Цитата(zheka @ Aug 18 2018, 21:54) Возвра...   Aug 18 2018, 19:26
- - zheka   ЦитатаА почему Вы вообще именно на STM8S экономию ...   Aug 18 2018, 19:42
|- - jcxz   Цитата(zheka @ Aug 18 2018, 22:42) Я на В...   Aug 18 2018, 20:10
- - zheka   Проблема решена. Всем спасибо.   Aug 19 2018, 06:47


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

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 23:47
Рейтинг@Mail.ru


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