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

 
 
> Вычисления с помощью макросов, Проблема с выводом значения в реальном времени
alux
сообщение Mar 25 2008, 18:00
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Вывожу на ЖКИ 24-битное значение adc_value АЦП с периодом 1 сек. Это значение используется для вычисления дифференциального давления, которое вычисляется по формуле.

Если попытаться выводить сразу в пересчитанное значение дифф. давления, то возникает проблема (виснет программа), хотя по идее макрос заменяется своим определением во время работы препроцессора, поэтому не вызывает затрат времени. И стек не должен потреблять на мой взгляд.
Код
#define Vref          5.0  
#define GAIN         64.0      // Gain
#define STEPS_B    8388608.0 // Full-Scale 2^(24-1) for bipolar operation
#define SPAN          16.7      // Span (mV) of Pressure Sensors = 1 psi
#define mm_Hg       51.714   // мм. рт. ст. (@ 0 гр. C)

#define Vin(adc_value) (((((adc_value)/STEPS_B) - 1.0)*Vref)/GAIN)

diffPressure = (Vin(adc_value)/SPAN)*mm_Hg;
Почему так происходит? Как мне выводить значение давления в реальном времени? Это работает под управлением ОС (scmRTOS).
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- alux   Вычисления с помощью макросов   Mar 25 2008, 18:00
- - meister   diffPressure = (Vin(0)/SPAN)*mm_Hg; Тоже виснет?   Mar 25 2008, 18:49
- - singlskv   Цитата(alux @ Mar 25 2008, 21:00) Вывожу ...   Mar 25 2008, 18:54
|- - alux   Цитата(singlskv @ Mar 25 2008, 22:54) ну ...   Mar 25 2008, 19:10
|- - singlskv   Цитата(alux @ Mar 25 2008, 22:10) В форму...   Mar 25 2008, 22:14
||- - alux   Цитата(singlskv @ Mar 26 2008, 02:14) А В...   Mar 26 2008, 07:22
|- - meister   Цитата(alux @ Mar 25 2008, 22:10) Так не ...   Mar 26 2008, 04:38
- - rezident   alux, у вас оптимизация при компиляции используетс...   Mar 25 2008, 22:39
- - tag   Цитата(alux @ Mar 25 2008, 21:00) Вывожу ...   Mar 26 2008, 08:46
|- - alux   Цитата(tag @ Mar 26 2008, 12:46) ...а вы ...   Mar 26 2008, 09:20
|- - tag   Цитата(alux @ Mar 26 2008, 12:20) В симул...   Mar 26 2008, 10:50
|- - alux   Цитата(tag @ Mar 26 2008, 14:50) ...а вси...   Mar 26 2008, 13:28
|- - tag   Цитата(alux @ Mar 26 2008, 16:28) Из него...   Mar 27 2008, 06:16
|- - alux   Цитата(tag @ Mar 27 2008, 10:16) Если adc...   Mar 27 2008, 06:45
|- - Сергей Борщ   Цитата(alux @ Mar 27 2008, 08:45) Если пе...   Mar 27 2008, 10:28
|- - alux   Цитата(Сергей Борщ @ Mar 27 2008, 13:28) ...   Apr 8 2008, 10:42
|- - Сергей Борщ   Цитата(alux @ Apr 8 2008, 13:42) Здесь вы...   Apr 8 2008, 15:15
- - alux   В общем, сделал так: Код#define Kp (Vref*mm_...   Mar 27 2008, 10:59
|- - Сергей Борщ   Цитата(alux @ Mar 27 2008, 12:59) Здесь а...   Mar 27 2008, 14:18
|- - alux   Цитата(Сергей Борщ @ Mar 27 2008, 18:18) ...   Mar 27 2008, 15:35
||- - Сергей Борщ   Цитата(alux @ Mar 27 2008, 17:35) И, соот...   Mar 27 2008, 16:39
|- - alux   Цитата(Сергей Борщ @ Mar 27 2008, 18:18) ...   Mar 27 2008, 18:22
|- - IgorKossak   Цитата(alux @ Mar 27 2008, 20:22) PS. Вко...   Mar 27 2008, 20:43
|- - alux   Цитата(IgorKossak @ Mar 28 2008, 00:43) Р...   Mar 28 2008, 05:24
- - alux   На этот раз стек здесь ни при чем. Проблема была в...   Mar 29 2008, 19:45
- - alux   И еще один маленький, но очень большой вопрос. Как...   Apr 9 2008, 08:18


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 08:08
Рейтинг@Mail.ru


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