- 3D-Druck Einstieg und Tipps         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 24

Thema: Problem mit Installierung von AVRStudio4

  1. #11
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    Anzeige

    Praxistest und DIY Projekte
    Zitat Zitat von manu418
    Hallo,
    hm, so wie du das schreibst, hat das bei mir nicht wirklich funktioniert. Hast du da evtl. ein Beispielprogramm für?

    Und noch eine andere Frage: Kann ich mit meinem ATMEGA8515 nicht mit einem PRINT-Befehl irgendwie mit dem PC kommunizieren, sodass er mir im Terminal Emulator anzeigt, was ich im Programm hinter dem PRINT-Befehl stehen habe?
    Habe auch etwas Falsch beschrieben, mit Port(x).y= 1/0 wird der interne Pull Upp ein/aus geschaltet.

    Mit Pin(X).y Wird dann der Pin ein/aus geschaltet. Wenn die LED gegen VCC angeschlossen ist, muss der Pin zum Einschalten Pin(x).y = 0 gesetzt werden. ist die LED gegen GND verdratet, Pin(x).y = 1.... Die Pin Richtung wird mit
    config (X.Y) as .....Eingestellt.

    Grüße Richard

  2. #12
    Benutzer Stammmitglied
    Registriert seit
    11.03.2009
    Beiträge
    76
    Hallo,
    jetzt habe ich wieder ein Problem bzw. mehrere:

    1. Der neue ATTINY12 wird zwar manchmal erkannt, allerdings kann ich ih nicht programmieren, denn egal was ich eingebe und sei es nur $regfile = "attiny12.dat" , der Compiler sagt: "OUT of SRAM space" und dann eine Angabe, wo das Programm sich befindet.

    2. Der MEGA8515 wird plötzlich auch nicht mehr erkannt. Ich habe mal die Funktionen "Read code from Chip into buffer" und "Write buffer into Chip verwendet. Außerdem, da könnte ich mich aufregen über mich, steckten einmal beide uCs gleichzeitig drin.

    Danke schonmal im Vorraus!

    MFG Manuel

  3. #13
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    41
    Beiträge
    2.009
    Zu 1: Ich meine mich zu erinnern, dass der Tiny12 keinen RAM hat. Wenn du also irgendwas hast, das den RAM brauchst, stimmt diese Fehlermeldung "Out of SRAM space" schon.
    #ifndef MfG
    #define MfG

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    11.03.2009
    Beiträge
    76
    Hallo,
    hm, Problem 2 hat sich gelöst. Der ATMEGA wird wieder erkannt und kann programmiert werden. Nur der ATTINY macht noch Probleme. Ich habe jetzt irgendein Beispielprogramm in Bascom kopiert:

    Code:
    $regfile = "ATtiny12.DAT"
    $crystal = 1600000
    $tiny
    $noramclear
    $hwstack = 0
    $swstack = 0
    $framesize = 0
    
    Const L1_preset = 253
    Const L2_preset = 210
    
    Const Preset_01s = 1                                        ' 0,1s
    Const Preset_05s = 5                                        ' 0,5s
    Const Preset_15s = 15                                       ' 1,5s
    
    Loop_1_ctr Alias R16
    Loop_2_ctr Alias R17
    Loop_3_ctr Alias R18
    
    'Relais an PB4
    Config Portb.4 = Output
    
    'Warte 1500 ms
      !LDI     Loop_3_Ctr, Preset_15s                           ' Preset = 15 entspricht ca. 1,5 Sekunden
      !RCALL   ASM_Delay
    
    'Relais Ein (HIGH)
    Portb.4 = 1
    
    'Warte 500 ms
      !LDI     Loop_3_Ctr, Preset_05s                           ' Preset = 5 entspricht ca. 0,5 Sekunden
      !RCALL   ASM_Delay
    
        'Relais Aus (Low)
    Portb.4 = 0
    
    Do
    Loop
    
    Asm_delay:
    Lbl_loop_3:
      !LDI     Loop_2_Ctr, L2_Preset
    Lbl_loop_2:
      !LDI     Loop_1_Ctr, L1_Preset
    Lbl_loop_1:
      !DEC     Loop_1_Ctr
      !BRNE    Lbl_Loop_1
      !DEC     Loop_2_Ctr
      !BRNE    Lbl_Loop_2
      !DEC     Loop_3_Ctr
      !BRNE    Lbl_Loop_3
      !RET
    
    End
    Wenn ich jetzt versuche das zu kompilieren und auf den uC zu laden, kommt nach kurzer Zeit die Fehlermeldung: "Format '%d' invalid or incompatible with argument." Was kann das denn heißen? Ist da noch ein Fehler drin?

  5. #15
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    41
    Beiträge
    2.009
    Welche Zeile wird da angemeckert?
    #ifndef MfG
    #define MfG

  6. #16
    Benutzer Stammmitglied
    Registriert seit
    11.03.2009
    Beiträge
    76
    Hallo,
    das ist ja das Problem. Es wird keine Zeile angemeckert. Das ganze läuft so ab: Ich drücke auf den Button "Compile", der bei mir auch gleichzeitig damit verbunden ist, dass er das Programm nach dem Compilieren auf den uC überträgt. Das Compilieren klappt. Dann öffnet sich das Programmfenster. Der ATTINY12 wird oben links angezeigt, ist also erkannt. Dann geht die Status LED auf dem STK500 auf gelb und die Fehlermeldung kommt. Dann muss ich erst das STK500 wieder ausschalten, um die gelbe LED wieder grün zu bekommen. Das Programm ist nicht übertragen. Übrigens: Die Lock-und Fusebits des uCs kann ich ändern. Aber es kann kaum sein, dass es daran liegt, dass ich an einem uC etwas falsch eingestellt habe, da es mit anderen ATTINY12 genauso wenig geht.

    MFG Manuel

  7. #17
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.065
    Kann es sein dass die ISP Frequenz falsch eingestellt ist? Hatte das gleiche Problem.

    MfG Hannes

  8. #18
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    Moin moin.

    Programmiere einmal die reckt aus dem Studio4 heraus, da gibt es bessere Fehlermeldungen und Du kannst die ISP Frequenz auslesen/einstellen. Zum Testen kannst Du die auch einmal recht niedrig einstellen. Ach ja und darauf achten das der Chip im richtigem Sockel vom STK500 steckt! ist mir auch schon öfters passiert das ich darauf nicht geachtet habe und die Chips sind nicht alle gleich verdrahtet!

    Gruß Richard

    Gruß Richard

  9. #19
    Benutzer Stammmitglied
    Registriert seit
    11.03.2009
    Beiträge
    76
    Hallo,
    vielen Dank erstmal für eure Hilfe! Es klappt jetzt ganz gut soweit...naja eigentlich nicht. Ich bekomme jetzt 2 der 3 ATTINYs programmiert. Testweise mit einem Wechselblinker. Der 3. hat den Geist aufgegeben. Sobald ich in AVRStudio4 die Fuse- und Lockbits des uCs aufrufen will, kommt die Fehlermeldung, dass man an dem uC nix machen kann, weil er keine Verbindung oder so hat. In Bascom wird er auch nicht mehr erkannt. Ich kann es nicht genau sagen, aber wahrscheinlich lag es an einem Fusebit und einem Lockbit:

    - am CKSEL: Das musste wohl auf internem RC-Oszillator stehen

    - am LB21: Da muss man auf "Further progamming and verify of the flash and EEPROM is disabled" umstellen

    Da wären wir schon bei Problem 1: Ich stelle wie oben genannt die Fusebits und Lockbits in Bascom ein und programmiere. Das Programm wird erfolgreich übertragen. Wenn ich dann nochmal mr die Fusebits und Lockbits anschaue, sehe ich: Das LB21 hat sich wieder zu "No memory features enabled" gewandelt. Bevor ich wieder etwas programmieren will, muss ich es wieder ändern. Tue ich das nicht, kommt wieder die Fehlermeldung wie in ein paar Beiträgen früher genannt und das Programm wird nicht übertragen.

    Dann noch ein Problem: Ich will ein Port des ATTINY12 als Input nutzen. Das geht nicht. Ich kann scheinbar alle als Output nutzen, aber als Input geht nix. Es ist ja so, dass der uC nur PORTB von 0 - 5 hat. Kann es sein, dass es nicht geht, Ports mit gleichen Buchstaben unterschiedliche Aufgaben zuzuweisen? Mein Code sieht z.B. so aus:

    Code:
    $regfile = "ATtiny12.DAT"
    $crystal = 2000000
    $tiny
    $noramclear
    $swstack = 0
    $framesize = 0
    
    Config Portb.0 = Output
    Config Portb.2 = Output
    Config Pinb.4 = Input
    
    Do
    
      Portb.0 = 0
      Portb.2 = 1
      Waitms 100
      Portb.0 = 1
      Portb.2 = 0
      Waitms 100
    Loop Until Pinb.4 = 1
    
    Portb.0 = 1
    Portb.2 = 1
    
    End
    Internen Pullup brauche ich nicht, den hat das Board soweit ich weiß. Wenn ich sage, er soll wiederholen, bis PINB.4 = 0 ist, hört er sofort auf. Achso, zum Verständnis des Codes: PORTB.2 = 0 heißt, dass LED 2 leuchtet.

    MFG Manuel

  10. #20
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.065
    Ich kenne mich in Bascom nicht aus aber könnte es sein, dass es "Portb.4 = Input" statt "Pinb.4 = Input" heißt?

    MfG Hannes

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress