[elektro] Atmel Studio Debugger hiba

Bakcsa Zoltán bakcsa at gmail.com
Fri Feb 19 14:37:53 CET 2016


igazad van, ez egy súlyos hiba lenne, de nem ez a valós tartalma annak
funkciónak, ezt csak szemléltetésként írtam.
az utolsó valós tartalom amivel kísérleteztem valahogy így nézett ki:

...
uint8_t aa=1;
if(aa>0)
{
aa++;
}
...

A lényegen nem változtat. Ha van IF a funkcióban, a debug nem megy. Ha
nincs, megy.

Üdv:
Zoli

2016-02-19 14:22 GMT+01:00 SZIGETI Szabolcs <szigiszabolcs at gmail.com>:

> Hali!
>
> Itt:
>
> void function_called_via_pointer()    //blocks debugging {
>     if(a=0)
>     {
>         a++;
>     }
>     else if(a=1)
>     {
>         a=a+2;
>     }
>     else if(a=2)
>     {
>         a=a+2;
>     }}
>
> Biztosan if(a=0)-t akartál írni? a==0 lenne a helyes, a többi helyen is.
>
> Szabolcs
>
>
>
> 2016. február 19. 14:18 Bakcsa Zoltán írta, <bakcsa at gmail.com>:
>
> > Sziasztok,
> >
> > Egy furcsa jelenséggel kapcsolatban szeretnélek megkérdezni titeket.
> >
> > Szoftvert írok egy panelre, a következő a környezet:
> > Proci: Atmel SAM4S16C, Programozó Atmel-Ice, IDE: Atmel Studio, C a
> nyelv,
> > ASF-et használok.
> >
> > A program kb így néz ki: http://codepad.org/1CTANkEs
> >
> > Ez meg a leírás hozzá:
> > A programban van egy super loop, ami flag-eket vizsgálgat, ezeknek
> > megfelelően fut. Ezen a loopon belül van egy vizsgálat, aminek
> eredményétől
> > függőn egy funkció meghívódik, de nem direkt módon, hanem egy
> > funkció-pointeren keresztül.
> >
> > A lényeg, hogy ha a pointeren keresztül meghívott funkcióban bármilyen
> > vizsgálatot beleírok, nem tudom debuggolni a programot a panelen (JTAG-en
> > keresztül). Lefordul, Atmel Studio azt mondja, hogy fut, de nem. A
> program
> > indulásakor villogtatok egy ledet, hogy lássam mikor indul a program, de
> > még ez sem történik meg.
> >
> > Érdekes, hogy ha nem debugolni akarom, hanem csak letölteni a programot
> és
> > futtatni, az megy, és látszólag helyesen. Már raktam bele egy rakás
> > printf("Erre járok éppen") jellegű utasítást, de a program összetettsége
> > miatt még nem tudom, hogy tényleg helyesen működik-e.
> >
> > Ha a pointeren keresztül meghívott funkcióból kiveszem az IF-eket, akkor
> > tudom debugolni a kódot.
> >
> > A kérdés: Miért történik ez?? Látott már valaki ilyet?
> >
> > Üdv:
> > Zoli
> > -----------------------------------------
> >           elektro[-flame|-etc]
> -----------------------------------------
>           elektro[-flame|-etc]


More information about the Elektro mailing list