roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 06:11

Часовой пояс: UTC + 4 часа




Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Непонятка со структурой
СообщениеДобавлено: 21 ноя 2011, 14:13 
Не в сети

Зарегистрирован: 22 мар 2011, 01:02
Сообщения: 20
Есть lpc2478 который управляет релюшками в зависимости от входных данных. В структуре есть три поля(uint32_t закомментированы) и прерывание где уменьшается значение полей. Так вот если эти три поля находятся внутри структуры, то их значение никогда не будет равно 0, а если я их вынесу за структуру, т.е. просто укажу глобальными переменными, то они в нужное время станут равны 0. Никак не пойму в чем разница? Есть ли у структуры какой то предел?
Код:
typedef struct
{
   uint16_t work_led;
   uint16_t can_send_ts;
   uint16_t lcd_refresh;
   uint16_t up_button;
   uint16_t down_button;
   uint16_t ok_button;
   uint16_t shift_send;

   uint16_t msp_refresh_delay;

   uint16_t seconds;

   uint16_t firstRunDelay;
    uint16_t buttons_check;
    uint16_t startupStepDelay;

    uint8_t low_key_0v24[40];
    uint8_t low_key_0v110[8];

    uint8_t condensate_timeout;
   uint16_t watersupply_drainage_delay;
   uint16_t w_and_s_drainage_delay;

   uint16_t testStepDelay;

   uint16_t wc_light_timeout;

//   uint32_t washbasin1_water_timeout;
//   uint32_t washbasin2_water_timeout;
//   uint32_t shower_water_timeout;

   uint16_t wc1_buzzer;
   uint16_t wc2_buzzer;

   uint16_t muuv_connection;
   
   uint16_t lock_request_stop;
   uint16_t relay_666_timeout;
} TTIMERS;


// В прерывании
      if (n_washbasin1_water_timeout) n_washbasin1_water_timeout--;
      if (n_washbasin2_water_timeout) n_washbasin2_water_timeout--;
      if (n_shower_water_timeout) n_shower_water_timeout--;
//


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятка со структурой
СообщениеДобавлено: 21 ноя 2011, 14:35 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2010, 13:56
Сообщения: 995
Откуда: Нижний Новгород
прог. языки: С, С++, РНР
никаких пределов нет, ищите ошибку в программе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятка со структурой
СообщениеДобавлено: 21 ноя 2011, 16:14 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Ээээ, а как ты к ним обращаешься, когда они в структуре? Меняют ли они ВООБЩЕ свое значение?

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Непонятка со структурой
СообщениеДобавлено: 22 ноя 2011, 19:32 
Не в сети
Аватара пользователя

Зарегистрирован: 05 июн 2007, 12:20
Сообщения: 196
Откуда: Киев
прог. языки: C/C++, ASSEMBLER
Я бы попробовал объявить структурную переменную как volatile.

_________________
Глюк по-немецки означает "счастье"...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO