roboforum.ru

Технический форум по робототехнике.

Непонятка со структурой

ARM7, ARM9, ARM11 etc.

Непонятка со структурой

Сообщение Raskolin » 21 ноя 2011, 14:13

Есть 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--;
//
Raskolin
 
Сообщения: 20
Зарегистрирован: 22 мар 2011, 01:02

Re: Непонятка со структурой

Сообщение HarryStar » 21 ноя 2011, 14:35

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

Re: Непонятка со структурой

Сообщение dccharacter » 21 ноя 2011, 16:14

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

Re: Непонятка со структурой

Сообщение Drunya » 22 ноя 2011, 19:32

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


Вернуться в ARM

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

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