[uquote="ARV",url="/forum/viewtopic.php?p=4047638#p4047638"]
jcxz писал(а):А что значит "со static не работает"? В чём это выражается "не работает"?
как минимум в том[/uquote]Вы не поняли вопрос. Перечитайте ещё раз.
ARV писал(а):jcxz писал(а):Например - когда делаете static, то в другом месте другой код, у вас эту область памяти портит. Потому и не работает. Как вариант.
невероятный вариант: локальная переменная потому и локальная, что более нигде не используется, хоть со static, хоть без.
И что что "не используется"? Она в памяти присутствует? Рядом с ней другие переменные (static или глобальные) присутствуют? А раз присутствуют, значит любая неправильная операция с памятью может её порушить.
ARV писал(а):а всякие "опасные" действия (с указателями) у меня отсутствуют в коде.
Ну да, а ещё вы пишете абсолютно безглючный код, который никогда не глючит.

Зачем тогда вопрос задали раз у вас ничего не глючит?
ARV писал(а):для локальной static-переенной это присваивание делается один раз, по идее вы не должны были спрашивать это, это ведь азы Си.
А вам по идее с этого места надо взять учебник по си и начать изучать азы. Ибо смотрим в листинг (IAR):
Код: Выделить всё
inline void CpuUseTimeTick()
{
_Z14CpuUseTimeTickv: (+1)
...
//static u16 t = cpuUseCalc;
0x4821 LDR.N R0,??CpuUseTimeTick_0+0x8
0x78C0 LDRB R0,[R0, #+3]
0x8020 STRH R0,[R4, #+0]
...
Как видим - нормально так
static переменной t присваивается значение переменной cpuUseCalc
на каждом входе в функцию CpuUseTimeTick().
Или думаете это IAR не знает азов си?

Или всё-таки вы их не знаете?
PS: Складывается ощущение, что это не у вас эти баги, а у меня. К советам вы не прислушиваетесь, ещё и спорите.... Зачем тогда вообще вопрос задали?
Баги эти вроде не у меня. И мне абсолютно на них насрать. Не нужно вам найти решение - воля ваша. Зачем тогда было спрашивать?
Добавлено after 1 minute 2 seconds:
[uquote="mont-oriol",url="/forum/viewtopic.php?p=4047681#p4047681"]Возможно, что-то портит ту область, где static переменные.[/uquote]Я уже это советовал автору. Но не принимает никаких советов....
Добавлено after 2 minutes 35 seconds:
[uquote="WiseLord",url="/forum/viewtopic.php?p=4047688#p4047688"]Кстати, вот это
действительно опаснее, чем выглядит. Хотя, если screen - тоже static и представляет собой массив pos_t[/uquote]Я ещё в самом начале советовал автору привести определения
всех объектов и типов, фигурирующих в примере кода. Чтобы не играть в угадайку. Но он проигнорировал. Видимо ищет здесь гадалок....
Добавлено after 2 minutes 10 seconds:
[uquote="WiseLord",url="/forum/viewtopic.php?p=4047688#p4047688"]А вот почему код, если regs сделать static, ломается - действительно странно.[/uquote]Очень просто - наверняка там ещё табун других багов рядом пасётся.

которые иногда проявляются, иногда - нет. Как карты лягут....