- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 9 von 9

Thema: Brauche Hilfe bei Basecon programmierung rs232

  1. #1

    Brauche Hilfe bei Basecon programmierung rs232

    Anzeige

    Praxistest und DIY Projekte
    Hallo,
    Ich möchte gern die einzelnen Ports von meinem Attiny via Pc ansteuern, doch leider komm ich in der Programmierung nicht weiter bzw. sie funktioniert nicht so wie ich will.

    Code:
     $regfile = "2313def.dat"
     $framesize = 24
     $swstack = 8
     $hwstack = 32
     $crystal = 12000000
     $baud = 9600
    
    Config Pind.2 = Output
    Config Pind.3 = Output
    Config Pind.4 = Output
    Config Pind.5 = Output
    Config Pind.6 = Output
    Config Pinb.0 = Output
    Config Pinb.1 = Output
    Config Pinb.2 = Output
    Config Pinb.2 = Output
    Config Pinb.3 = Output
    Config Pinb.4 = Output
    
    Portb.0 = 1
    Portb.1 = 1
    Portb.2 = 1
    Portb.3 = 1
    Portb.4 = 1
    Portd.2 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portd.6 = 1
    
    Dim i As Byte
    
    Do
    Print "Befehl eingeben"
    If Usr.rxc = 1 Then
    I = Udr
    Select Case i
    
    Case "01"
    Portb.0 = 0
    Case "02"
    Portb.0 = 1
    
    Case "03"
    Portb.1 = 0
    Case "04"
    Portb.1 = 1
    
    Case "05"
    Portb.2 = 0
    Case "06"
    Portb.2 = 1
    
    Case "07"
    Portb.3 = 0
    Case "08"
    Portb.3 = 1
    
    Case "09"
    Portb.4 = 0
    Case "10"
    Portb.4 = 1
    
    Case "11"
    Portd.2 = 0
    Case "12"
    Portd.2 = 1
    
    Case "13"
    Portd.3 = 0
    Case "14"
    Portd.3 = 1
    
    Case "15"
    Portd.4 = 0
    Case "16"
    Portd.4 = 1
    
    Case "17"
    Portd.5 = 0
    Case "18"
    Portd.5 = 1
    
    Case "19"
    Portd.6 = 0
    Case "20"
    Portd.6 = 1
    
    
    Case Else
    Print "Falsche Eingabe"
    End Select
    End If
    Loop
    
    
    End
    der attiny ist über einen max232 mit dem Pc verbunden
    aber alles was ich empfange sind tausende Nullen
    ohne dass ich irgendwas gemacht hab

    wäre nett wenn mir jemand helfen könnte bin leider nur ein Neuling in Bascom

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    45
    Beiträge
    642
    Hi GeckO,

    willkommen im Roboternetz.
    Aber zunächst eine Frage: was ist "Basecon" für eine Sprache?
    Dieses Wiki hier wird dir sicher weiter helfen : https://www.roboternetz.de/wissen/in...rn_des_AVR%27s
    Übrigens wird dein Programm so nie funktionieren, vergleiche die Programme mal miteinander dann müsste es klingeln.....

    Mfg

    Neutro
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  3. #3
    Danke erstmal für den Link
    nur leider funktionierts immer noch net
    hab auch schon ein paar mal nachgeschaut ob ich alles richtig angeschlossen hab aber es passt alles

    Code:
     $regfile = "2313def.dat"
     $framesize = 24
     $swstack = 8
     $hwstack = 32
     $crystal = 12000000
     $baud = 9600
    
    Config Pind.2 = Output
    Config Pind.3 = Output
    Config Pind.4 = Output
    Config Pind.5 = Output
    Config Pind.6 = Output
    Config Pinb.0 = Output
    Config Pinb.1 = Output
    Config Pinb.2 = Output
    Config Pinb.2 = Output
    Config Pinb.3 = Output
    Config Pinb.4 = Output
    
    Portb.0 = 1
    Portb.1 = 1
    Portb.2 = 1
    Portb.3 = 1
    Portb.4 = 1
    Portd.2 = 1
    Portd.3 = 1
    Portd.4 = 1
    Portd.5 = 1
    Portd.6 = 1
    
    Dim A As Byte
    
    Do
    A = Inkey()
    If A > 0 Then
        Select Case A
          Case 49
             Portb.0 = 0
             Print "Portb.0 wurde ausgeschaltet!"               '1
          Case 50
             Portb.0 = 1
             Print "Portb.0 wurde eingeschaltet!"               '2
    
          Case 51
             Portb.1 = 0
             Print "Portb.1 wurde ausgeschaltet!"               '3
          Case 52
             Portb.1 = 1
             Print "Portb.1 wurde eingeschaltet!"               '4
    
          Case 53
             Portb.2 = 0
             Print "Portb.2 wurde ausgeschaltet!"               '5
          Case 54
             Portb.2 = 1
             Print "Portb.2 wurde ausgeschaltet!"               '6
    
          Case 55
             Portb.3 = 0
             Print "Portb.3 wurde ausgeschaltet!"               '7
          Case 56
             Portb.3 = 1
             Print "Portb.3 wurde ausgeschaltet!"               '8
    
          Case 57
             Portb.4 = 0
             Print "Portb.4 wurde ausgeschaltet!"               '9
          Case 79
             Portb.4 = 1
             Print "Portb.4 wurde ausgeschaltet!"               'O <-- Buchstabe Ohh
    
          Case 97
             Portd.2 = 0
             Print "Portd.2 wurde ausgeschaltet!"               'a
          Case 98
             Portd.2 = 1
             Print "Portd.2 wurde ausgeschaltet!"               'b
    
          Case 99
             Portd.3 = 0
             Print "Portd.3 wurde ausgeschaltet!"               'c
          Case 100
             Portd.3 = 1
             Print "Portd.3 wurde ausgeschaltet!"               'd
    
          Case 101
             Portd.4 = 0
             Print "Portd.4 wurde ausgeschaltet!"               'e
          Case 102
             Portd.4 = 1
             Print "Portd.4 wurde ausgeschaltet!"               'f
    
          Case 103
             Portd.5 = 0
             Print "Portd.5 wurde ausgeschaltet!"               'g
          Case 104
             Portd.5 = 1
             Print "Portd.5 wurde ausgeschaltet!"               'h
    
          Case 105
             Portd.6 = 0
             Print "Portd.6 wurde ausgeschaltet!"               'i
          Case 106
             Portd.6 = 1
             Print "Portd.6 wurde ausgeschaltet!"               'j
    
          Case 114
             Print "Reset..."
             Goto 0
       End Select
    End If
    Loop
    
    
    
    End
    ich empfange keine Daten vom Attiny weder mit einem porgramm von SharpDevelop noch ganz normal via Hyperterminal (bzw hier putty Hterm wegen Vista)

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    45
    Beiträge
    642
    An deinem Programm scheint es nicht zu liegen, mir fällt da jedenfalls kein
    Fehler auf.
    Was empfängst du denn über das Terminal, bzw über Sharp?
    Hier noch ein paar Sachen die du kontrollieren solltest:
    Hast du den richtigen Com port am PC angeschlossen?
    Wie ist die Baudrate im Terminal / Sharp eingestellt?
    Wenn du in der Systemsteuerung auf den Comport gehst, ist dieser aktiviert?, wie ist hier die Baudrate ?
    Hast du die Fusebits auf einen Externen 12MHz Quarz eingestellt?
    Zu guter letzt: RXD und TXD mal vertauschen, ist GND vom Controller mit
    GND Com port verbunden?
    Vielleicht liegt der Fehler ja irgendwo da....
    Wenn es denn immer noch nicht funktionieren sollte, bitte mal einen
    Schaltplan von deinem Aufbau einfügen. Viel Erfolg

    Neutro
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  5. #5
    verdrahtung hab ich überprüft die passt
    hier ist auch mal schalplan
    hab jetz nich viel dran
    sondern nur an PB0 und PB1 ne Led
    am sharp programm kanns auch nicht liegen
    wenn ich tx und rx am com port verbinde empfange ich dass was ich gesendet habe
    wenn ich den attiny anschließe bekomm ich nix empfangen
    wie stell ich die fusebits ein?
    und woher weiß ich welche des sind?

    Bild hier  [/img]

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    17.02.2005
    Ort
    NRW-Bergisches Land
    Beiträge
    311
    Hi,

    wenn du schauen möchtest ob der µC mit dem richtigen Takt läuft,
    mach mal eine kleine Blinkschleife bei der die LED z.B, alle 10 sec. an und wieder aus geht.
    Weicht die Wartezeit deutlich ab, so läuft der µC womöglich noch auf dem internen Takt -> Fusebits richtig setzen.
    Gruß RePi!


    *** Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. ***
    *** (Albert Einstein) ***

  7. #7
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    45
    Beiträge
    642
    Schau dir das mal an:
    https://www.roboternetz.de/wissen/in...C3%BCbertragen

    Ein bisschen rumstöbern im Wiki beantwortet schon viele Fragen....

    MfG

    Neutro
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    05.11.2008
    Beiträge
    8
    Hi
    Ich habe zwar noch nicht mit einem Attiny gearbeitet.
    Aber wenn ich das grad auf die schnelle richtig gesehen habe muss die UART wie bei den Atmega erst aktiviert werden.
    Entweder mal das UART Control Register im Datenblatt anschauen oder den Befehl 'Open "com1"...' in der Hilfe von Bascom über F1.

    Vielleicht hilft das.

    MfG
    Red

  9. #9
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    45
    Beiträge
    642
    Vielleicht hilft dir bei der Fehlersuche noch das Programm am Ende
    des Artikels (der im übrigen sehr gut erklärt ist) weiter
    https://www.roboternetz.de/wissen/in...leicht_gemacht
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

Berechtigungen

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

12V Akku bauen