-         

Ergebnis 1 bis 4 von 4

Thema: Wieder mal TSOP aber diesmal mit 56khz ( TSOP 1756 )

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274

    Wieder mal TSOP aber diesmal mit 56khz ( TSOP 1756 )

    Anzeige

    Hallo,

    also ich bin gerade dabei mit dem schnellsten TSOP zu spielen den ich auftreiben kann. Es handelt sich dabei um den TSOP 1756.

    Folgendes :

    Ich habe mir eine Senderschaltung zusammengebaut (geätzte Platine) mit einem ATTIny 2313 der mit 20MHz betrieben wird! Schalte ich ihn ein, reagiert der TSOP darauf (sogar wenn ich ihn in eine 6m entfernte Ecke des Zimmers lege und die LED abdunkel

    Der Quellcode macht ca 57khz und läuft auch. Aber da der TSOP nur einen kurzen 56khz burst möchte, und dann ein wenig Pause will hab ich Programmechisch ein Problem :

    Hier der Qellcode mit den Dauer-57khz :

    Code:
    $regfile = "2313def.dat"                                    'AT90S2313
    $crystal = 2000000                                          'Quarz 8MHz
    
    Ddrd.6 = 1
    Laser Alias Portd.6
    
    Dim I As Integer
    
    
    
    '********************************************************************************
    
    
    Do                                                         
    
                                                                ' 56khz
    Set Portd.6
    Waitus 3
    Reset Portd.6
    Waitus 2
    
    
    Loop
    
    End
    Wenn ich jetzt aber eine Schleife einbaue, habe ich das Problem das die 56khz nicht mehr Funktionieren :

    Code:
    $regfile = "2313def.dat"                                    'AT90S2313
    $crystal = 2000000                                          'Quarz 8MHz
    
    Ddrd.6 = 1
    Laser Alias Portd.6
    
    Dim I As Integer
    
    Do                                                          'Beginn der Schleife
    
    For I = 1 To 20                                             ' 56khz / 20 Bursts pro Puls / 50 Pulse pro sekunde
    Set Portd.6
    Waitus 3
    Reset Portd.6
    Waitus 2
    
    
    Next I
    
    Waitms 100                                              '100mS mal zum Probieren ob der TSOP reagiert
    
    Loop
    
    End
    Aber das klappt nicht! Ich denke das die Schleife mit der Abfrage (Next I) zu lange dauert und mir die Frequenz durcheinander bringt! Die Frequenzen kann ich gut mit einem Frequenzzähler messen. bei dem unteren Quellcode zeigt er mir aber nur ein paar Khz an. Ich denke das ist die Wiederhlung des Bursts.

    Kann mir jemand weiterhelfen?

    Grüße und schonmal Frohe Weinachten
    Alex

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.11.2004
    Beiträge
    1.693
    Waitus 1 bringt auch nichts? Das ausführen der Schleife benötigt ja auch Zeit. Wenn man diese Zeit von der Wartezeit abzieht ist man ja vielleicht schon wieder da wo man hin will?!

    Oder einen Timer programmieren oder PWM benutzen.

    Das fällt mir so spontan ein.

    Wenn Waitus 1 noch zu lange dauert, kannst du ja auch Assemblercode einfügen und ein paar NOP benutzen bis du die Zeit wieder richtig hast.

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274
    Hi,

    danke für die Antwort!

    Jetzt müsste ich mal umrechnen wie lange und wie viele NOP's ich einfügen müsste.

    Mir ist eingefallen (eine unsaubere art) das ich auch 20 mal oder mehr einfach die befehle mit copy und past einsetze und am ende waitms 10 oder so ähnlich benutzen könnte!

    Liege ich da falsch?

    Ich weis auch nicht wie viele NOPS ich bei 20 mhz einsetzen müsste!
    Hast du mir da ein kurzen beispielcode für die 56khz?

    grüße und schöne weihnachten
    Ales

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.07.2004
    Beiträge
    274
    So, hab jetzt das ganze mal von hand gebastelt und es klappt! habe so 16x die set/reset funktion gesetzt und am ende mal 300uS wartezeit! Der TSOP1756 reagiert nun perfekt!

    So, nun mein nächstes problem :

    Ich hab mir mal ne testschaltung für RC5 gebastelt! Geht bei Bascom eigendlich nur 36khz? Oder wie kann ich dem RC5 sagen er soll 56khz machen? Zudem sollte er das signal invertieren! Meine LED leuchtet bis ein Signal kommt! Wie invertiere ich das spiel?

    Ich möchte das ganze zum test als Bake Programmieren! Der TSOP1756 soll dann die Richtung genau anpeilen.

    Stelle ich den TSOP einfach so hin, passiert das der Ausgang ab und zu einen Impuls sendet! Ich möchte meinen Roby solange drehen lassen bis der TSOP das Signal bringt wo ich sende! Ich dachte eine RC5-Codierung ist erprobt und sicher.

    Grüße
    Alex

Berechtigungen

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