Close

dehtak

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 30 příspěvků - 1,261. až 1,290. (celkem z 2,767)
  • Autor
    Příspěvky
  • odpověď na: Uchování hodnoty proměnné #9329
    Navry
    Účastník

    Takže jsem vytvořil kod k testování a funguje tak jak potřebuji
    Jenom v tom,tebou upraveném kódu musím ponechat ve „voidech“:

    /* #1 duplicitni funkce
    int SCteplVenk = analogRead(teplVenk);
    SCteplVenk = map(SCteplVenk, 0, 1023, -20, 50);

    int SCvlhkVenk = analogRead(vlhkVenk);
    SCvlhkVenk = map(SCvlhkVenk, 0, 1023, 0, 100);

    int SCtopTepl = analogRead(topTepl);
    SCtopTepl = map(SCtopTepl, 0, 1023, 10, 120);

    int SCtopStud = analogRead(topStud);
    SCtopStud = map(SCtopStud, 0, 1023, 10, 120);
    // describing KEYES Remote IR codes
    */
    Jinak mě to píše při kompilaci,že nemám deklarované proměnné.
    V které části programu je mám deklarovat aby byly dostupné ve všech „voidech“?

    TESTOVACI KOD:

    
    int Kod1;
    int Kod2;
    int Kod3;
    
    int KodVal = 0;
    int tlacitko = 0;
    //------------------------------------------------------------------
    // ostatni promenne
    
    void setup() {
    	Serial.begin(9600);
    	
    	pinMode(Kod1, INPUT);
    	pinMode(Kod2, INPUT);
    	pinMode(Kod3, INPUT);
    	
    	tlacitko = 1;	
    }
    
    //==================================================================
    void loop() {
    	
    	Kod1 = digitalRead(2);
    	Kod2 = digitalRead(3);
    	Kod3 = digitalRead(4);
    	delay (100);
    	
    	Kod();
    	zobraz();
    }
    //===================================================================
    void Kod()
    { 
    	KodVal = (Kod1) + (2*Kod2) + (4*Kod3);  // výpočet binární hodnoty
    	switch(KodVal){
    		case 1: 
    			tlacitko = 1;
    			
    			break;
    		case 2: 
    			tlacitko = 2;
    			
    			break;
    		case 3: 
    			tlacitko = 3;
    			
    			break;
    		case 4: 
    			tlacitko = 4;
    			
    			break;
    		case 5: 
    			tlacitko = 5;
    			
    			break;
    		case 6: 
    			tlacitko = 6;
    			
    			break;
    		case 7: 
    			tlacitko = 7;
    			
    			break;
    		case 8: 
    			tlacitko = 8;
    			
    			break;
    		case 9: 
    			tlacitko = 9;
    			
    			break;
    		case 10: 
    			tlacitko = 10;
    			
    			break;
    			
    		default:
    			break;
    	} 
    } 
    //==================================================================
    void zobraz(){	// #1 - funkce vykresleni obrazovky
    	
    	switch(tlacitko){
    		case 1: 
    			Serial.println(" zmacknuto tlacitko 1 ");
    			break;
    		case 2: 
    			Serial.println(" zmacknuto tlacitko 2 ");
    			break;
    		case 3: 
    			Serial.println(" zmacknuto tlacitko 3 ");
    			break;
    		case 4: 
    			Serial.println(" zmacknuto tlacitko 4 ");
    			break;
    		case 5: 
    			Serial.println(" zmacknuto tlacitko 5 ");
    			break;
    		case 6: 
    			Serial.println(" zmacknuto tlacitko 6 ");
    			break;
    		case 7: 
    			Serial.println(" zmacknuto tlacitko 7 ");
    			break;
    		case 8: 
    			Serial.println(" zmacknuto tlacitko 8 ");
    			break;
    		case 9: 
    			Serial.println(" zmacknuto tlacitko 9 ");
    			break;
    		case 10: 
    			Serial.println(" zmacknuto tlacitko 10 ");
    			break;
    		default:
    			Serial.println(" jine tlacitko ");
    			break;
    	}
    }
    
    odpověď na: Uchování hodnoty proměnné #9328
    Navry
    Účastník

    Jsi zlatý, díky za pomoc. Jak budu večer doma, tak hned vyzkouším.
    Ještě jednou DÍKY!

    odpověď na: Uchování hodnoty proměnné #9327
    posjirka
    Účastník

    po testu klidne zakomentovane casti smaz … bude to prehlednejsi

    odpověď na: Uchování hodnoty proměnné #9326
    posjirka
    Účastník

    omlouvat se vubec nemusis. nikdo z nas nezna vsechno a kazdy nejak zacinal.
    Kdyz vkladas kod pouzivej parove znacky „code“ (tlacitko CODE) pred a za kodem. uchova si formatovani. trochu jsem ti to prekopal:
    – zrusil duplicitni vypocty
    – odstranil zobrazovani obrazovek jen pri stisku tlacitka (funkce zobraz() )
    – presunul promennou tlacitko
    – naformatoval podle se abych se v tom vyznal.
    – …

    vsechny zmeny mam pod revizi “ #1 “ takze ji muzes v pohode dohledat
    Vyzkousej to a uvidis. ja nema jak to vyzkouset a stavet se mi to vazne nechce 🙂 :

    
    // #1 - BY JP 11/2016
    // uprava na prepinani obrazovky pomocí tlacitek IR ovladace
    // uprava na zobrazovani aktualnich dat (v puvodni verzi zustali hodnoty z doby prd sepnutim tlacitka)
    
    /*—–( Import needed libraries )—–*/
    #include <LiquidCrystal.h>
    #include <SD.h>
    #include <Wire.h>
    #include „RTClib.h“
    #include <interval.h>
    #include <IRremoteInt.h>
    #include „IRremote.h“
    
    /*—–( Declare Constants )—–*/
    int receiver = 2; // pin 1 of IR receiver to Arduino digital pin 11
    int teplVenk = 1; //Cidlo Commet
    int vlhkVenk = 0; //Cidlo Commet
    int topTepl = 3; //Pt100 topení teplá
    int topStud = 2; //Pt100 topení studena
    
    int tlacitko = 0; // #1 - ID cislo tlacitka
    
    /*—–( Declare objects )—–*/
    IRrecv irrecv(receiver); // create instance of ‚irrecv‘
    decode_results results; // create instance of ‚decode_results‘
    File logfile;
    Interval blink;
    LiquidCrystal lcd(3, 4, 5, 6, 7, 8); // initialize the library with the numbers of the interface pins
    RTC_DS1307 RTC; // define the Real Time Clock object
    
    /*—–( Declare Variables )—–*/
    const int chipSelect = 10;
    const long blinkinterval = 100; // interval at which to blink (milliseconds)
    
    void setup(){ 
      /*—-( SETUP: RUNS ONCE )—-*/
      Serial.begin(9600);
      irrecv.enableIRIn(); // Start the receiver
      lcd.begin(16,2);
      Wire.begin();
      RTC.begin();
    
      //—————————————-
      if (! RTC.isrunning()) {
        Serial.println(„RTC is NOT running!“); // following line sets the RTC to the date & time this sketch was compiled
        RTC.adjust(DateTime(__DATE__, __TIME__));
      }
      //——————————-
      Serial.print(„Initializing SD card…“);
      pinMode(SS, OUTPUT);
    
      // see if the card is present and can be initialized:
      if (!SD.begin(chipSelect)) {
        Serial.println(„Card failed, or not present“);
        // don’t do anything more:
        while (1) ;
      }
      
      Serial.println(„card initialized.“);
      // create a new file
      char filename[] = „METEO_00.CSV“;
      for (uint8_t i = 0; i < 100; i++) {
        filename[6] = i/10 + ‚0‘;
        filename[7] = i%10 + ‚0‘;
        if (! SD.exists(filename)) {
          // only open a new file if it doesn’t exist
          logfile = SD.open(filename, FILE_WRITE);
          break; // leave the loop!
        }
      }
    
      Serial.print(„Logging to: „);
      Serial.println(filename);
      logfile.println(„Datum, TeplotaVenku, VlhkostVenku, TopeniTepla, TopeniStudena“);
      
      
      tlacitko = 0; // #1 - nastaveni vychozi hodnoty
    }/*–(end setup )—*/
    
    void loop(){
      /*—-( LOOP: RUNS CONSTANTLY )—-*/
    
      if (irrecv.decode(&results)) {
        // have we received an IR signal?
        // Serial.println(results.value, HEX); UN Comment to see raw values
        translateIR();
        irrecv.resume(); // receive the next value
      }
      //——————————————————–
      int SCteplVenk = analogRead(teplVenk);
      SCteplVenk = map(SCteplVenk, 0, 1023, -20, 50);
      
      int SCvlhkVenk = analogRead(vlhkVenk);
      SCvlhkVenk = map(SCvlhkVenk, 0, 1023, 0, 100);
      
      int SCtopTepl = analogRead(topTepl);
      SCtopTepl = map(SCtopTepl, 0, 1023, 10, 120);
      
      int SCtopStud = analogRead(topStud);
      SCtopStud = map(SCtopStud, 0, 1023, 10, 120);
      
      String dataString = „“;
    
      DateTime now = RTC.now();
      //———————————————————–
      if (blink.expired()) {
        blink.set(blinkinterval); // set new interval period
        
        logfile.print(now.year(), DEC);
        logfile.print(„/“);
        logfile.print(now.month(), DEC);
        logfile.print(„/“);
        logfile.print(now.day(), DEC);
        logfile.print(„,“);
        logfile.print(now.hour(), DEC);
        logfile.print(„:“);
        logfile.print(now.minute(), DEC);
        logfile.print(„,“);
        //———————————————————–
        logfile.print(SCteplVenk);
        logfile.print(„,“);
        logfile.print(SCvlhkVenk);
        logfile.print(„,“);
        logfile.print(SCtopTepl);
        logfile.print(„,“);
        logfile.print(SCtopStud);
        logfile.print(„,“);
        // delay(10000); //čekej 10minut
        
        //————————————————————
        
        logfile.println(dataString);
        logfile.flush();
      }
      //———————————————————–
    
      zobraz(); // #1 - vykresleni obrazovky
      
    }/* –(end main loop )– */
    
    /*—–( Declare User-written Functions )—–*/
    void translateIR(){ 
      // takes action based on IR code received
    /* #1 duplicitni funkce
      int SCteplVenk = analogRead(teplVenk);
      SCteplVenk = map(SCteplVenk, 0, 1023, -20, 50);
      
      int SCvlhkVenk = analogRead(vlhkVenk);
      SCvlhkVenk = map(SCvlhkVenk, 0, 1023, 0, 100);
      
      int SCtopTepl = analogRead(topTepl);
      SCtopTepl = map(SCtopTepl, 0, 1023, 10, 120);
      
      int SCtopStud = analogRead(topStud);
      SCtopStud = map(SCtopStud, 0, 1023, 10, 120);
      // describing KEYES Remote IR codes
    */
    
    //  int tlacitko = 0; // #1 - zruseni 
       switch(results.value){
        case 0x141: 
          tlacitko = 1;
          /* #1 - zruseni 
          Serial.println(“ zmacknuto tlacitko 1 „);
          lcd.setCursor(0, 0); // set the cursor to (0,0):
          lcd.print(SCteplVenk);
          lcd.setCursor(0, 1);
          lcd.print(SCvlhkVenk);
          lcd.setCursor(3, 0);
          lcd.print(„C – Teplota“);
          lcd.setCursor(3, 1);
          lcd.print(„% – Vlhkost“);
          */
          break;
        case 0x942: 
          tlacitko = 2;
          /* #1
          Serial.println(“ zmacknuto tlacitko 2 „);
          lcd.setCursor(0, 0);
          lcd.print(SCtopTepl);
          lcd.setCursor(0, 1);
          lcd.print(SCtopStud);
          lcd.setCursor(3, 0);
          lcd.print(„C – Kotel HOT“);
          lcd.setCursor(3, 1);
          lcd.print(„C – Kotel COLD“);
          */
          break;
        case 0x143: 
          tlacitko = 3;
          /* #1
          Serial.println(“ zmacknuto tlacitko 3 „);
          */
          break;
        case 0x944: 
          tlacitko = 4;
          /* #1
          Serial.println(“ zmacknuto tlacitko 4 „);
          */
          break;
        case 0x145: 
          tlacitko = 5;
          /* #1
          Serial.println(“ zmacknuto tlacitko 5 „);
          */
          break;
        case 0x946: 
          tlacitko = 6;
          /* #1
          Serial.println(“ zmacknuto tlacitko 6 „);
          */
          break;
        case 0x147: 
          tlacitko = 7;
          /* #1
          Serial.println(“ zmacknuto tlacitko 7 „);
          */
          break;
        case 0x948: 
          tlacitko = 8;
          /* #1
          Serial.println(“ zmacknuto tlacitko 8 „);
          */
          break;
        case 0x149: 
          tlacitko = 9;
          /*  #1
          Serial.println(“ zmacknuto tlacitko 9 „);
          */
          break;
        case 0x940: 
          tlacitko = 0;
          /* #1
          Serial.println(“ zmacknuto tlacitko 0 „);
          */
          break;
        default:
          /* #1
          Serial.println(“ jine tlacitko „);
          */
      }// End Case
    } //END translateIR
    
    void zobraz(){  // #1 - funkce vykresleni obrazovky
       switch(tlacitko){
        case 1: 
          Serial.println(“ zmacknuto tlacitko 1 „);
          lcd.setCursor(0, 0); // set the cursor to (0,0):
          lcd.print(SCteplVenk);
          lcd.setCursor(0, 1);
          lcd.print(SCvlhkVenk);
          lcd.setCursor(3, 0);
          lcd.print(„C – Teplota“);
          lcd.setCursor(3, 1);
          lcd.print(„% – Vlhkost“);
          break;
        case 2: 
          Serial.println(“ zmacknuto tlacitko 2 „);
          lcd.setCursor(0, 0);
          lcd.print(SCtopTepl);
          lcd.setCursor(0, 1);
          lcd.print(SCtopStud);
          lcd.setCursor(3, 0);
          lcd.print(„C – Kotel HOT“);
          lcd.setCursor(3, 1);
          lcd.print(„C – Kotel COLD“);
          break;
        case 3: 
          Serial.println(“ zmacknuto tlacitko 3 „);
          break;
        case 4: 
          Serial.println(“ zmacknuto tlacitko 4 „);
          break;
        case 5: 
          Serial.println(“ zmacknuto tlacitko 5 „);
          break;
        case 6: 
          Serial.println(“ zmacknuto tlacitko 6 „);
          break;
        case 7: 
          Serial.println(“ zmacknuto tlacitko 7 „);
          break;
        case 8: 
          Serial.println(“ zmacknuto tlacitko 8 „);
          break;
        case 9: 
          Serial.println(“ zmacknuto tlacitko 9 „);
          break;
        case 0: 
          Serial.println(“ zmacknuto tlacitko 0 „);
          break;
        default:
          Serial.println(“ jine tlacitko „);
      }
    }
    odpověď na: Uchování hodnoty proměnné #9325
    Navry
    Účastník

    /*—–( Import needed libraries )—–*/
    #include <LiquidCrystal.h>
    #include <SD.h>
    #include <Wire.h>
    #include „RTClib.h“
    #include <interval.h>
    #include <IRremoteInt.h>
    #include „IRremote.h“

    /*—–( Declare Constants )—–*/
    int receiver = 2; // pin 1 of IR receiver to Arduino digital pin 11
    int teplVenk = 1; //Cidlo Commet
    int vlhkVenk = 0; //Cidlo Commet
    int topTepl = 3; //Pt100 topení teplá
    int topStud = 2; //Pt100 topení studena

    /*—–( Declare objects )—–*/
    IRrecv irrecv(receiver); // create instance of ‚irrecv‘
    decode_results results; // create instance of ‚decode_results‘
    File logfile;
    Interval blink;
    LiquidCrystal lcd(3, 4, 5, 6, 7, 8); // initialize the library with the numbers of the interface pins
    RTC_DS1307 RTC; // define the Real Time Clock object

    /*—–( Declare Variables )—–*/
    const int chipSelect = 10;
    const long blinkinterval = 100; // interval at which to blink (milliseconds)

    void setup() /*—-( SETUP: RUNS ONCE )—-*/
    {
    Serial.begin(9600);
    irrecv.enableIRIn(); // Start the receiver
    lcd.begin(16,2);
    Wire.begin();
    RTC.begin();

    //—————————————-
    if (! RTC.isrunning()) {
    Serial.println(„RTC is NOT running!“); // following line sets the RTC to the date & time this sketch was compiled
    RTC.adjust(DateTime(__DATE__, __TIME__));
    }
    //——————————-
    Serial.print(„Initializing SD card…“);
    pinMode(SS, OUTPUT);

    // see if the card is present and can be initialized:
    if (!SD.begin(chipSelect)) {
    Serial.println(„Card failed, or not present“);
    // don’t do anything more:
    while (1) ;
    }
    Serial.println(„card initialized.“);
    // create a new file
    char filename[] = „METEO_00.CSV“;
    for (uint8_t i = 0; i < 100; i++) {
    filename[6] = i/10 + ‚0‘;
    filename[7] = i%10 + ‚0‘;
    if (! SD.exists(filename)) {
    // only open a new file if it doesn’t exist
    logfile = SD.open(filename, FILE_WRITE);
    break; // leave the loop!
    }
    }

    Serial.print(„Logging to: „);
    Serial.println(filename);
    logfile.println(„Datum, TeplotaVenku, VlhkostVenku, TopeniTepla, TopeniStudena“);
    }/*–(end setup )—*/

    void loop() /*—-( LOOP: RUNS CONSTANTLY )—-*/
    {
    if (irrecv.decode(&results)) // have we received an IR signal?

    {
    // Serial.println(results.value, HEX); UN Comment to see raw values
    translateIR();
    irrecv.resume(); // receive the next value
    }
    //——————————————————–
    int SCteplVenk = analogRead(teplVenk);
    SCteplVenk = map(SCteplVenk, 0, 1023, -20, 50);

    int SCvlhkVenk = analogRead(vlhkVenk);
    SCvlhkVenk = map(SCvlhkVenk, 0, 1023, 0, 100);

    int SCtopTepl = analogRead(topTepl);
    SCtopTepl = map(SCtopTepl, 0, 1023, 10, 120);

    int SCtopStud = analogRead(topStud);
    SCtopStud = map(SCtopStud, 0, 1023, 10, 120);

    String dataString = „“;

    DateTime now = RTC.now();
    //———————————————————–
    if (blink.expired()) {
    blink.set(blinkinterval); // set new interval period

    logfile.print(now.year(), DEC);
    logfile.print(„/“);
    logfile.print(now.month(), DEC);
    logfile.print(„/“);
    logfile.print(now.day(), DEC);
    logfile.print(„,“);
    logfile.print(now.hour(), DEC);
    logfile.print(„:“);
    logfile.print(now.minute(), DEC);
    logfile.print(„,“);
    //———————————————————–
    logfile.print(SCteplVenk);
    logfile.print(„,“);
    logfile.print(SCvlhkVenk);
    logfile.print(„,“);
    logfile.print(SCtopTepl);
    logfile.print(„,“);
    logfile.print(SCtopStud);
    logfile.print(„,“);
    // delay(10000); //čekej 10minut

    //————————————————————

    logfile.println(dataString);
    logfile.flush();
    }
    //———————————————————–

    }/* –(end main loop )– */

    /*—–( Declare User-written Functions )—–*/
    void translateIR() // takes action based on IR code received
    {
    int SCteplVenk = analogRead(teplVenk);
    SCteplVenk = map(SCteplVenk, 0, 1023, -20, 50);

    int SCvlhkVenk = analogRead(vlhkVenk);
    SCvlhkVenk = map(SCvlhkVenk, 0, 1023, 0, 100);

    int SCtopTepl = analogRead(topTepl);
    SCtopTepl = map(SCtopTepl, 0, 1023, 10, 120);

    int SCtopStud = analogRead(topStud);
    SCtopStud = map(SCtopStud, 0, 1023, 10, 120);
    // describing KEYES Remote IR codes

    int tlacitko = 0;
    switch(results.value)

    {
    case 0x141: tlacitko = 1;
    Serial.println(“ zmacknuto tlacitko 1 „);
    lcd.setCursor(0, 0); // set the cursor to (0,0):
    lcd.print(SCteplVenk);
    lcd.setCursor(0, 1);
    lcd.print(SCvlhkVenk);
    lcd.setCursor(3, 0);
    lcd.print(„C – Teplota“);
    lcd.setCursor(3, 1);
    lcd.print(„% – Vlhkost“);
    break;
    case 0x942: tlacitko = 2;
    Serial.println(“ zmacknuto tlacitko 2 „);
    lcd.setCursor(0, 0);
    lcd.print(SCtopTepl);
    lcd.setCursor(0, 1);
    lcd.print(SCtopStud);
    lcd.setCursor(3, 0);
    lcd.print(„C – Kotel HOT“);
    lcd.setCursor(3, 1);
    lcd.print(„C – Kotel COLD“);
    break;
    case 0x143: tlacitko = 3;
    Serial.println(“ zmacknuto tlacitko 3 „);
    break;
    case 0x944: tlacitko = 4;
    Serial.println(“ zmacknuto tlacitko 4 „);
    break;
    case 0x145: tlacitko = 5;
    Serial.println(“ zmacknuto tlacitko 5 „);
    break;
    case 0x946: tlacitko = 6;
    Serial.println(“ zmacknuto tlacitko 6 „);
    break;
    case 0x147: tlacitko = 7;
    Serial.println(“ zmacknuto tlacitko 7 „);
    break;
    case 0x948: tlacitko = 8;
    Serial.println(“ zmacknuto tlacitko 8 „);
    break;
    case 0x149: tlacitko = 9;
    Serial.println(“ zmacknuto tlacitko 9 „);
    break;
    case 0x940: tlacitko = 0;
    Serial.println(“ zmacknuto tlacitko 0 „);
    break;
    default:
    Serial.println(“ jine tlacitko „);
    }// End Case

    // return tlacitko;

    } //END translateIR

    odpověď na: Uchování hodnoty proměnné #9324
    Navry
    Účastník

    Zde je můj kód, zobrazeni je na konci.
    Nějak to nechápu s tím přepínáním.
    Ještě jednou se omlouvám za moje neustálé otravování.

    odpověď na: Uchování hodnoty proměnné #9318
    posjirka
    Účastník

    ale o tom to právě je…. myslím že jsem to popsal jasně.
    Dej sem kod a můžeme ho upravit. Opravdu nebudu vymýšlet pseudo kod… na to vážně nemám čas….

    odpověď na: Plochy kabel + konektory #9317
    Vojtěch Vosáhlo
    Účastník

    Asi bych vzal něco jako starý konektor z IDE kabelů, ale je to blízko dupontu tak nevím jak vám to sedne… Nový konektor jsem nepoužíval, jen ten z IDE kabelu a ten drží na fest. Z nabídky eshopů asi něco takového https://www.gme.cz/konektor-pfl26

    odpověď na: Uchování hodnoty proměnné #9316
    Navry
    Účastník

    To je mě tak nějak jasné. Jde pouze o to, že zmačknu nějaké tlačítko a vyvolám patřičnou obrazovku ale jakmile jej pustím (přestanu vysílat kód) tak „switch“ nedostane žádnou hodnotu (proměnnou) a tím pádem neproběhne (case) a skočí to do default:
    Nemůžu přijít na to jak uchovat poslední stav (case) do té doby než přijde jiný požadavek z IR ovladače.
    Předem díky za rady

    odpověď na: Uchování hodnoty proměnné #9308
    posjirka
    Účastník

    zřejmě se troch nechápete.
    Použil bych switch case.

    Představte si, že tlačítko 1 odešle bude mít kod 11 (co dostane od IR přijímače), talčítko 2 bude mít kod 12, tlačítko 3 kod 13.
    obrazovky budou mít čísla 1, 2, 3

    Jen pro představu.
    v setup() si nastavíš, že obrazovka = 1
    ve smyčce loop() pak budeš neustále čekat na příjem kodu a podle toho co příjme změn
    pomocí switch case na
    kod 11 = obrazovka 1
    kod 12 = obrazovka 2
    kod 13 = obrazovka 3

    pak pokračuješ tím, že podle promenne „obrazovka“ zobrazíš co je třeba, tedy další switch case.

    bez kodu se to blbě popisuje 🙂

    odpověď na: dalkova spoust pro zrcadlovku #9307
    posjirka
    Účastník

    takže:
    – máš rozdílné komunikační rychlosti (v setup() máš jednou vw_setup(4000); podruhé vw_setup(1200);)
    – 433 Mhz je standardní řešení, jen je třeba dávat si pozor na napájení (aby to utáhlo vysílač). Pro vyšší výkon se dává vyšší napětí (tuším až okolo 9-12V) ale je to potřeba podívat se na datasheet tvého řešení.Nejsou všechyn stejné.
    – nevím jak máš řešenou anténu. Její provedení výrazně ovlivňuje chování celého řešení hlavně pro dosah.
    – když chceš něco odladit nech si vypsat na seriový port/monitor co ti vlastně přijímá.

    odpověď na: Makelangelo promblém s MAC. Klon Arduino UNO #9305
    josef4
    Účastník

    Polargaf jsem zkoušel, ale na MAC to nešlo, nebo to v tom neumím spustit.
    Ale chlapi díky za rady, dneska jsem zapojil originál a už to funguje. Kdyby to nebyl dárek pro bráchu, tak bych to neřešil a postupoval bych dle rad zkusit jiný OS apod.
    Určitě by šel i přepsat ten SW, ale nikoho neznám kdo piše v JAVA.
    Tak ještě jednou díky 🙂

    odpověď na: Nezname zarizeni USB – Arduino UNO (china) #9304
    posjirka
    Účastník

    foto se nepřipojilo. Atmega328 je standardní čip pro adruino. Nám se tady jedná o druhý švíb blíž k USB portu …

    odpověď na: Nezname zarizeni USB – Arduino UNO (china) #9303
    spanwair
    Účastník

    Zkousel jsem samozrejme vyhledavat v drivers adresari ale stale nic nevyhledalo.. Na andurio je cip ATMEL 1620 ATMEGA328P-PU
    Pripojuji photo

    odpověď na: Nezname zarizeni USB – Arduino UNO (china) #9302
    posjirka
    Účastník

    fotka nejde načíst… ovladače bys měl mít v adresáři arduino\driver
    otázka co máš za opravdu za čip, jaké máš Windows (vím, že 10 ale máš výroční aktualizaci? bez ní mi třeba FT232 čipy nechtěl vůbec načíst), je dsta v pořádku? zkus na jiném PC. občas se stalo že tu někdo měl desku, která nefunogvala a tuším že to tylo špatně zapájenými piny….

    odpověď na: Nezname zarizeni USB – Arduino UNO (china) #9300
    spanwair
    Účastník
    odpověď na: Nezname zarizeni USB – Arduino UNO (china) #9298
    darira
    Účastník

    Nemá to UNO náhodou USB převodník s čipem CH340? Pokud ano, musíš stáhnout driver pro tento převodník. Jo a myslím že neumí komunikovat přes USB 3.0.

    Attachments:
    odpověď na: Uchování hodnoty proměnné #9295
    Navry
    Účastník

    Děkuji za odpověď!
    Potřebuji použít IR dálkový ovladač a tímto budu prepinat 9obrazovek displaje LCD. Zmačknu tl.1 LCD 1,…..Zmacknu 9 a LCD 9.
    Jedná se o to, že ovladač vysílá kó pouze při zmačknutí přislušného tlačítka a aby byla vyvolana trvale patřičná obrazovka LCD musí být nasetován „nějaký bit“
    Na dvě obrazovky pomocí tlačítka mě to funguje ale přes to DO nevím jak to udělat.
    Předem děkuji za Vaše nápady (rady)

    odpověď na: Uchování hodnoty proměnné #9294
    Vojtěch Vosáhlo
    Účastník

    Udělejte si 2 proměnné – tlacitko a tlacitkoOld
    A do smyčky pro lcd to pusťte pouze pokud se liší. Tzn.

    if(tlacitko != tlacitkoOld){
    //něco se ukáže na lcd
    tlacitkoOld = tlacitko;
    
    }

    Do tlacitko zapisujete jaké tlačítko bylo stisknuto a tlacitkoOld by mělo stačit inicializovat jako nulu, samozřejmě podle toho jak získáváte názvy tlačítek, takocý typ proměnné to bude. Taky kdyby jste měl na ovladači tlačítko 0 tak se musí tlacitkoOld nastavit na -1. Hodně štěstí

    odpověď na: Arduino jako zpětnovazební teplotní regulátor #9293
    developer
    Účastník

    Dobrý den, měl bych zájem, napište mi na arduinodeveloper@seznam.cz děkuji.

    odpověď na: Arduino přehrávání zvuku senzory #9271
    Pulec
    Účastník

    Tak nakonec jsem ještě odebral funkci digitalWrite(prehravaciPin, HIGH);
    to má za následek že se zvuk přehraje jen jednou z každého čidla 1-10 když zapůsobí.Což se mi hodí protože pak by to hrálo po každém projetí a to by u modelové železnice nebylo žádoucí.Teď to funguje famózně.Dám příklad jede vlak ::::::::::::::::::první čidlo::::::::::pozor u druhé koleje opakuji pozor u druhé koleje::::::::::::::::::::::::::::(vlak přijede do stanice a najede na druhé čidlo)Na druhou kolej přijel osobní vlak z Vizovic opakuji na druhou kolej přijel osobní vlak z Vizovic.Dále samozřejmě muže minout pastvu s ovcemi nebo těžbu v lese motorová pila.Intenzita zvuku se dá ošetřit už samotnou úpravou mp3.

    Tímto moc moc děkuji

    odpověď na: WIFI shield #9268
    Miroslava
    Účastník

    Ahoj,

    momentálne aj ja pracujem s týmto WIfi shiedlom – samé problémy – ale ako to myslíš že do jeho administrácie sa nevieš dostať – ako je na videu?.. lebo mne stačilo pripojiť wifi shield do Arduino MEGA, a hned my naslo wifi DoItWifiCongig…. a ked som sa na nu pripojila tak som zadala do prehliadača 192.168.4.1 – dostala som sa presne tak ako na videu 🙂 Ak sa ti ani ta wifi nezobrazila tak podla mna bude problém s napájaním – možno by si mal priviesť ešte nejaký zdroj ako len cez USB.

    odpověď na: Měření spotřeby el. energie #9263
    Pulec
    Účastník

    Podle mne není problém když to budeš mít za elektroměrem.To jest na vedení k domovnímu rozvaděči (dělám na čezu).Chceš měřit jen jednu fázy?Asi se do toho pustím také chci měřit respektive vidět kolik mi bere klima když topím.

    odpověď na: Arduino přehrávání zvuku senzory #9262
    Vojtěch Vosáhlo
    Účastník

    Do setupu přidáte znovu toto: `pinMode(d1, INPUT);
    pinMode(prehravaciPin2, OUTPUT);
    digitalWrite(prehravaciPin2, HIGH);

    attachInterrupt(1, detekce2, FALLING);

    `

    místo těch názvů si buď dosaďte piny a interrupty nebo si vytvořte proměnné jako je to v původním kódu.

    Pak jen vytvoříte funkci detekce2 (kopii detekce) a pozměníte piny které se nastavují.

    Snad pomůžu…

    odpověď na: Arduino přehrávání zvuku senzory #9261
    Pulec
    Účastník

    Ještě vás chci poprosit přidat do kódu druhé čidlo které bude přehrávat další pin mp3 modulu,mě se to nedaří.

    odpověď na: Arduino přehrávání zvuku senzory #9260
    Vojtěch Vosáhlo
    Účastník

    Jasně, asi by se to dalo udělat nejlépe přes odebrání a zase přidání přerušení. `void detekce(){

    digitalWrite(prehravaciPin, LOW);
    delay(100);
    digitalWrite(prehravaciPin, HIGH);
    detachInterrupt(0); // odebereme preruseni aby se nam nevyvolalo pokud by se něco hýblo pred senzorem
    delay(60000); //pauza na x vterin, cas po ktery je senzor vyrazen
    attachInterrupt(0, detekce, FALLING); // opet preruseni zprovoznime

    }`

    Kdyby bylo potřeba arduino používat i v době vyřazení, daly by se počítat cykly procesoru ale to je další téma…

    odpověď na: Arduino přehrávání zvuku senzory #9259
    Pulec
    Účastník

    Tak jsem na to kapnul delay až za moc moc děkuji jste borec

    odpověď na: Arduino přehrávání zvuku senzory #9258
    Pulec
    Účastník

    Řeknu to takto potřebuji aby se po spuštění přehrávání senzor vyřadil třeba na 1 minutu.

    odpověď na: Arduino přehrávání zvuku senzory #9257
    Vojtěch Vosáhlo
    Účastník

    Pauza by se přidávala před nastavováním pinu na low
    Tzn: `void detekce(){
    delay(XY); // sem můžete přidat čas mezi 1 na ir a přehráváním
    digitalWrite(prehravaciPin, LOW);
    delay(100); //čas na který je pin spuštěný, zde přidáváte
    digitalWrite(prehravaciPin, HIGH);
    }`
    Chcete tedy něco jako po přehrání musí být pauza 30s a pak až se může zapnout znova? Kapku mi to nedochází 😀

    odpověď na: Arduino přehrávání zvuku senzory #9256
    Pulec
    Účastník

    Ano teď mi to šlape na D0. Kam přidat čas aby po zapnutí přehrávaní drželo v zap?Tak jak to je teď je to každé mávnutí hned přehrává.Potřebuji alespoň 30 vteřin po začátku přehrávání aby držrlo jako když je překážka.Děkuji za pomoc

Aktuálně je na stránce zobrazeno 30 příspěvků - 1,261. až 1,290. (celkem z 2,767)