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   362 / 847
(#) atus1981 válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
Stabilan nyomom, nincs prell.
(#) kapu48 válasza atus1981 hozzászólására (») Júl 16, 2017 /
 
Probáldmeg igy:
  1. int inPin = 2;         // the number of the input pin
  2. int nulla = 3;
  3. int outPin = 13;       // the number of the output pin
  4. int szam = 0;
  5. int state = HIGH;      // the current state of the output pin
  6. int reading;           // the current reading from the input pin
  7. int previous = LOW; // the previous reading from the input pin
  8. int nullazo;
  9.  
  10. int szam1 = 0;
  11.  
  12.  
  13. // the follow variables are long's because the time, measured in miliseconds,
  14. // will quickly become a bigger number than can be stored in an int.
  15. long time = 0;         // the last time the output pin was toggled
  16. long debounce = 500;   // the debounce time, increase if the output flickers
  17.  
  18. void setup()
  19. {
  20.   Serial.begin(9600);
  21.   pinMode(inPin, INPUT_PULLUP);
  22.   pinMode(nulla, INPUT_PULLUP);
  23.   pinMode(outPin, OUTPUT);
  24. }
  25.  
  26. void loop()
  27. {
  28.   reading = digitalRead(inPin);
  29.   nullazo = digitalRead(nulla);
  30.  
  31.  
  32.  
  33.   // if the input just went from LOW and HIGH and we've waited long enough
  34.   // to ignore any noise on the circuit, toggle the output pin and remember
  35.   // the time
  36.   if (reading == HIGH && (millis() - time) > debounce) {
  37.     if(previous == LOW){
  38.       szam++;
  39.       szam1++;
  40.       if (state == HIGH)
  41.         state = LOW;
  42.       else
  43.         state = HIGH;
  44.       previous = HIGH;  // meg akadályozza az ismétlödést
  45.       time = millis();  //  Prel kivárás késleltetés
  46.     }else {
  47.       if (reading == LOW) previous = LOW; // Ha elengedte a gombot? Engedélyezzi a következöt
  48.     }
  49.   }
  50.   if (nullazo == LOW) {
  51.     szam = 0;
  52.     szam1 = 0;
  53.       Serial.println(szam);
  54.  Serial.println(szam1);
  55.   }
  56.  
  57.  
  58.  
  59.   if (szam1 == 5) {
  60.   Serial.println(szam);
  61.  Serial.println(szam1);
  62.   szam1 = 0;
  63.     }
  64.      
  65.  
  66.   digitalWrite(outPin, state);
  67.    
  68. }
(#) atus1981 válasza kapu48 hozzászólására (») Júl 16, 2017 /
 
Hello!
Így nem ír semmit soros portra.
(#) berkesandor válasza atus1981 hozzászólására (») Júl 16, 2017 /
 
A prell-t a nyomógomb mechanikája is okozhatja, mindegy hogy stabilan nyomod el.
De nem kötekedni akarok, próbált meg, tegyél be delay-t a két vizsgálat közé.
(#) atus1981 válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
Elvileg a debounce prell kiküszöbölésére hivatott. Vagy nem tudom, nem vagyok jártas benne annyira.
(#) kapu48 válasza berkesandor hozzászólására (») Júl 16, 2017 / 1
 
Van benne debounce = 500
  1. if (reading == HIGH && (millis() - time) > debounce)
(#) kapu48 válasza atus1981 hozzászólására (») Júl 16, 2017 /
 
5. gombnyomásra, kellene írnia!?
(#) atus1981 válasza kapu48 hozzászólására (») Júl 16, 2017 /
 
Igen, azt szeretném, így nincs "leterhelve" a soros kommunikáció.
(#) tbarath válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
  1. char addr[] = "\"+000000000\"";
  2. char msg[] = "Hello World!";
  3. //tl;dr
  4. SIM.smsSend(addr, msg);

Csak egy "educated guess", mert nem ismerem se a lib-et, se a modult, de ez elég beszédesnek tűnik. Szóval szerintem az addr tömb a telefonszám amire küldi, a msg pedig az SMS szövege.
A hozzászólás módosítva: Júl 16, 2017
(#) berkesandor válasza tbarath hozzászólására (») Júl 16, 2017 /
 
Az addig renden van. Ott akadtam el, hogy HX711 lib-je által visszaadott változót akarom elküldni sms-ben.
Magyarul mérek egyet, a számot elküldöm SMS-ben.
(#) tbarath válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
String-et tudsz float-ből csinálni, arduino doksi példával.
És ha az sms lib-et nem eszi meg a string-et, akkor string-ből tudsz karaktertömböt csinálni, arduino doksi.

Nyilván nem a leghatékonyabb, de úgy látom most nem a hatékonyság a cél.
(#) berkesandor hozzászólása Júl 16, 2017 /
 
És ha meg van a karakter tömb, akkor hogy néz ki ez a sor ?:
  1. char msg[] = "Hello World!";
(#) tbarath válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
Szerintem kb így:
  1. float akarmi = 34489.92436
  2. char msg[10];
  3. String tmp = String(akarmi, 2);
  4. tmp.toCharArray(msg[], 5);

Nyilván hogy mi milyen hosszú, hány tizedes és ilyesmi azt te tudod.
(Ez most fejből ment, de ha valahol hibás akkor kb. 3 perc guglizással tutira találsz működő példakódot.)
(#) berkesandor válasza tbarath hozzászólására (») Júl 16, 2017 /
 
  1. tmp.toCharArray(msg[], 5);


Erre hibát dob sajnos.

" 'tmp' does not name a type "
(#) tbarath válasza berkesandor hozzászólására (») Júl 16, 2017 /
 
Ja, elírtam
  1. tmp.toCharArray(msg, 5);
(#) pisti hozzászólása Júl 17, 2017 /
 
Készítettem egy olyan játékot amelyben egy léptetőmotort és egy 1602 LCD kijelzőt működtet egy Mega. A motor ULN2003-as IC-ről megy. A probléma csupán annyi, hogy mikor megy (és csak akkor) a motor a kijelző fénye elhalványul és villódzik. Mit kellene tenni, hogy normálisan működjön a kijelző.
Külső 9 V-os tápfeszültséget használok.
(#) berkesandor válasza tbarath hozzászólására (») Júl 17, 2017 /
 
Ugyanaz sajnos.
(#) cimopata válasza pisti hozzászólására (») Júl 17, 2017 /
 
Talán egy terhelhetőbb tápfeszültség kellene mert visszaeshet feszültsége amikor a motor megy.
(#) roland9 hozzászólása Júl 17, 2017 /
 
Sziasztok!
Ebay-ről rendeltem egy ilyen kijelzőt az Arduino MEGA2560-hoz, de akármilyen könyvtárat (ILI/ST) egyikkel sem hajlandó működni, csak fehéren világít a háttérvilágítás. Próbáltam korábbi verziójú progival is, de azzal sem akar működni.
Van esetleg valakinek valami ötlete?
(#) RoliNyh válasza pisti hozzászólására (») Júl 17, 2017 /
 
A 9V tápfesz az ugye nem egy 9V-os elem?
De ha mégis, akkor gyorsan keress más megoldást, az nem elég erős léptetőmotor működtetéséhez...
(#) RoliNyh válasza roland9 hozzászólására (») Júl 17, 2017 /
 
Nekem ugyanez valami SPFD5408 könyvtárral megy, bár az érintőképernyőt még nem próbáltam...
(#) roland9 válasza RoliNyh hozzászólására (») Júl 17, 2017 /
 
sajnos nem működik vele
(#) RoliNyh válasza roland9 hozzászólására (») Júl 17, 2017 /
 
Pedig ez kinézetre totál ugyanaz mint ami nekem van...

Nem lehet, hogy a lábakat kellene átkonfigurálnod, vagy átvezetékezned?
Nekem egy UNO -ba bedugva ez a program megy...

  1. // IMPORTANT: Adafruit_TFTLCD LIBRARY MUST BE SPECIFICALLY
  2. // CONFIGURED FOR EITHER THE TFT SHIELD OR THE BREAKOUT BOARD.
  3. // SEE RELEVANT COMMENTS IN Adafruit_TFTLCD.h FOR SETUP.
  4.  
  5. // Modified for SPFD5408 Library by Joao Lopes
  6. // Version 0.9.2 - Rotation for Mega and screen initial
  7.  
  8. // *** SPFD5408 change -- Begin
  9. #include <SPFD5408_Adafruit_GFX.h>    // Core graphics library
  10. #include <SPFD5408_Adafruit_TFTLCD.h> // Hardware-specific library
  11. #include <SPFD5408_TouchScreen.h>
  12. // *** SPFD5408 change -- End
  13.  
  14. // The control pins for the LCD can be assigned to any digital or
  15. // analog pins...but we'll use the analog pins as this allows us to
  16. // double up the pins with the touch screen (see the TFT paint example).
  17. //#define LCD_CS A3 // Chip Select goes to Analog 3
  18. //#define LCD_RS A2 // Command/Data goes to Analog 2
  19. //#define LCD_WR A1 // LCD Write goes to Analog 1
  20. //#define LCD_RD A0 // LCD Read goes to Analog 0
  21. //#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin
  22.  
  23. // When using the BREAKOUT BOARD only, use these 8 data lines to the LCD:
  24. // For the Arduino Uno, Duemilanove, Diecimila, etc.:
  25. //   D0 connects to digital pin 8  (Notice these are
  26. //   D1 connects to digital pin 9   NOT in order!)
  27. //   D2 connects to digital pin 2
  28. //   D3 connects to digital pin 3
  29. //   D4 connects to digital pin 4
  30. //   D5 connects to digital pin 5
  31. //   D6 connects to digital pin 6
  32. //   D7 connects to digital pin 7
  33. // For the Arduino Mega, use digital pins 22 through 29
  34. // (on the 2-row header at the end of the board).
  35.  
  36. // Assign human-readable names to some common 16-bit color values:
  37. #define BLACK   0x0000
  38. #define BLUE    0x001F
  39. #define RED     0xF800
  40. #define GREEN   0x07E0
  41. #define CYAN    0x07FF
  42. #define MAGENTA 0xF81F
  43. #define YELLOW  0xFFE0
  44. #define WHITE   0xFFFF
  45.  
  46. //Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);
  47. Adafruit_TFTLCD tft(A3, A2, A1, A0, A4);
  48. // If using the shield, all control and data lines are fixed, and
  49. // a simpler declaration can optionally be used:
  50. // Adafruit_TFTLCD tft;
  51.  
  52. void setup()
  53.   {
  54.   Serial.begin(9600);
  55.   tft.reset();
  56.   tft.begin(0x9341); // SDFP5408
  57.   tft.setRotation(3); // Need for the Mega, please changed for your choice or rotation initial
  58.  
  59.   //Üdvözlőképernyő
  60. stb...
A hozzászólás módosítva: Júl 17, 2017
(#) roland9 válasza RoliNyh hozzászólására (») Júl 17, 2017 /
 
ami a linkben van kép az se fedi a valóságot, mert nekem hiányzik egy alkatrész róla (csatolt kép).

s-l1600.jpg
    
(#) RoliNyh válasza RoliNyh hozzászólására (») Júl 17, 2017 /
 
  1. //üdvözlőképernyő  
  2.   //tft.fillScreen(BLACK); // háttér szín beállítása
  3.   tft.fillScreen(0x002F); // http://www.barth-dev.de/online/rgb565-color-picker/ (RGB565)
  4.   tft.setCursor(0,50); // kurzor pozíció beállítása
  5.   tft.setTextColor(BLUE); // szöveg szín beállítása
  6.   tft.setTextSize(3); // szöveg méret beállítása: (1méret=53 oszlop 30 sor / 2méret=26 oszlop 15 sor / 3méret=17 oszlop 10 sor
  7.   // 4méret=13 oszlop 7 sor / 5méret=10 oszlop 6 sor / 6méret=8 oszlop 5 sor / 7méret=7 oszlop 4 sor / 8méret=6 oszlop 3 sor / 9 és 10méret=5 oszlop 3 sor)
  8.   //tft.println("    Sw.: Próba"); // szöveg kiíratása
  9.   tft.print("Sw.:   SpotWelder");
(#) RoliNyh válasza roland9 hozzászólására (») Júl 17, 2017 /
 
Az egy 3.3V -os stabilizátor típusa: AMS1117-3.3, az enyémen rajta van.

Próbáld ki a programot amit mutattam, ki kellene írnia valamit.
Ha nem teszi, lásuk mit produkál, hátha az okosoknak támad valami ötlete...
(#) roland9 válasza RoliNyh hozzászólására (») Júl 17, 2017 /
 
Feltöltöttem, de ugyan úgy semmit nem csinál, a lábkiosztások stimmelnek.
(#) IMi válasza roland9 hozzászólására (») Júl 17, 2017 /
 
Esetleg:
Bővebben: Link
(#) roland9 válasza IMi hozzászólására (») Júl 17, 2017 /
 
Ez micsoda, mert nekem csak egy oldal jön be ahol meglehet venni a kijelzőt?
(#) RoliNyh válasza roland9 hozzászólására (») Júl 17, 2017 /
 
Elvileg ezt a sort nekem is mahinálnom kellett, lehet nálad is változtatni kellene az értékét.
De hogy hol vannak a választható értékek azt már nem tudom.
Talán valami példaprogrammal ki kell olvasni a kijelző ROM-jából, de nem esküszöm meg rá...
  1. tft.begin(0x9341); // SDFP5408
Következő: »»   362 / 847
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