-         

Ergebnis 1 bis 7 von 7

Thema: Programmierung MEGA128

  1. #1
    Neuer Benutzer
    Registriert seit
    22.03.2005
    Ort
    Brunnen,SZ
    Beiträge
    4

    Programmierung MEGA128

    Anzeige

    Habe mir ein Testset ATMega128 bei der Grazer Firma RIBU gekauft.
    Leider bin ich anscheinend zu blöd um ein Programm zum laufen zu bringen.
    Habe es zwar irgendwie geschafft, das Demoprogramm aus dem Speicher zu bekommen aber ein eigenes Prog läuft anscheinend nicht
    (nicht mal "Hello World" schaffe ich am LCD).

    Kann mir vielleicht jemand dabei helfen ???
    Bin bei diesem µC leider komplett blank !!!

    Danke schon jetzt für gute Tips.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    15.01.2005
    Ort
    Niederdorfelden / Hessen
    Alter
    49
    Beiträge
    368
    Hi somewhere,

    Womit arbeitest Du BasCom, WinAVR, Pascal ???

    Wenn das Demoprogramm gelaufen ist, kannst Du schon mal sicher sein, das die Hardware in Órdnung ist. Poste doch mal den selbst geschriebenen Code, damit wir sehen können, was Du gemacht hast.

    Ohne Info können wir nicht antworten.

    Gruß Klaus
    Eine verrückte Idee ist besser als keine

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.06.2004
    Ort
    Aachen
    Beiträge
    2.674
    Womit arbeitest Du BasCom, WinAVR, Pascal ???
    Vermutlich mit Bascom.
    Der Code wäre echt ganz interessant. Schonmal nen Led-Blinker hinbekommen? Klappt die Programmübertragung denn? Was hast du denn bei Ribu gekauft? Sind das ganze Boards?

    MFG Moritz

  4. #4
    Gast
    Habe komplette Boards gekauft.
    Arbeite mit Bascom. Ein Verify des Programmers sagt mir, dass der Code im Flash mit dem Code im Buffer übereinstimmt.

    Der Code ist simpel:

    $regfile = "m128def.dat"
    $crystal = 16000000

    CLS
    LCD "Hello World"

    Settings für das LCD sind laut beiliegendem Schaltplan richtig konfiguriert.

  5. #5
    Gast

    LCD ansteuern

    Dieses Programm sollte funktionieren :

    Code:
    'Fehlersuche
    
    'LCD mit HD44780 kompatiblem Controller
    'Anschluß
    'LCD Pin 1 =  0Volt (GND)
    'LCD Pin 2 =  +5 Volt (VDD)
    'LCD Pin 3 =  0-5 Volt Kontrast (V0): Poti 10k zwischen 0V und 5V Schleifer an LCD3
    'LCD Pin 4 =  RS an PortA.2
    'LCD Pin 5 =  R/W an GND     
    'LCD Pin 6 =  E an Porta.3
    'LCD Pin 7 =  DB0       'frei
    'LCD Pin 8 =  DB1       'frei
    'LCD Pin 9 =  DB2       'frei
    'LCD Pin 10 = DB3       'frei
    'LCD Pin 11 = DB4   an Porta.4
    'LCD Pin 12 = DB5   an Porta.5
    'LCD Pin 13 = DB6   an Porta.6
    'LCD Pin 14 = DB7   an Porta.7
    
    '_____________________________________________________________
    
     $crystal = 16000000
     $regfile = "m16def.dat"
    
    
    Config Lcd = 16 * 2          'welches LCD wird verwendet ?
    
    Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2
    ' wie ist das LCD angeschlossen - muß in einer Zeile stehen
    
    Initlcd                                 'initialisiert das LCD - nicht vergessen
    
    '--------------------------------------------------------------
    
    Do                                      'Begin Hauptschleife
    Cls                                     'löscht das LCD 
    Upperline                               'setzt Cursor in die obere Zeile
    Lcd "Erster Test"
    Lowerline                            'setzt Cursor in die untere Zeile
    Lcd "Hallo Welt!!!"
    
    Wait 1                                  'wartet 1 Sekunde
    Cls                                     'löscht LCD
    Wait 1                                  'wartet 1s und schreibt erneut
    
    Loop                                    'erneut aufrufen
    End
    Du mußt hier noch die Anschlüsse von deinem LCD eintragen bei
    Config Lcdpin = Pin , Db4 = Porta.4 ... sagt wie dein LCD angeschlossen ist und

    config lcd = 16 *2 (= LCD mit 2 Zeilen a 16 Buchstaben) sagt welches LCD du verwendest


    Du mußt in $regfile noch deinen Chip einstellen und in $chrystal noch deinen Quartz.

    Konfigurationen hier im Programm haben Vorrang vor Konfigurationen im Bascom, sollten aber trotzdem übereinstimmen, sonst gibts beim Übertragen Fehlermeldungen.

    Viel Erfolg Bernd

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    26.01.2005
    Ort
    Neuburg / Donau
    Alter
    56
    Beiträge
    80
    Ich war nicht eingeloged.

    Bernd (Gandalf)

  7. #7
    Gast
    Zitat Zitat von Gandalf
    Ich war nicht eingeloged.

    Bernd (Gandalf)
    Ich habe mir mal die Datenblätter angesehen auf
    http://www.ribu.at/

    Die steuern das LCD im 8-Bit Mode an, das müßte ich selbst erst mal testen.
    Mein Prog und Bascom verwendet den gebräuchlicheren 4-Bit Mode.
    Wenn das bei dem Board geht, würde ich die Ausgänge PA0-PA3 erstmal nicht an das LCD anschließen.

    Gruß Bernd

Berechtigungen

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