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   535 / 853
(#) rolandgw válasza Kovidivi hozzászólására (») Máj 27, 2019 / 1
 
K&R könyv, aritmetikai típuskonverziók:
Idézet:
„Különben, ha az egyik operandus unsigned int típusú, akkor a másik is unsigned int típusúvá alakul.”

E szerint dolgozik a fordító, mivel negatív szám kettes komplemens formában van tárolva.

kep.png
    
(#) RonkBela hozzászólása Máj 27, 2019 /
 
Üdv...
Arduino nano ra szeretnék rgy RFID modult kötni!
Csak a programmal vagyoknagy bajba!
Hogyan küldi az adatot az olvaso a nanonak?
Esetleg van valakinek kész programja rá?
(#) ronin75 válasza RonkBela hozzászólására (») Máj 27, 2019 /
 
Sokféle példaprogram van, attól függ, mit szeretnél megvalósítani. Olvasója válogatja, de általában SPI buszon kommunikálnak.
(#) RonkBela válasza ronin75 hozzászólására (») Máj 27, 2019 /
 
Hát jo lenne ha tudna tanulni... mondjuk egy gomb, és ha azt lenyomom és ugy olvasom be a kártyát akkor elmenti magának.
Ha memtett kártyát olvasok akkor egy változó billen egyre ha mentetlen kártyát akkor nullára.
De az se baj ha nem tud tanulni
(#) Firefighter1 válasza RonkBela hozzászólására (») Máj 27, 2019 /
 
Szia!

Én ESP- re szeretnék csinálni egy hasonlót.
Éa gombos tanulásba nem merek belekezdeni, ahhoz az én tudásom kevés.

Én ez alapján próbálok elindulni
A menetét én sem értem teljesen de a kommunikációt elvégzi a "könyvtár".. igaz arduinohoz van, nemtudom vajon ESP vel menne e.

De az biztos hogy ez egy egyszerű kód. Én még az elején beállítok két kimenetet! Az sgyik egy led a másik egy relé, és elfogadás, vagy tagadás függvényébe magas vagy alacsony a kimenet!
Mondjuk Arduinom eddig nem volt, most rendeltem egyet. Ha megjön csak akkor tudok próbálni
A hozzászólás módosítva: Máj 27, 2019
(#) Kovidivi válasza zaza99 hozzászólására (») Máj 28, 2019 / 1
 
Meg van a hiba...
Pont hogy a bootloader nélküli .hex-et kell megosztanom... Hiszen soros porton keresztül lesz a program a bootloader segítségével feltöltve. Esélyem sincs az eredeti bootloadert felülírni, még ha akarnám se tudnám. Kivéve persze, ha a felprogramozandó .hex fájl mérete túl nagy, és esetleg belelóg a vége a bootloaderbe (tehát a program memória vége után az eleje következik), gondolom ez történt minden alkalommal, és ezért lett a bootloader hibás.
Mindegy, a lényeg, hogy kiderült a hiba...
(#) zaza99 válasza Kovidivi hozzászólására (») Máj 29, 2019 /
 
Köszi megy mind a kettő fajtára.
(#) Pulyka válasza kapu48 hozzászólására (») Máj 30, 2019 /
 
Szia. Köszönöm szépen, bar nekem ez még egyenlőre magas.

Rájöttem, beláttam, hogy eleg amatőr hibákat vetettem.
Gyorsan akartam elkeszulni, ezert lyukacsos nyakkal dolgoztam(pedig terveztem en mar olyan 2 oldalas nyakot, amibol legyartattak nekem 20db-ot), most először dolgoztam forrasztó pasztaval, (innen-onnan kapargathattam le, mert kisebb zarlatot okozott) a kapcs üzemű, 12V-os dugasztapra azt hittem, hogy csájnában' megfelelő szűréssel látták el, igy szuretlen tappal dolgoztam. :/
Pár nano felaldozta az életet a jövőbeni tarsaiert, jó kis tanuló pénz volt.
Azt tudtam, hogy a stabilizatorok elé, utan tantal kondit javasolnak a gyártók, mostmar be is szereltem azt is.
(#) tbarath válasza Pulyka hozzászólására (») Máj 30, 2019 /
 
Én nem tantált, hanem sima kerámia/multilayer kondit használok, eddig bevált.
(#) Pulyka válasza tbarath hozzászólására (») Máj 30, 2019 /
 
Igen, biztos a keramia is jo lett volna, de nem akartam vele kiserletezni tovabb, majd legkozelebb.

..de ha jol lattam, a nano panelen egyebkent is van egy pici SMD tantal kondi, igaz az a stab. kocka utan.
(#) Kera_Will válasza Pulyka hozzászólására (») Máj 30, 2019 /
 
Az analóg stabilizátorok nagyfrekvenciás gerjedését hivatottak a 10-100n közötti kondik megakadályozni (pl.: lm317-ből közép rövid hullámó adót is építethetsz 1 2 LC tag segítségével) . A Tatntál kondenzátorok pedig nem a nagyfrekis hidegítő képességeik miatt vannak ott. Azok a DC-n lévő kisebb frekis komponenseket simítják.Másik fontos a kondik fizikai helye. A nanos kerámiákat az stabler kivezetésinek közvetlen közelébe (be-GND és GND-ki) , vagy rá magára az IC lábára kell forrasztani, akár nagyobb SMD kerámiák is jók oda
A hozzászólás módosítva: Máj 30, 2019
(#) proba válasza Pulyka hozzászólására (») Máj 30, 2019 /
 
A kapcsolóüzemű tápoknak szokott még olyan furcsa tulajdonsága lenni, hogy a védőföld egy kondenzátorral, rosszabb esetben egy darab vezetékkel, még rosszabb esetben a fázis és nulla közé kötöt két kondenzátor közös pontja, a kimeneti negatívhoz van kötve. Addig nem is gond, míg az arduinót nem kötöd össze pl USB-n egy számítógéppel. Ettől kezdve néha furcsa dolgok történnek. ( tönkre még nem ment, de hibás működés már volt ez miatt.)
A hozzászólás módosítva: Máj 30, 2019
(#) Norbi779 hozzászólása Máj 31, 2019 /
 
Sziasztok! Adott egy ujjlenyomatolvasó. Bekötöttem, az enroll kódot rátettem, sikerült elérni hogy arduino végre lássa és ne a "Did not find fingerprint sensor " üzenetet kapjam.
Ehhez 2 sort kellett átírnom:
  1. Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial, 1337);

  1. finger.begin(19200);


Most megtalálja, beírok egy id-t és kéri az ujjlenyomatot. Ezt viszont nem találja, folyamatosan várja, nem ír ki semmit, hiába teszem oda az ujjam. Zöld vezetéket a D2, fehéret a D3 pinrek ötöttem. Mi lehet a gond?
(#) Lac364 válasza proba hozzászólására (») Máj 31, 2019 /
 
Igen , én is így jártam . A laptop azonnal kikapcsolt és az arduinót többé nem lehetett írni. Működni működött a már előzőleg feltöltött program, de semmi több.
(#) Pulyka válasza Lac364 hozzászólására (») Jún 1, 2019 / 1
 
Nekem kb 5 db arduino ment tönkre, mert szűretlen táppal dolgoztam. :/
Kb 3 ebből füstölt is, egyszer az FT232 is megadta magát. Nagyon gyanús lett a tápegység, mikor már a kézfejem tetejét(ahol vékonyabb, illetve nincs kikeményedve a bőr) csípte a 12V, gondolom azért, mert annyira nem volt pufferelve a táp, hisz a törpefeszültség nem csíphet.(nem lett semmi bajom, csak éreztem, hogy ez így nem jó.)
..csak azért érdekes ez, mert az egyszerű, 2db servo-s arduino lefagyott kb fél perc alatt,(reset után elindult, de megint lefagyott 0,5 perc alatt.) pedig most szűrt a tápegység, és kifogástalanul működik.
..piros alapon, fehér betűs MW márkájú kettős szigetelésű, 5V-os dugasztáp is csíp, pedig az eléggé márkás szerintem, és szinte új, száraz, meleg szobában volt tartva, a vezetéken sincs sérülés.
A hozzászólás módosítva: Jún 1, 2019
(#) nemgyuri válasza Pulyka hozzászólására (») Jún 1, 2019 /
 
Szia! "csípte a 12V" megjegyzésed miatt írok. Valószínű, hogy kapcsolóüzemű a tápod. Az a bizonyos 2 db kondi (fázis-GND-0) okozza a bajt. Ha mérsz feszültséget a föld és a 0 között ott lehet kb fél tápfesz is ami tud csípni! 4 hozzászólással ezelött 'próba' is erről írt. A következmények eltérők lehetnek az adott hálózattól függően - rossz földelés... Valamelyik régebbi hozzászólásban valaki azt írta, hogy "én minden kapcsolóüzemi tápomból kiszedem ezeket a kondikat". Nem tudom miért teszik bele ezeket, ráadásul a feszültségtűrésük is általában hagy némi kívánnivalót.
(#) JoeA hozzászólása Jún 2, 2019 /
 
Ezeket jó olvasni illetve nem jó, de legalább tudni róla! Épp most raktam össze egy kis tápot, trafó, 4 dióda és egy elkó segítségével, gondolva arra, hogy az arduinón úgy is van stabilizátor, de ezek szerint kevés lesz. Nem kapcsolóüzemű, hanem egy régebbi telefontöltő, ami 6V egyent ad ki. mehet vele tartósan vagy érdemesebb egy kicsit komolyabbat összerakni?
(#) proba válasza JoeA hozzászólására (») Jún 2, 2019 /
 
Nem a szűretlenséggel van baj, arra ezek a tápok álltalában jók, és attól max bezavarodik egy időre. A 110/220V -al van baj ami a föld helyett megjelenik. Azzal is csak akkor ha valami földelt, vagy egyéb más zavaros potenciálon lévő dologgal érintkezik.
A hozzászólás módosítva: Jún 2, 2019
(#) ronin75 válasza JoeA hozzászólására (») Jún 2, 2019 /
 
Szerintem mehet róla, de azért ez élesben derül ki, és főleg függ az áramfelvételtől, hogy mit fogsz rákötni. Meg azért az se mindegy, főleg tápfeszültségileg, hogy milyen Ardunot táplálsz vele.
(#) JoeA válasza ronin75 hozzászólására (») Jún 2, 2019 /
 
6V/800mA volt a dobozán, egy nano, LCD, SSR, opto menne róla. A kondit kicseréltem egy nagyobbra (470mikro), mert 10 mikro volt, ezen túl nem változtattam.
(#) JoeA válasza proba hozzászólására (») Jún 2, 2019 /
 
Annó az öreg mesterem olyan tápokat épített minden digi cucchoz, hogy néha nagyobb volt, mint amit hajtott Van régről pár telefontöltőm (trafós, a súlyból gondolom), őszintén meglepett, hogy alig van benne valami! Pont ilyen helyekre tartogattam!
(#) Kera_Will válasza JoeA hozzászólására (») Jún 2, 2019 /
 
A berendezések annyira megbízhatóan működnek amennyire jó tápellátást kapnak.
(#) ronin75 válasza JoeA hozzászólására (») Jún 2, 2019 / 1
 
Az szerintem bőven elég lesz, a legnagyobb áram az LCD háttérvilágítása.
(Ha van, tegyél 1000u-s kondit inkàbb és vele párhuzamosan egy 100-220n-t.)
A Nano Vin specifikációjának nézz utàna, ha onnan szeretnéd táplálni. Ha az 5V-os bemenetnél, akkor kell minimum egy vagy kèt soros dióda.
A hozzászólás módosítva: Jún 2, 2019
(#) atus1981 hozzászólása Jún 2, 2019 /
 
Sziasztok! Két kódból az egyik működik, létrehozza a fájlt vagy ha létezik akkor ír bele, tökéletesen teszi a dolgát. Viszont amelyik nem működik, az még a fájlt sem hozza létre és esetenként error opening file jelenik meg a soros porton. Az lenne a jó, ha a nem működő működne. Lenne szives valaki megnézné mi lehet a gubanc? Feltötés rendben van, nem ott akadok el. Köszi.
  1. /*
  2.   GPS Logger
  3.   Simple project which logs data  GPS module (NEO 6M) into SD card.
  4.   Locations are stored as file (yyyyMMdd.txt) and the file will contain one row per location (dd.MM.yyyy HH:mm:ss lat,lon).
  5.   Location is stored for each interval given as configuration variable 'frequency'.
  6.   Led modes:
  7.   continuous -> error
  8.   blinking -> looking for location
  9.   off -> everything ok
  10.   Connecting modules:
  11.   Pin3 -> GPS-module-RX
  12.   Pin4 -> GPS-module-TX
  13.   Pin10 -> SD-module-SS
  14.   Pin11/MOSI -> SD-module-MOSI
  15.   Pin12/MISO -> SD-module-MISO
  16.   Pin13/SCK -> SD-module-SCK
  17.   Dependency(TinyGPS++ library): http://arduiniana.org/libraries/tinygpsplus/
  18.  
  19.   created   Apr 2017
  20.   by CheapskateProjects
  21.   ---------------------------
  22.   The MIT License (MIT)
  23.   Copyright (c) 2017 CheapskateProjects
  24.   Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
  25.   The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
  26.   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING , OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  27. */
  28.  
  29. #include <TinyGPS++.h>
  30. #include <SoftwareSerial.h>
  31. #include <SPI.h>
  32. #include <SD.h>
  33.  
  34. // Pins used for communicating with GPS module
  35. static const int RXPin = 4, TXPin = 3;
  36. // Status led
  37. static const int GpsLedPin = 9;
  38. // Baud rate of your GPS module (usually 4800 or 9600)
  39. static const uint32_t GPSBaud = 9600;
  40. // How frequently should we save current location (milliseconds)
  41. static const unsigned long frequency = 5000;
  42.  
  43. // gps object
  44. TinyGPSPlus gps;
  45. // true when we have found location since last restart and file has been opened
  46. boolean opened = false;
  47. // current data file
  48. File dataFile;
  49. // file name
  50. String fileName;
  51. // timestamp of previous location capture. Used to check if we should save this location or skip it
  52. unsigned long previous=0;
  53. // The serial connection to the GPS device
  54. SoftwareSerial ss(RXPin, TXPin);
  55.  
  56.  
  57. void setup()
  58. {
  59.   Serial.begin(9600);
  60.   ss.begin(GPSBaud);
  61.   pinMode(GpsLedPin, OUTPUT);
  62.   digitalWrite(GpsLedPin, LOW);
  63.  
  64.   if (!SD.begin(10))
  65.   {
  66.     digitalWrite(GpsLedPin, HIGH);
  67.     while(true);
  68.   }
  69. }
  70.  
  71. void loop()
  72. {
  73.   // If we have data, decode and log the data
  74.   while (ss.available() > 0)
  75.     if (gps.encode(ss.read()))
  76.       logInfo();
  77.  
  78.   // Test that we have had something  GPS module within first 10 seconds
  79.   if (millis() > 10000 && gps.charsProcessed() < 10)
  80.   {
  81.     // Set error led
  82.     digitalWrite(GpsLedPin, HIGH);
  83.     // Wiring error so stop trying
  84.     while(true);
  85.   }
  86. }
  87.  
  88. // Help function to pad 0 prefix when valus < 10
  89. void printIntValue(int value)
  90. {
  91.   if(value < 10)
  92.   {
  93.     dataFile.print(F("0"));
  94.   }
  95.   dataFile.print(value);
  96. }
  97.  
  98. // Log current info if we have valid location
  99. void logInfo()
  100. {
  101.   // Wait until we have location locked!
  102.   if(!gps.location.isValid())
  103.   {
  104.     digitalWrite(GpsLedPin, HIGH);
  105.     delay(20);
  106.     digitalWrite(GpsLedPin, LOW);
  107.     return;
  108.   }
  109.  
  110.   if(!opened)
  111.   {
  112.     // When we first get something to log we take file name  that time
  113.     fileName = "";
  114.     fileName += gps.date.year();
  115.     if(gps.date.month() < 10) fileName += "0";
  116.     fileName += gps.date.month();
  117.     if(gps.date.day() < 10) fileName += "0";
  118.     fileName += gps.date.day();
  119.     fileName += ".txt";
  120.     opened = true;
  121.   }
  122.  
  123.   // Show that everything is ok
  124.   digitalWrite(GpsLedPin, LOW);
  125.  
  126.   if(millis() - previous > frequency)
  127.   {
  128.     previous = millis();
  129.     // Write data row (dd.MM.yyyy HH:mm:ss lat,lon)
  130.     dataFile = SD.open(fileName, FILE_WRITE);
  131.     printIntValue(gps.date.day());
  132.     dataFile.print(F("."));
  133.     printIntValue(gps.date.month());
  134.     dataFile.print(F("."));
  135.     dataFile.print(gps.date.year());
  136.     dataFile.print(F(" "));
  137.     printIntValue(gps.time.hour()+2);
  138.     dataFile.print(F(":"));
  139.     printIntValue(gps.time.minute());
  140.     dataFile.print(F(":"));
  141.     printIntValue(gps.time.second());
  142.     dataFile.print(F(" "));
  143.     dataFile.print(gps.location.lat(), 6);
  144.     dataFile.print(F(","));
  145.     dataFile.print(gps.location.lng(), 6);
  146.     dataFile.print(F(", "));
  147.     dataFile.print(gps.speed.kmph(), 2);
  148.     dataFile.println();
  149.     dataFile.close();
  150.    
  151.   }
  152. }



Ez a nem működő:
  1. #include "Neo7M.h" //call GPS library
  2. #include <SPI.h>
  3. #include <SD.h>
  4.  
  5. const int chip = 10; //pin used for chip  on SD card SPI comm
  6. String labels = "Time, Status, Latitude, Hemisphere, Longitude, Hemisphere, Speed, Track Angle, Date,"; //labels for fields in SD CSV file
  7. String wFile = "WDATA"; //used as file name, need to follow 8.3 naming convention
  8. Neo7M neo;
  9.  
  10. void setup() {
  11.   if (!SD.begin(chip)) {
  12.     // don't do anything more:
  13.     return;
  14.   }
  15.   else {
  16.     //Serial.println("card initialized.");
  17.     bool file = false; //tracks when we found a file name we can use
  18.     int count = 0; //used for naming the file
  19.     while(!file){
  20.       if(SD.exists(wFile + ".csv")) {
  21.         count++; //up the count for naming the file
  22.         wFile = "WDATA" + (String)count; //make a new name
  23.       }
  24.       else file = true; //we found a new name so we can exit loop
  25.     }
  26.     File myFile = SD.open((wFile + ".csv"), FILE_WRITE); //open file to write labels to CSV
  27.     if (myFile) {
  28.        myFile.println(labels);
  29.        myFile.close(); //we are done with file so close it
  30.     }
  31.     else { //if file doesn't open alert user
  32.      Serial.begin(9600);
  33.     Serial.println("error opening file...");
  34.     Serial.println("");
  35.     Serial.end();
  36.     }
  37.   }
  38.  
  39. }
  40.  
  41. void loop() {
  42.  
  43.   delay(2000);
  44.  
  45.   //if you are using an AVR arduino then use "Serial" for argument, the Arduino Zero has more than one hardware serial port so we use "Serial1"
  46.  if(!neo.getNMEAData(Serial1)) { //if this is true failed to get GPS data
  47.     Serial.begin(9600);
  48.     Serial.println("failed to get data.....");
  49.     Serial.end();
  50.   }
  51.   else { //if this is true we got GPS data so let's print it to SD card
  52.     File dataFile = SD.open((wFile+".csv"), FILE_WRITE); //create file object and open csv created in setup
  53.     // if the file is available, write to it:
  54.     if (dataFile) {
  55.       for (int i = 0; i < 9; i++) { //print out the lables and matching NMEA data
  56.          if(i<8) dataFile.print(neo.nmea[i]+","); //print GPS data to SD card and append comma
  57.          else dataFile.println(neo.nmea[i]+",");
  58.        }
  59.       dataFile.close();  //close file since we are finished
  60.       // print to the serial port too:
  61.       Serial.begin(9600);
  62.       for (int i = 0; i < 15; i++) { //print out the lables and matching NMEA data
  63.         Serial.println(neo.nmea[i]);
  64.         //Serial.println("");
  65.       }
  66.      Serial.end();
  67.     }
  68.   // if the file isn't open, pop up an error:
  69.     else {
  70.       Serial.begin(9600);
  71.       Serial.println("error opening file...");
  72.       Serial.println("");
  73.       Serial.end();
  74.     }
  75.   }
  76. }
(#) Bakman válasza atus1981 hozzászólására (») Jún 2, 2019 /
 
A kérdésre nem tudom a választ de nem lenne egyszerűbb egy GPS vevőt és egy OpenLog modult direkt összekötni? Már ha ez a cél. Igaz, így a sok adatból neked kell kimazsolázni a kellő infót, cserébe minden adat mentve lesz.
(#) KoblogPerGyok válasza atus1981 hozzászólására (») Jún 2, 2019 /
 
Helló!

include string.h nem kell bele?
(#) KoblogPerGyok válasza Bakman hozzászólására (») Jún 2, 2019 /
 
54-59ig nem világos. az if szerkezetten kívül van a file close. annak nem egy } -el beljebb kellene lennie?

nézd át ezt ezt a részt.
(#) atus1981 válasza Bakman hozzászólására (») Jún 2, 2019 /
 
Ez a modul jónak bizonyul, viszont nem kell minden adatot menteni vele, csak azt, amit eddig is.
(#) atus1981 válasza KoblogPerGyok hozzászólására (») Jún 2, 2019 /
 
Hali!
Nem tudom, lefordul így is, feltölthető.
(#) KoblogPerGyok válasza atus1981 hozzászólására (») Jún 2, 2019 /
 
előbb rosszat írtam, töröltem.
Következő: »»   535 / 853
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