logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Problem z debbugiem w AVR studio

grzesFox 07 Sty 2011 13:10 1030 5
REKLAMA
  • #1 8971168
    grzesFox
    Poziom 11  
    witam
    Podczas debugowania przy pierwszym wykonaniu pętli while nie odświeża stanu rejestrów chodzi o PORTC zaznaczony na czerwono. Problem znika gdy przejdzie jeden raz pętlę While wtedy zaczyna się zmieniać stan portu PORTC. Niżej załączam listing programu i zrzut z ekranu. Co może być przyczyną ?????
    Avr studio wersja 4.18 build 716
    procek: ATMega16A
    versja AVRGCC: WinAVR20100110




    Problem z debbugiem w AVR studio

    a tu listing programu:


    
    #define F_CPU  12000000
    #include <avr/io.h>
    #include <util/delay.h>
    
    int main (void)
    {
    
     int licznik;
    for (licznik=0;licznik<256;++licznik)
    {
    _delay_us(100);
    PORTD = licznik;
    }
    
    unsigned char counter;
    counter = 1;
    //set PORTB for output
    DDRC = 0xFF;
    while (1)
    {
     PORTC = 0x55;
     PORTC = 0x56;
     PORTC = 0x57;
     PORTC = 0x58;
     PORTC = 0x59;
     PORTC = 0x60;
     _delay_us(1);
     PORTC = 0xAA;
     _delay_us(1);
    }
    return 1;
    }
    
  • REKLAMA
  • #2 8971336
    janbernat
    Poziom 38  
    A warnning-i się czyta?
    To w tym okienku na dole.
  • REKLAMA
  • #3 8971396
    grzesFox
    Poziom 11  
    janbernat napisał:
    A warnning-i się czyta?
    To w tym okienku na dole.



    taki mam wynik build (Po poprawce z DDRC - 0xFF; na DDRC = 0xFF;) :

    
    
    Build started 7.1.2011 at 14:01:28
    avr-gcc  -mmcu=atmega16a -Wall -gdwarf-2 -std=gnu99 -O3 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT Moj_z_avrgcc.o -MF dep/Moj_z_avrgcc.o.d  -c  ../Moj_z_avrgcc.c
    avr-gcc -mmcu=atmega16a -Wl,-Map=Moj_z_avrgcc.map Moj_z_avrgcc.o     -o Moj_z_avrgcc.elf
    avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature  Moj_z_avrgcc.elf Moj_z_avrgcc.hex
    avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex Moj_z_avrgcc.elf Moj_z_avrgcc.eep || exit 0
    avr-objdump -h -S Moj_z_avrgcc.elf > Moj_z_avrgcc.lss
    
    AVR Memory Usage
    ----------------
    Device: atmega16a
    
    Program:     188 bytes (1.1% Full)
    (.text + .data + .bootloader)
    
    Data:          0 bytes (0.0% Full)
    (.data + .bss + .noinit)
    
    
    Build succeeded with 0 Warnings...
    
    
    
  • REKLAMA
  • #4 8971918
    janbernat
    Poziom 38  
    No i teraz działa.
  • REKLAMA
  • #5 8990205
    grzesFox
    Poziom 11  
    janbernat napisał:
    No i teraz działa.


    niestety nie działa..... dalej to samo :-((((((((



    Próbowałem na innych wersjach AVR-GCC miałem pod ręką jakąś z 2007 roku i działa debug bez problemu.... z najnowszą są problemy ....
    dodam tylko że system operacyjny to win7 64bit Ultimate

    może ktoś ma jakiś pomysł ????
  • #6 8990499
    Balu
    Poziom 38  
    Jak wywalisz optymalizację na -o0 wtedy w "debugu" działa od razu, w -os też działa "w realu" (disasm mowi działa), tylko z jakiegoś powodu nie do końca działa w avrstudio:) Ale...nie powinno się debugować -os:)(chyba że jesteś hardcorem) ani używac -o0 (nie działają delaye)
    Ł.
REKLAMA