Главная Friday, March 24 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
лента новостей сайта microsin.ru лента новостей
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:
Кто он-лайн
Сейчас на сайте:
Гостей - 7
Модуль рекламы
Поисковые системы

AVR GCC (AVR Studio) warning: integer overflow in expression Версия для печати
Написал microsin   
01.06.2010

Описывается одна из причин возникновения такого предупреждения.

Предупреждение означает, что при вычислении выражения возможно переполнение. У меня оно возникло в таком примере кода:

//[timer.c]
#define F_CPU 12000000L    //тактовая частота ATmega32, Гц
#define TCNT1_1MS (65536-(F_CPU/(256*1000)))
TCNT1 = TCNT1_1MS;

../timer.c: In function 'SetupTIMER1':
../timer.c:22: warning: integer overflow in expression

Предупреждение пропадает, если делитель в выражении тоже определить с типом long (добавим к константе букву L):

#define TCNT1_1MS (65536-(F_CPU/(256L*1000)))

 

Последнее обновление ( 01.06.2010 )
 

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2017