-
        

Ergebnis 1 bis 6 von 6

Thema: Einstiegsprobleme mit dem RN-Control1.4 Mega32...

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    11.09.2004
    Ort
    Wien
    Alter
    31
    Beiträge
    26

    Einstiegsprobleme mit dem RN-Control1.4 Mega32...

    Anzeige

    Hallo!

    Hab letzte Woche endlich das Paket mit dem RN-Control1.4 bekommen

    Nun hab ich aber leider leichte Probs mit der Programmierung...

    Zum Programmieren bzw Senden verwende ich
    PonyProg2000 2.06f Beta
    AVR Studio 4.12 Build 460 und
    WinAVR zum kompilieren

    Zusätzlich hab ich zum Testen noch Bascom installiert!

    Wenn ich nun das Bascom-Testprogramm in Bascom kompiliere und per
    PonyProg2000 sende, funktioniert das Programm auf Anhieb (eh klar ^^)

    Wenn ich aber per AVR-Studio was schreibe, funktioniert gar nix

    Zum Anfang wär ein Blink- oder Lauflicht auf den Leds (also PortC) interessant...

    Code:
    #include <avr/io.h>
    #include <avr/iom32.h>
    
    void wait(int x);
    
    int main(void)
    {
       	
        while(1)
        {
         PORTC = ~PORTC;
    	 wait(10000);
        }
    
    }
    void wait(int x)
    {
    	while(x)x--;
    }
    Liegt wohl an meinem Programm oder an den Einstellungen in AVR-Studio oder?

    Danke schonmal für die Hilfe!
    MfG Gurunzler
    * Hi! I'm a signature virus! Copy me into your ~/.signature to help me spread! *

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    31
    Beiträge
    4.255
    Viellecht solltest du mal auf die Fehlermeldungen achten, die der Compiler bei deinem Programm liefert:
    #error "Attempt to include more than one <avr/ioXXX.h> file."

    Mit dem #include <avr/io.h> sucht der Compiler sich die Datei iom32.h schon automatisch raus, sie darf normalerweise nie von Hand mit eingebunden werden! Immer nur die io.h verwenden!

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    11.09.2004
    Ort
    Wien
    Alter
    31
    Beiträge
    26
    So, veränderter Code:
    Code:
    #include <avr/io.h>
    
    void wait(int x);
    
    int main(void)
    {
          
        while(1)
        {
        PORTC = ~PORTC;
        wait(10000);
        }
    
    }
    void wait(int x)
    {
       while(x)x--;
    }
    Output:
    rm -rf knightrider.o knightrider.hex dep/ knightrider.hex knightrider.eep
    Build succeeded with 0 Warnings...
    avr-gcc -mmcu=atmega32 -Wall -gdwarf-2 -O0 -Wp,-M,-MP,-MT,knightrider.o,-MF,dep/knightrider.o.d -c ../knightrider.c
    avr-gcc -mmcu=atmega32 knightrider.o -o knightrider.elf
    avr-objcopy -O ihex -R .eeprom knightrider.elf knightrider.hex
    avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex knightrider.elf knightrider.eep
    Build succeeded with 0 Warnings...
    * Hi! I'm a signature virus! Copy me into your ~/.signature to help me spread! *

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.07.2005
    Beiträge
    569
    Hmm, vielleicht solltest du dem PORTC vorher noch erklären, das er gefälligst als Ausgang zu arbeiten hat. Ohne diesen Hinweiss arbeitet er immer als Tristate Eingang.

    Grüße,

    da Hanni.

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Und wo liegt jetzt Dein Problem ?
    Wenn Du denkst, daß Deine wait() Funktion auch noch was tut dann irrst Du gewaltig...
    füge in der Funktion __asm volatile ("nop); ein, dann soltte es besser klappen.

    Warum das so ist, wirst Du in der Wiki rausfinden.

    Gruß Sebastian

    EDIT:
    @Hanni, ups, hehe ja genau, den muß er erst als Ausgang deklarieren
    Software is like s e x: its better when its free.
    Linus Torvald

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    11.09.2004
    Ort
    Wien
    Alter
    31
    Beiträge
    26
    Danke schön, jetzt funktionierts
    * Hi! I'm a signature virus! Copy me into your ~/.signature to help me spread! *

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •