- 12V Akku mit 280 Ah bauen         
Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 32

Thema: Mit Infrarotschnittstelle von Asuro fernseher bedienen?

  1. #11
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    Anzeige

    LiFePo4 Akku selber bauen - Video
    die irdiode geht bei mir vom pinb0 (kann beliebig sein) über
    einen 100ohm widerstand an +5volt.
    ist ein testaufbau und kann jederzeit verbessert werden.
    damit kann ich meinen fernseher steuern.
    ..avr16/8 mhz...habe ich genommen.

    Code:
    #include <avr/io.h> 
    #include <avr/interrupt.h> 
    #include <avr/signal.h> 
    #include <string.h> 
    #include <stdint.h> 
    
    #define IR_LED_PORT  PORTB 
    #define IR_LED_PIN   PB0 
    #define IR_LED_DDR   DDRB 
    
    #define IR_LED_ON    IR_LED_PORT |=  (1<<IR_LED_PIN) 
    #define IR_LED_OFF   IR_LED_PORT &= ~(1<<IR_LED_PIN)
    
    //89ms pause
    void ms_89(void)
    {
      uint32_t zaehler;
    
      for (zaehler=0; zaehler<118666; zaehler++) 
      asm volatile("nop");
    }
    
    void halbbit_high(void)
    {
      uint8_t i,zaehler;
      
      //890us Impuls mit 36kHz senden
      //Bei 28us Periodendauer ergibt das 32 Impulse
      for(i=0; i<32; i++)
      {
        IR_LED_ON;
        for (zaehler=0; zaehler<18; zaehler++) 
        asm volatile("nop");    
        IR_LED_OFF;
        for (zaehler=0; zaehler<18; zaehler++) 
        asm volatile("nop");    
      }
    }
      
    void halbbit_low(void)
    {
      uint16_t zaehler;
      
      //890us Pause
      for (zaehler=0; zaehler<1186; zaehler++) 
      asm volatile("nop");  
    }  
      
    //Eine 0 oder 1 senden
    void Send_Bit(uint8_t code)
    {
      if (code==0)
      {
        halbbit_high();
        halbbit_low();
      }
        else
      {
        halbbit_low();
        halbbit_high();
      }
    }
    
    
    void send_code(uint8_t toggle, uint8_t address, uint8_t command)
    {
      uint8_t mask,i;
      
      Send_Bit(1); //Erstes Startbit=1
      Send_Bit(1); //Zweites Startbit=1
    
      //Togglebit
      if(toggle==0)
      {
        Send_Bit(0);
      }
      else
      {
        Send_Bit(1);
      }  
    
      //5 Bit Addresscode
      mask=0x10; //Beginn bei MSB
       
      for(i=0; i<5; i++)
        {
         if(address&mask) //Send 1
          {
           Send_Bit(1);
          }
         else //Send 0
          {
           Send_Bit(0);
          }
          
         mask>>=1;   //Nächstes Bit
        }
    
    
      //6 Bit Kommandocode
      mask=0x20; //Beginn bei MSB
       
      for(i=0; i<6; i++)
        {
         if(command&mask) //Send 1
          {
           Send_Bit(1);
          }
         else //Send 0
          {
           Send_Bit(0);
          }
         mask>>=1;  //Nächstes Bit
        }
    
      //Übertragung komplett
      PORTB=0; //IR-LED abschalten
      ms_89(); // warte 89ms
    }
    
    
    int main(void)
    {
      IR_LED_DDR|=(1<<IR_LED_PIN);
      
      uint8_t command,i;
      command=32;
      
      for (i = 14; i < command; i++)
      {
        send_code(1,7,i); // toggle, addresse, commando
      }  
    }

  2. #12
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.05.2006
    Alter
    36
    Beiträge
    150

    Schönes Programm

    Hallo!

    Also erstmal danke für das Programm. Habs mir gleich geholt und ausprobiert. Leider hab ich feststellen müssen, dass ich in meinem winavr nirgends die stint.h existiert, geschweige denn eine stint.c. Ich wollt fragen ob ich da eine neue winavr brauch, und ob der Code überhaupt für den Asuro geeignet ist. Also ich bräuchte irgendwoher die stindt-Dateien. Dann hat das für mich so ausgesehen, als ob du da nacheinander Tasten durchprobiert hättest? Hab ich da recht?

    mfg theodrin

  3. #13
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Versuchmal inttypes.h
    Software is like s e x: its better when its free.
    Linus Torvald

  4. #14
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.05.2006
    Alter
    36
    Beiträge
    150

    Danke hat funktioniert

    Hallo izaseba!

    Danke, der Tip war wirklich Welt. Hat ohne Probleme funktioniert. Jetzt probier ich gleich mal das Programm aus.

    mfg theodrin

  5. #15
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.05.2006
    Alter
    36
    Beiträge
    150

    Da hat sich überhaupt nichts getan

    Hallo Leute!

    Ich hab das Programm jetz ausprobiert, aber es hat sich leider überhaupt nichts getan. Da einzig sichtbare, war das die Diode am Asuro geblinkt hat. Aber am Fernseher hat sich nichts getan. Er arbeitet ganz sicher mit dem RC5 Code. Was hätt sich da eigentlich tun sollen? Kannst du mir da helfen?

    mfg theodrin

  6. #16
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Kannst du mir da helfen?
    Wer ich ?
    Was sendest Du an Deinen Fernseher?
    Jedes Gerät hat eigene Gerätekennung usw.
    Kennst Du sie ?
    Weißt Du woauf er reagiert ?

    Sonst kann ich Dir nicht helfen, vielleicht der Pebi

    Gruß Sebastian
    Software is like s e x: its better when its free.
    Linus Torvald

  7. #17
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.05.2006
    Alter
    36
    Beiträge
    150

    Naja ich orientier mich am Code vom pebisoft

    Hallo!

    Ich orientier mich am Code vom Pebisoft.

    Ich versteh nicht ganz was er mit "Experimental" versteht. Den Code sendet er nämlich nach RC5-Code an den Fernseher. Das versteh ich nicht. Wär da nicht TV1 gescheiter? Oder doch nicht. Dann die Kommandozeichen die er sendet, versteh ich auch nicht. Da sendet er von "Voreinstellung" über "Lautstärke +/-" über "Helligkeit +/-" so einiges an den Fernseher. Soweit ich das verstanden habe. Ich hoffe pebisoft kann mir das noch mal erklären oder vielleicht du, oder wer anderer.

    mfg theodrin

  8. #18
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.05.2005
    Beiträge
    734
    @theodrin

    schau mal hier: https://www.roboternetz.de/phpBB2/viewtopic.php?t=14416
    Vielleicht hilft das weiter.

    Waste

  9. #19
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    for (i = 14; i < command; i++)
    {
    send_code(1,7,i); // toggle, addresse, commando
    }

    dies ist eine demoschleife. ich wollte ausprobieren ob ich den rc5code richtig sende (code wurde mit tsop 1736 am anderen avr-8 empfangen).

    du musst jetzt die daten "adresse,command" von deinem fernseher einsetzen, natürlich nicht in meiner for-scheife, sondern als nur einem datensatz.

  10. #20
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    Also erstmal danke für das Programm. Habs mir gleich geholt und ausprobiert. Leider hab ich feststellen müssen, dass ich in meinem winavr nirgends die stint.h ...

    nimm winavr-c von 02.2005 oder sogar von 01.2006.
    ganz normal installieren und es läuft einwandfrei du kannst dann auch die programme von " www.mikrocontroller.net/forum/list-2-1.html " nehmen. dort steht auch meins drin.

    die beim asuro beigepackte winavr-c ist veraltet und passt leider nur für den asuro. wenn du weiterhin bei winavr-c bleiben möchtest und das winavr-c verstehen möchtest und mit anderen darüber sprechen möchtest, nimm die von mir vorgeschlagenen, sonst kommt keine vernünftige beratung und unterhaltung mit den winavr-c-usern zustande.
    ist leider so.

Seite 2 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress