[elektro] Atmel Studio Debugger hiba
SZIGETI Szabolcs
szigiszabolcs at gmail.com
Fri Feb 19 14:22:02 CET 2016
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]
More information about the Elektro
mailing list