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

 
 
> gcc для AVR, слишком большой код
609
сообщение Oct 5 2010, 06:41
Сообщение #1





Группа: Новичок
Сообщений: 7
Регистрация: 10-08-10
Пользователь №: 58 849



Здравствуйте. Я программирую на языке C для микроконтроллеров AVR при помощи компилятора gcc. Нашел такую интересную особенность. В приведенном ниже коде программа занимает место порядка 200 байт. Если раскомментировать закомментированную строку с объявлением функции delay_ms, программа резко полнеет до 350 байт. Никак не могу разобраться, почему. Не могли бы вы мне помочь. Упорное чтение Кернигана и Ричи не помогает. Куда гуглить просто не знаю. Заранее спасибо за ответ.

Код
#define WDR        asm("wdr")
//void delay_ms(int time);

void main(void)
{
    delay_ms(1);
    delay_ms(1);
}


void delay_ms(int time)
{
    volatile int Timer, Timer1;

    for (Timer=0; Timer<time; Timer++)
        for (Timer1=0; Timer1<51; Timer1++)
            WDR;
}



Заодно сразу показываю опции, которые передаю компилятору. Сам ничего крамольного в них не обнаружил.

Код
-Wall
-gdwarf-2
-Os
-std=gnu99
-funsigned-char
-funsigned-bitfields
-fpack-struct
-fshort-enums
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 609   gcc для AVR   Oct 5 2010, 06:41
- - 777777   Цитата(609 @ Oct 5 2010, 10:41) Здравству...   Oct 5 2010, 06:56
|- - 609   Цитата(777777 @ Oct 5 2010, 10:56) А како...   Oct 5 2010, 06:59
|- - 777777   Цитата(609 @ Oct 5 2010, 10:59) Build suc...   Oct 5 2010, 07:08
- - 609   Компилирую при помощи WinAVR-20081205, прикрученно...   Oct 5 2010, 07:24
|- - 777777   Цитата(609 @ Oct 5 2010, 11:24) Компилиру...   Oct 5 2010, 07:30
|- - 609   Цитата(777777 @ Oct 5 2010, 11:30) 4.18 b...   Oct 5 2010, 08:26
|- - MrYuran   Цитата(609 @ Oct 5 2010, 12:26) Вопрос не...   Oct 5 2010, 08:35
|- - Сергей Борщ   Цитата(609 @ Oct 5 2010, 11:26) Если не и...   Oct 5 2010, 10:23
|- - zhevak   Цитата(609 @ Oct 5 2010, 14:26) Вопрос не...   Oct 5 2010, 10:50
|- - 609   Цитата(609 @ Oct 5 2010, 12:26) 4.18 b700...   Oct 6 2010, 10:03
|- - MrYuran   Цитата(609 @ Oct 6 2010, 14:03) Листинг с...   Oct 6 2010, 10:37
|- - 609   Цитата(MrYuran @ Oct 6 2010, 14:37) Если ...   Oct 6 2010, 11:33
- - dimka76   Не понятно для чего вы используете volatile для ло...   Oct 5 2010, 07:53
|- - MrYuran   Цитата(dimka76 @ Oct 5 2010, 11:53) Кодvo...   Oct 5 2010, 08:14
|- - dimka76   Цитата(MrYuran @ Oct 5 2010, 12:14) Не зн...   Oct 5 2010, 10:39
|- - MrYuran   Цитата(dimka76 @ Oct 5 2010, 14:39) А там...   Oct 5 2010, 11:10
|- - XVR   Цитата(MrYuran @ Oct 5 2010, 15:10) Цитат...   Oct 6 2010, 06:57
- - Dx!   А чем макросы _delay_ms() и _delay_us() что идут с...   Oct 5 2010, 20:58
- - MrYuran   Вот ключи для более тонкой настройки инлайна и анр...   Oct 6 2010, 11:42
- - 609   Цитата(MrYuran @ Oct 6 2010, 15:42) Вот к...   Oct 6 2010, 12:39


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 11:31
Рейтинг@Mail.ru


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