- Akku Tests und Balkonkraftwerk Speicher         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Ansteuerung LCD des Butterfly AVR mit BASCOM Demo 1.11.7.7

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    21.08.2004
    Beiträge
    5

    Ansteuerung LCD des Butterfly AVR mit BASCOM Demo 1.11.7.7

    Anzeige

    Praxistest und DIY Projekte
    Hallo!

    Ich möchte das doch recht vielseitige Entwicklungsboard Butterfly AVR mit Bascom in Version 1.11.7.7 programmieren.

    Zur Ansteuerung des LCDs gibt es eine Lib (LBX) "lcd_butterfly.lbx". Weiterhin gibt es unter /samples das Programm "m169_lcd.bas", welches die grundlegende Funktion zur Anzeige demonstrieren soll. Leider bricht bei mir dieses Programm mit Error Code 320 beim Syntaxcheck ab. Ich vermute, daß es irgendwas mit dem Label "Lcd_butterfly_data:" und dem folgenden Datenfeld zu tun haben muß, kann den Fehler aber nicht finden. Am Programm selbst habe ich nur die o.g. lib durch lbx ersetzt ansonsten aber keine Änderungen vorgenommen.

    Das Problem tritt bei mir an unterschiedlichen Rechnern (WIN98 und XP) auf. Kann es mit den Beschränkung der Demo-Version zusammen hängen? Funktioniert bei anderen Usern dieses Sample-Programm?

    Thomas!

  2. #2
    Gast
    Hi,
    Benutzt duch auch die Demoversion?
    Ich hab das selbe Problem wie du,
    der Fehler liegt aber anscheinend nicht im Lcd_butterfly_data bereich, sondern anscheinend einfach beim einbinden der libray.
    Der Code lässt sich problemlos compilieren, wenn mann die ganze $lib zeile auskommentiert.
    Leider funktioniert der Code dann aber nicht, wenn mann ihn auf das butterfly überträgt (Bei mir brummt der Speaker nur kurz auf)

    Ich denke man benötigt einfach die lcd_butterfly.lib (welche ja anscheinend bei der vollversion dabei ist)

    mfg KingNothing

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2004
    Ort
    Bocholt
    Beiträge
    20
    Hallo,

    ich hatte das gleiche Problem.
    Schaut euch doch mal diese Seite an:

    http://www.mcselec.com/forum/viewtop...ight=butterfly

    dort gibt es eine leicht modifizierte lcd_butterfly.lbx-Datei

    In eurem File folgende Einstellung nicht vergessen:

    $lib "lcd_butterfly.lbx"

    und

    Dim _butterfly_digit As Byte


    Gruß

  4. #4
    Gast
    thx Nick_Knatterton,
    leider funktioniert bei mir immer noch nicht,
    das beispiel lässt sich jetz ohne Probleme compilieren,
    aber wenn ich das HEX file mit avrdude auf das Butterfly übertrage und dort starte höre ich nur ein Knacken im Lautsprecher.

    Bin am verzweifeln
    KingNothing

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2004
    Ort
    Bocholt
    Beiträge
    20
    Ich benutze zum programmieren PonyProg2000 (Freeware ) und einen parallelen Programmieradapter. (AVR-ISP-kompatibel)

    Die LCD-Demo funktionierte bei mir einwandfrei, nachdem ich oben genannte Änderungen gemacht habe.

    Wird das File in den richtigen Bereich kopiert? PonyProg unterscheidet hier zwischen Programm-Memory und Daten-Memory.
    Hast du als Prozessortyp den ATMega169 eingestellt?

  6. #6
    Gast
    Ich benutze Avrdude (wegen Linux), PonyProg unterstützt das Programmieren per Serieller Schnittstelle (über den Bootloader) AFAIK ganicht.
    Das Programmieren kann es eigentlich nicht sein, weil das ADC Beispiel klappt einwandfrei.
    Den richtigen Prozessortyp? Meinst du im Bascom? Ja hab ich.

    Kannst du mir vielleicht mal dein HEX file senden, dann sehn wir ja ob es am Compiler oder am Übertragen liegt.

    P.S: Programmier tu ich es mit dem Befehl
    Code:
    avrdude -p atmega169 -P /dev/ttyS0 -c butterfly -U flash:w:M169_LCD.HEX

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2004
    Ort
    Bocholt
    Beiträge
    20
    Hier erst einmal das dazugehörige Bas-File (incl. Tastaturabfrage und Tastenquittungston):

    Code:
    :'-------------------------------------------------------------------------------
    '                       (c) 2004, MCS Electronics
    '               M169_LCD.BAS demonstrates LCD butterfly driver
    '-------------------------------------------------------------------------------
    
    $regfile = "m169def.dat"
    $crystal = 8000000
    $baud = 9600
    $lib "lcd_butterfly.lbx"
    
    'you need to dim this byte
    Dim _butterfly_digit As Byte
    Dim S As String * 6
    Dim I As Byte
    Dim Taster_nummer As Byte
    Dim Pulses As Word , Periods As Word
    Pulses = 256 : Periods = 100                                'set variables
    Speaker Alias Portb.5                                       'define port pin
    
    
    Declare Sub Taster_1_routine
    Declare Sub Taster_2_routine
    Declare Sub Taster_3_routine
    Declare Sub Taster_4_routine
    Declare Sub Taster_5_routine
    
    Config Pinb.4 = Input
     Portb.4 = 1
    Config Pinb.6 = Input
     Portb.6 = 1
    Config Pinb.7 = Input
     Portb.7 = 1
    Config Pine.2 = Input
     Porte.2 = 1
    Config Pine.3 = Input
     Porte.3 = 1
    'Config Serialin = Buffered , Size = 12
    
    
    
    
    Restart:
    
    Cls
    S = "AVR"
    
    Cls : Lcd "BASCOM" : Wait 2
    
    Cls : Lcd S : Wait 1
    
    
    
    
    
    Do
       For I = 1 To 5
          Taster_nummer = I
          Select Case Taster_nummer
          Case 1 : Debounce Pinb.6 , 0 , Taster_1_routine , Sub
          Case 2 : Debounce Pinb.7 , 0 , Taster_2_routine , Sub
          Case 3 : Debounce Pinb.4 , 0 , Taster_3_routine , Sub
          Case 4 : Debounce Pine.2 , 0 , Taster_4_routine , Sub
          Case 5 : Debounce Pine.3 , 0 , Taster_5_routine , Sub
          End Select
       Next
    
    Loop
    
    End
    
    Sub Taster_1_routine
          Gosub Tastenquittung
       Cls : Lcd "NORD"
       Print "NORD"
    End Sub
    
    Sub Taster_2_routine
          Gosub Tastenquittung
       Cls : Lcd "SUED"
       Print "SUED"
    End Sub
    
    Sub Taster_3_routine
          Gosub Tastenquittung
       Cls : Lcd "SELECT";
    
    End Sub
    
    
    Sub Taster_4_routine
          Gosub Tastenquittung
       Cls : Lcd "WEST";
       Print "WEST"
    End Sub
    
    Sub Taster_5_routine
          Gosub Tastenquittung
       Cls : Lcd "OST"
       Print "OST"
    End Sub
    
    Tastenquittung:
       Sound Speaker , Pulses , Periods                         'make some noise
    Return
    
    
    
    Lcd_butterfly_data:
    Data 0%                                                     ' space
    Data 0%                                                     ' !
    Data 0%                                                     '""
    Data 0%                                                     ' #
    Data 0%                                                     '$
    Data 0%                                                     '  %
    Data 0%                                                     ' &
    Data 0%                                                     '  '
    Data 0%                                                     '  (
    Data 0%                                                     '  )
    Data 0%                                                     ' *
    Data 0%                                                     ' +
    Data 0%                                                     ' ,
    Data 0%                                                     ' -
    Data 0%                                                     ' .
    Data 0%                                                     '/
    Data &H5559%                                                ' 0
    Data &H0118%                                                '1
    Data &H1E11%                                                ' 2
    Data &H1B11%                                                ' 3
    Data &H0B50%                                                ' 4
    Data &H1B41%                                                ' 5
    Data &H1F41%                                                '6
    Data &H0111%                                                ' 7
    Data &H1F51%                                                ' 8
    Data &H1B51%                                                '9
    Data 0%                                                     ':
    Data 0%                                                     ';
    Data 0%                                                     '<
    Data 0%                                                     '=
    Data 0%                                                     '>
    Data 0%                                                     '?
    Data 0%                                                     '@
    Data &H0F51%                                                ' A
    Data &H3991% , &H1441% , &H3191% , &H1E41% , &H0E41% , &H1D41% , &H0F50% , &H2080% , &H1510% , &H8648% , &H1440% , &H0578%
    Data &H8570% , &H1551% , &H0E51% , &H9551% , &H8E51% , &H9021% , &H2081% , &H1550% , &H4448% , &HC550% , &HC028% , &H2028% , &H5009%
    hier das Hex-File dazu:
    Angehängte Dateien Angehängte Dateien

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    29.05.2004
    Ort
    Zuhause
    Alter
    37
    Beiträge
    28
    Tja...
    Dein Hex läuft einwandfrei,
    wenn ich es selbst compiliere und übertrage passiert allerdings rein garnichts!

    Mir ist aufgefallen das mein HEX-File nur 439 Byte gross ist, es scheint mir als würd ich die Lib garnicht mir Linken.

    Ich muss nicht noch etwas bestimmtes umstellen damit es funktioniert?

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2004
    Ort
    Bocholt
    Beiträge
    20
    Ich habe zwar die Optionen, soweit bekannt, eingestellt, aber inwiefern diese Einfluß auf die Generierung des Hex-Files haben weiß ich nicht.

    Im Compiler-Menü kann man z.B. die Ports für die diversen Schnittstellen angeben, die defaultmäßig nicht mit dem Butterfly-Board übereinstimmen.

    Chip: m169def.dat
    I2C: SCL-> Port E.4; SDA->Port E.5
    SPI: Clock-> Port B.1; MOSI-> Port B.2; MISO-> Port B.3; SS-> Port B.0

    ich verwende z.Z. übrigens die hier gepostete 1.11.7.8'er EXE-Datei und die genannte lcd-library.

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    29.05.2004
    Ort
    Zuhause
    Alter
    37
    Beiträge
    28
    Ich hab auch mal auf die 1.11.7.8. EXE geupdatet und die Ports geändert,
    hat jedoch nichts gebracht,
    benutzt du denn auch die Demoversion?

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

LiFePO4 Speicher Test