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

 
 
> отладка кода в AVRStudio
megaboy
сообщение Nov 7 2008, 23:12
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 30-10-07
Пользователь №: 31 885



Существует такая проблема, уменьшающая наглядность при отладке С кода,
скомпилированного в WinAVR - почему то курсор не хочет пошагово ходить по некоторым строкам
кода, например тогда, когда ф-ия в результате оптимизация стала инлайновой.
К тому же, эти строки еще и не отображаются в окне дизасемблера, чтобы хоть как то разобраться...
Вот, к примеру, пример:
С код
Код
        if(pc_fifo.char_cnt)
        {
            send_sim(pop_buffer(&pc_fifo));
        }
        if(sim_fifo.char_cnt)
        {
            send_pc(pop_buffer(&sim_fifo));
        }

Дизасм окно
Код
140:              if(pc_fifo.char_cnt)

+00000365:   91400286    LDS     R20,0x0286       Load direct from data space
+00000367:   91500287    LDS     R21,0x0287       Load direct from data space
+00000369:   1541        CP      R20,R1           Compare
+0000036A:   0551        CPC     R21,R1           Compare with carry
+0000036B:   F1B1        BREQ    PC+0x37          Branch if equal
+0000036C:   91200284    LDS     R18,0x0284       Load direct from data space
+0000036E:   91300285    LDS     R19,0x0285       Load direct from data space
+00000370:   91800282    LDS     R24,0x0282       Load direct from data space
+00000372:   91900283    LDS     R25,0x0283       Load direct from data space
+00000374:   1728        CP      R18,R24          Compare
+00000375:   0739        CPC     R19,R25          Compare with carry
+00000376:   F411        BRNE    PC+0x03          Branch if not equal
+00000377:   E0E0        LDI     R30,0x00         Load immediate
+00000378:   C023        RJMP    PC+0x0024        Relative jump
+00000379:   91E0027E    LDS     R30,0x027E       Load direct from data space
+0000037B:   91F0027F    LDS     R31,0x027F       Load direct from data space
+0000037D:   0FE2        ADD     R30,R18          Add without carry
+0000037E:   1FF3        ADC     R31,R19          Add with carry
+0000037F:   81E0        LDD     R30,Z+0          Load indirect with displacement
+00000380:   5F2F        SUBI    R18,0xFF         Subtract immediate
+00000381:   4F3F        SBCI    R19,0xFF         Subtract immediate with carry
+00000382:   93300285    STS     0x0285,R19       Store direct to data space
+00000384:   93200284    STS     0x0284,R18       Store direct to data space
+00000386:   91800280    LDS     R24,0x0280       Load direct from data space
+00000388:   91900281    LDS     R25,0x0281       Load direct from data space
+0000038A:   1728        CP      R18,R24          Compare
+0000038B:   0739        CPC     R19,R25          Compare with carry
+0000038C:   F421        BRNE    PC+0x05          Branch if not equal
+0000038D:   92100285    STS     0x0285,R1        Store direct to data space
+0000038F:   92100284    STS     0x0284,R1        Store direct to data space
+00000391:   91800288    LDS     R24,0x0288       Load direct from data space
+00000393:   7F8E        ANDI    R24,0xFE         Logical AND with immediate
+00000394:   93800288    STS     0x0288,R24       Store direct to data space
+00000396:   5041        SUBI    R20,0x01         Subtract immediate
+00000397:   4050        SBCI    R21,0x00         Subtract immediate with carry
+00000398:   93500287    STS     0x0287,R21       Store direct to data space
+0000039A:   93400286    STS     0x0286,R20       Store direct to data space
+0000039C:   93E000C6    STS     0x00C6,R30       Store direct to data space
+0000039E:   918000C0    LDS     R24,0x00C0       Load direct from data space
+000003A0:   FF85        SBRS    R24,5            Skip if bit in register set
+000003A1:   CFFC        RJMP    PC-0x0003        Relative jump

144:              if(sim_fifo.char_cnt)

А куда же делось это? 07.gif
{
send_sim(pop_buffer(&pc_fifo));
}


Вопрос собственно, можно ли где то настроить, либо в Студии либо в WinAVR чтобы
пошаговая отладка работала для всех строк С кода или, на крайняк, чтобы все строки
С кода отображались в окне дизасма?

Сообщение отредактировал megaboy - Nov 7 2008, 23:16
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- megaboy   отладка кода в AVRStudio   Nov 7 2008, 23:12
- - Artem_Petrik   Чтобы все максимально правдоподобно отображалось, ...   Nov 7 2008, 23:34
|- - _Pasha   Цитата(Artem_Petrik @ Nov 8 2008, 02:34) ...   Nov 8 2008, 07:39
||- - megaboy   Цитата(_Pasha @ Nov 8 2008, 09:39) Но луч...   Nov 8 2008, 08:17
||- - Qwertty   Цитата(megaboy @ Nov 8 2008, 11:17) Будьт...   Nov 8 2008, 09:06
|- - Foris   Цитата(Artem_Petrik @ Nov 8 2008, 02:34) ...   Nov 10 2008, 05:08
|- - Непомнящий Евгений   Цитата(Foris @ Nov 10 2008, 09:08) Ну и с...   Nov 10 2008, 07:42
|- - TechMike   Цитата(Непомнящий Евгений @ Nov 10 2008, 10...   Nov 11 2008, 13:09
- - megaboy   Из вышесказанного можно сделать вывод, что пошагов...   Nov 8 2008, 12:06
|- - xemul   Цитата(megaboy @ Nov 8 2008, 15:06) Из вы...   Nov 8 2008, 19:48
- - Artem_Petrik   Цитата(Qwertty @ Nov 8 2008, 13:06) Может...   Nov 8 2008, 13:12
|- - Qwertty   Цитата(Artem_Petrik @ Nov 8 2008, 16:12) ...   Nov 8 2008, 16:39
- - SasaVitebsk   Я работаю в IAR, поэтому могут быть отличия. Но вс...   Nov 9 2008, 17:11
|- - _Pasha   Цитата(SasaVitebsk @ Nov 9 2008, 20:11) У...   Nov 9 2008, 19:48
- - megaboy   Просто для эффективной отладки, я так понимаю, нео...   Nov 9 2008, 23:23
- - TechMike   Просьба ткнуть в доку/статью по правильному написа...   Nov 10 2008, 07:29
- - Artem_Petrik   Цитата(Foris @ Nov 10 2008, 09:08) Ну и с...   Nov 10 2008, 07:36
- - Aleksandr Baranov   ИМХО: Если "Код без оптимизации не укладывает...   Nov 10 2008, 15:33
- - Qwertty   Цитата(Aleksandr Baranov @ Nov 10 2008, 18...   Nov 10 2008, 15:41
- - SasaVitebsk   Цитата(Aleksandr Baranov @ Nov 10 2008, 19...   Nov 11 2008, 09:46


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

 


RSS Текстовая версия Сейчас: 18th June 2025 - 15:56
Рейтинг@Mail.ru


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