Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   676 / 845
(#) jointsilver36 hozzászólása Feb 8, 2021 /
 
Sziasztok!Építenék egy wifis órát i2c vel és 2x16-os kijelzővel nodemcu v3-al. A linkelt oldalon levő kódot feltöltöttem a v3-ra. Sajnos kijelzés nincs.A kijelző és címzése rendben van másik programmal működik. Mi lehet a probléma? Köszönöm a válaszokat. Bővebben: Link

Helyesírási hibák és link javítva.
A hozzászólás módosítva: Feb 8, 2021
Moderátor által szerkesztve
(#) mnyugger válasza jointsilver36 hozzászólására (») Feb 8, 2021 /
 
Egyáltalán lefordítja a programot?
Nálam ennél a sornál kiakad a fordító:

  1. WiFi.begin(ssid, password);


A WiFiUdp.h -kellene tartalmazza, de ilyet meg nem találok sehol.
A hozzászólás módosítva: Feb 8, 2021
(#) sargarigo válasza mnyugger hozzászólására (») Feb 8, 2021 /
 
Szerintem nem állítottad át nodeMCU-ra a panelt.
(#) HeZ válasza kitartás hozzászólására (») Feb 8, 2021 / 1
 
A 49. sleep_cpu(); után hagyj időt a felébredésre és bebútolásra (boot-olásra) a serial.println-nek, például delay(500).
Kivéve, ha Te reggeleként, netán hajnalonként az átaludt (vagy átdorbézolt ) éjszaka után az ébresztéskor maximális koncentrálással és órajellel felpattansz az ágyból (földről ).
(#) Jonni hozzászólása Feb 8, 2021 /
 
Sziasztok

Összeraktam egy kódot de nem azt csinálja amit akarok. Egy 16x2 lcd mutatja a felső sorba az idő-t az alsó sorba a dátumot és a 10-es lábon van egy led. A lényeg az lenne ,hogy 7 órakor kezdjen el világítani kis fényerővel majd x idő múlva max fényerőn legyen (napfelkelte szimuláció) majd 18 órakor halványuljon lassan 0-ra (naplemente) . Odáig jó hogy 2-es fényerőig emelkedik majd megáll (kiírattam fadeValue-t 73. ik sorba) pedig elvileg 255-ig kéne emelkedjen. Az óra miatt delay szóba se jöhet ezért van benne millis. Mit rontottam el? Miért nem emelkedik 255-re?

  1. #include <Wire.h>                  // I2C könyvtár sda/scl
  2. #include <TimeLib.h>               // könyvtár az idöhöz
  3. #include <DS1307RTC.h>             // könyvtár az rtc-hez
  4. #include <LiquidCrystal.h>         // könyvtár az LCD kijelzöhöz
  5. #include "RTClib.h"                // rtc könyvtár
  6. LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // LCD lábak bekötése a mintaprogram alapján
  7. RTC_DS1307 rtc;
  8. const int lightPin = 10;          // világítást vezérlő láb (pwm képes)
  9. const int lightStartHour = 7;     // 7:00 órakor kapcsolódik be a világítás
  10. const int lightEndHour = 18;      // 18:00 órakor kapcsolódik ki a világítás
  11. int lightValue;                   // fény kijelzéshez
  12. tmElements_t dateTime;            // idő és dátum kijelzéshez
  13. char line1[17];                   // a lezáró 0 miatt van szükség 17 karakterre
  14. char line2[17];                   // a lezáró 0 miatt van szükség 17 karakterre
  15.     byte fadeValue = 0 ;
  16.    // bool dir = false;
  17.     const unsigned long sebesseg = 1000;
  18.     byte minl = 1;
  19.     byte maxl = 255;
  20.  
  21.  
  22. void setup() {
  23.   lcd.begin(16, 2);              // a kijelzö 16 karakteres és 2 soros
  24.    pinMode(lightPin, OUTPUT);    // kimenet a világításhoz
  25. }
  26.  
  27. void loop() {
  28.   RTC.read(dateTime);
  29.   if (dateTime.Hour >= lightStartHour && dateTime.Hour < lightEndHour) {
  30.  if(millis() % sebesseg == 0)
  31.     if(fadeValue <= minl){ fadeValue++;    
  32.       }
  33.        else if(fadeValue>=maxl){ fadeValue--;
  34.        }
  35.       analogWrite(lightPin, fadeValue);
  36.     }
  37.   sprintf(line1, "%02d:%02d:%02d  %3d  ", dateTime.Hour, dateTime.Minute, dateTime.Second, fadeValue);
  38.   sprintf(line2, "%04d-%02d-%02d    ", dateTime.Year + 1970, dateTime.Month, dateTime.Day);
  39.   lcd.setCursor(0, 0);
  40.   lcd.print(line1);
  41.   lcd.setCursor(0, 1);
  42.   lcd.print(line2);
  43. }
(#) kitartás válasza HeZ hozzászólására (») Feb 8, 2021 /
 
Köszi a tippet. Holnap próbálom. Ma már megvan a dorbéz . (Így ugye nem programozunk még arduinot sem)
(#) sakrafi válasza Jonni hozzászólására (») Feb 8, 2021 /
 
A 30. sornál az IF-nél mintha hiányozna a kapcsos zárójel.
(#) Jonni válasza sakrafi hozzászólására (») Feb 8, 2021 /
 
Így gondoltad?
  1. if (dateTime.Hour >= lightStartHour && dateTime.Hour < lightEndHour)
  2.  if(millis() % sebesseg == 0){
  3.     if(fadeValue <= minl){ fadeValue++;    
  4.       }


így se jó!
(#) KoblogPerGyok válasza Jonni hozzászólására (») Feb 8, 2021 /
 
Az első if-nél van ilyen nyitó { karakter?

És a lezárók is jók? Azokat nem látjuk itt.

Inkább ilyesmi szerintem, akkor nem nézi el annyira az ember. Már ha nem túl hosszú a kód.

  1. if (dateTime.Hour >= lightStartHour && dateTime.Hour < lightEndHour)
  2.     {
  3.      if(millis() % sebesseg == 0)
  4.         {
  5.          if(fadeValue <= minl)
  6.              {
  7.                   fadeValue++;  
  8.              }
  9.          }  
  10.      }


Így jobban látszódik, hogy melyik meyik {} páros tartozik egybe. A kód nem tudom mit csinál, csak a külalakot akartam mondani.
A hozzászólás módosítva: Feb 8, 2021
(#) pipi válasza Jonni hozzászólására (») Feb 8, 2021 /
 
Arduinóban szeretni kell, és gyakran nyomkodni CTRL T. ez szépen megformázza a szöveget, sokkal áttekinthetőbb lesz
(#) Jonni válasza KoblogPerGyok hozzászólására (») Feb 8, 2021 /
 
Így tényleg szebb...

Nem tudom mit RONTOTTAM el!
Ez
az eredeti
A hozzászólás módosítva: Feb 9, 2021
Moderátor által szerkesztve
(#) sakrafi válasza Jonni hozzászólására (») Feb 8, 2021 /
 
if(millis() % sebesseg == 0) ez a feltétel így nem teljesül szerintem mert a millis()%1000 nem lesz 0.
A másik dolog az egész eredményt egy változóba kellene betenni(Pl:Int valtozo=millis() % sebesseg).
Gondolom 1 másodperces lépésben szeretnéd a fényerőt változtatni,miért nem használod az RTC SQW 1hz-es kimenetét erre?
A hozzászólás módosítva: Feb 8, 2021
(#) mnyugger hozzászólása Feb 9, 2021 /
 
Szeretném megkérdezni, használ e valaki Mega2560 R3 Pro Mini-t.
Ilyet:
Az lenne a kérdésem, hogy mit kell beállítsak, hogy tudjak programot rátölteni?
Az eszközkezelőben a portnál látja, hogy CH340 van rádugva.
Az Arduino IDE-ben is be van állítva a Mega2560, a processzor is Mega2560.
Egy egyszerű villogó program feltöltésekor hosszú idő után Time outtal elszáll, mint ha nem volna feltöltő eszköz.
Lehet nincs rajta Boot? Bekapcsoláskor csak a Power led világít.
A hozzászólás módosítva: Feb 9, 2021
(#) cua válasza mnyugger hozzászólására (») Feb 9, 2021 /
 
Amit az ebay-en vettem (olyat mint ami a kepen van) abba fel kellett toltenem eloszor az arduino bootloader-t.
Azt megteheted barmilyen programozoval, akar egy meglevo UNO-val is (de amig az nincs benne, addig nem fog menni a megszokott USB/soros modon).
Tutorial
A hozzászólás módosítva: Feb 9, 2021
(#) KoblogPerGyok válasza Jonni hozzászólására (») Feb 9, 2021 /
 
Szerintem több mindent, de nem vagyok biztos benne, mert nem tudom le ellenőrizni.
Eredetiből vágtam ki és kicsit átalakítom:
  1. void loop()
  2.     {
  3.       RTC.read(dateTime);
  4.  
  5. //Ez nem biztos, hogy jó. Több zárójel kell, mert a logikai operátor mire is hat????
  6. //If miatt kell egy zárójel, és az ÉS operátor miatt is, mert két feltételt kell KÜLÖN vizsgálnia
  7. //Nekem az ilyen zárójelezés bejött...
  8.       if ( (dateTime.Hour >= lightStartHour) && (dateTime.Hour < lightEndHour) )
  9.          {
  10. //Itt a nagy baj.... Mekkora a valószínűsége annak, hogy a millis() éppen felvett értékével  
  11. //a maradékos
  12. // osztása a sebességgel nulla lesz?
  13.            if(millis() % sebesseg == 0)  //Itt nem volt { karakter
  14.               {
  15.                  if(fadeValue <= minl)
  16.                      {
  17.                          fadeValue++;  
  18.                      }
  19.                  else if (fadeValue>=maxl)  //Jó helyre tettem? Nem tudom
  20.                     {
  21.                        fadeValue--;
  22.                      }
  23.                  }
  24.       analogWrite(lightPin, fadeValue);
  25.     }
  26.  
  27. // ezekhez nem nyúltam:
  28.  
  29. sprintf(line1, "%02d:%02d:%02d  %3d  ", dateTime.Hour, dateTime.Minute, dateTime.Second, fadeValue);
  30.   sprintf(line2, "%04d-%02d-%02d    ", dateTime.Year + 1970, dateTime.Month, dateTime.Day);
  31.   lcd.setCursor(0, 0);
  32.   lcd.print(line1);
  33.   lcd.setCursor(0, 1);
  34.   lcd.print(line2);
  35. }
A hozzászólás módosítva: Feb 9, 2021
(#) Jonni válasza sakrafi hozzászólására (») Feb 9, 2021 /
 
Szia.
Idézet:
„miért nem használod az RTC SQW 1hz-es kimenetét erre?”


Mert gőzöm sincs ,hogy hogy kell!
(#) Jonni válasza KoblogPerGyok hozzászólására (») Feb 9, 2021 /
 
Szia.

Sajnos az újabb módszerrel is ugyanaz. Lehet hogy azt a % jelet ki kéne cserélni másra? Vagy azt az egész sort máshogy kéne megírni?
(#) KoblogPerGyok válasza Jonni hozzászólására (») Feb 9, 2021 /
 
Az attól függ, mit szeretnél ott megoldani.
(#) mnyugger válasza cua hozzászólására (») Feb 9, 2021 /
 
Erre gondoltam, remélve, hogy nem rossza kütyü.
Köszi.
(#) mateatek válasza mnyugger hozzászólására (») Feb 9, 2021 /
 
Használtam ugyanilyent. Azon volt bootloader.
(#) mnyugger válasza mateatek hozzászólására (») Feb 9, 2021 /
 
1 : 1
(#) mnyugger válasza cua hozzászólására (») Feb 9, 2021 /
 
Ugyanaz a bootloader jó a MEGA-ra is, mint az UNO-ra? Vagy a program tudja mit kell feltöltenie?
(#) vargham válasza mnyugger hozzászólására (») Feb 9, 2021 /
 
Nem, az egy másik mikrokontroller.
(#) sakrafi válasza Jonni hozzászólására (») Feb 9, 2021 /
 
Szia!
Próbáld ki ezt a kód részletet.E szerint alakítsd át a kódodat.

p_lda.ino
    
(#) Jonni válasza sakrafi hozzászólására (») Feb 9, 2021 /
 
Köszi. Megnézem
(#) cua válasza mnyugger hozzászólására (») Feb 9, 2021 /
 
Nem, az UNO-ba tudsz tolteni firmware-t igy az programmer-kent funkcional egy tetszoleges ures MCU-hoz.
Nekem van par programozo is a fiokban, peldaul USBasp es tiniASP..stb pont ilyen esetekre, illetve a kisebb mcu-kat is azokkal programozom. (erdemes az ebay-en venni parat, par dolcsi, szallitassal egyutt)
Van sok cikk is a temaban en hirtelen azt talaltam, amit linkeltem.
(#) mnyugger válasza cua hozzászólására (») Feb 10, 2021 / 1
 
Megoldódott.
Ez is tök üres volt.
Feltöltöttem rá a bootloadert és azóta vesz magába a programokat ahogy kell.
Köszi mindenkinek a segítséget.
(#) kiborg hozzászólása Feb 10, 2021 /
 
Esetleg valaki:
Bővebben: Hozzászólásom
STM32F103C8T6-ról van szó.
(#) kiborg hozzászólása Feb 10, 2021 /
 
Mi lehet annak az oka, hogy Arduino rendszerrel, STM32F103-at szeretnék programozni bootloaderrel USB-n keresztül.
Miután csatlakoztatom, első alkalommal fel tudom tölteni a programot, másodjára nem, csak villog a LED a PC13-on. Ha lehúzom USB-ről vagy resetelem, akkor újra fel tudom tölteni a progit. Miért lehet ez? Csak 3 poti van a rendszeren (A0 és A1), semmi más.
Volt időszak,amikor működött, most meg nem.
A hozzászólás módosítva: Feb 10, 2021
(#) kiborg válasza kiborg hozzászólására (») Feb 10, 2021 /
 
Most már odáig fajult a dolog, hogy bootloaderes feltöltés egyáltalán nem megy, csak ST-Linken (soros-t nem próbáltam) keresztül lehet programozni.
Kér procinál jelentkezik ez a dolog, a többi normálisan működik.
Következő: »»   676 / 845
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem