Erster Schritt Richtung Digitaltechnik, analoges Signal digital steuern

Thema: Erster Schritt Richtung Digitaltechnik, analoges Signal digital steuern

  1. Cysign:
    Hmmm....ich vermute grade, dass mien AVRISP mkII ne zu neue firmware fürs 4er Studio hat...
    Studio 4 hatte die firmware des Programmers geupdatet. Und Studio 6 hts danach direkt nochmal geupdatet...
     
  2. Cysign:
    Okay, mit Studio 6 auf 150Khz im ISP-Modus hats nun geklappt.
    Scheinbar lags nur an der Übertragungsgeschwindigkeit.
    Ich hab eben gelesen, dass die SVRs immer auf 1Khz ausgeliefert werden. Und da man im ISP-Modus wesentlich darunter liegen soll...hab ichs einfach mal ausprobiert.

    Mit deinem Code leuchtet die LED nun:
    #include <avr/io.h>
    #include <avr/delay.h>

    int main (void)
    {
    DDRD = (1<<PD0);
    while (1)
    {
    PORTB |= (1<<PD0);
    _delay_ms(1000);
    PORTB &= ~(1<<PD0);
    _delay_ms(1000);
    }
    }
    Aber sie blinkt nicht.
    Mal schaun, ob ich das hinbekomme
     
  3. Cysign:
    Ha, geil, es blinkt!

    Danke für deine Hilfe!

    int main (void)
    {

    DDRD = (1<<PD0);
    while (1)
    {
    _delay_ms(1000);
    DDRD = (0<<PD0);
    _delay_ms(1000);
    DDRD = (1<<PD0);
    }


    /*
    DDRD = (1<<PD0);
    while (1)
    {
    PORTB |= (1<<PD0);
    _delay_ms(1000);
    PORTB &= ~(1<<PD0);
    _delay_ms(1000);
    }
    */
    }
     
  4. Cysign:
    Hmmm.....jetzt darf ich mich erstmal in die Grundlagen der AVR-Programmierung einleben
     
  5. Avatar von 021aet04

    021aet04:
    Das kann nicht funktionieren. Du schaltest nur den Pin zwischen Ein- und Ausgang um. Beim Ausgeklammerten ist der Fehler das du den PD0 (Port D Pin 0) als Ausgang definierst, aber mit PORTB den Port B (nicht D) ansteuerst. Habe gerade gesehen das ich das falsch geschrieben habe. Ich ändere es gleich. Richtig wäre statt PORTB PORTD zu schreiben.

    Entschuldige
    MfG Hannes
     
  6. Cysign:
    Das mit den Ports hab ich schon gemerkt. Hab die LED deshalb erstmal testweise an den von dir genannten Port gestöpselt, um diesbezüglich nen Fehler auszuschließen.
    Inzwischen hab ich an beiden Ports ne LED zum Spielen

    Hast du ne gute Referenz zu den möglichen Befehlen auf Lager?
     
  7. Avatar von Torrentula

    Torrentula:
    Hast du ne gute Referenz zu den möglichen Befehlen auf Lager?
    Also die beste Seite, um mit dem AVR-GCC warm zu werden ist meiner Meinung nach diese: mikrocontroller.net
    MfG Torrentula
     
  8. Cysign:
    Alles klar, dann mal ab damit als PDF aufs Tablet
    Danke!
     
  9. Cysign:
    So, nachdem ich lange keine Zeit mehr gefunden habe, mich weiter mit der Materie zu befassen, hab ich eben endlich mal wieder das Atmel Studio gestartet. Nach anfänglicher Verwunderung, warum der µC meine LED nicht mehr blinken lassen wollte, hab ich dann die Ursache gefunden. Das Studio hat scheinbar (vllt. hats sich geupdatet oder sonst was?!) die Übertragungsrate von 150KHz auf 250KHz gestellt. Und so lief die Übertragung an meinen µC nicht mehr. Komische Sache.
    Aber jetzt blinkts endlich wieder und ich kann weiter machen
     
  10. Avatar von 021aet04

    021aet04:
    Auf welche Frequenz ist der Atmega eingestellt (Taktfrequenz) bzw wieviel Mhz verwendest du? Wenn die Übertragung schief geht sollte AVR Studio eine Meldung ausgeben (Device not found, Programmer not found,...). Hat das AVR Studio einen Fehler ausgegeben?

    MfG Hannes