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   415 / 853
(#) tbarath válasza sany hozzászólására (») Jan 11, 2018 /
 
Ha nanót akarsz venni, akkor vegyél nanót.
Szerintem bármelyiket megveheted. A CH340-es USBSerial adapteresből van 2k és 2k5 áron is, driver a fórum tetején, az árkülönbséget a pinheader-ek beforrasztása jelenti. Ha tudsz forrasztani és van is mivel, akkor válaszd olcsóbbat.
A legdrágábbon - remélhetőleg - eredeti FTDI chip van USB-serial adapterként. Az eredeti uno-kon is ilyen van (vagy legalábbis volt), mondanám hogy tisztább-szárazabb érzés, de én soha semmi problémát nem tapasztaltam a kínai USBserial chip-ekkel. Mindenesetre ettől még nem lesz eredeti arduino (genuino).

Az más kérdés, hogy elég lesz erre a feladatna egy uno/nano, vagy kell egy nagyobb board. Hány kimeneted és bemeneted lesz?
(#) icserny válasza sany hozzászólására (») Jan 11, 2018 /
 
Mármint melyiket a listán szereplő három közül? Majdnem mindegy, amelyik szimpatikusabb...
Az egyik FT232 USB-UART konverterrel van szerelve, a másik CH340 USB-UART konverterrel és be van forrasztva a tüskesor, a harmadik szintén CH340 konvertrrel szerelt, de feltehetőleg nincs beforrasztva a tüskesor.
(#) sany válasza tbarath hozzászólására (») Jan 11, 2018 /
 
Az Arduino alapprogramokat már ismerem és túl is vagyok rajtuk. Van Arduino R3 UNO alappanelom, de a internetet böngészve a robotvázakon, legtöbbször nano-t látok, gondolom a helyhiány miatt . Azért gondoltam, a nano-ra, gondolom a robotvázra nem fér rá nagyon más. Először az egyszerűbb dolgokat szeretném elsajátítani, mint pl. vonalkövetés, távolságmérés stb. Kezdésnek a 2WD robotra gondoltam. Erre a robotvázra raknám a szükséges paneleket.
A hozzászólás módosítva: Jan 11, 2018
(#) tbarath válasza sany hozzászólására (») Jan 11, 2018 /
 
Ha jól látom 2 motor, pár szenzor, erre szerintem simán elég.
A hozzászólás módosítva: Jan 11, 2018
(#) berkesandor hozzászólása Jan 12, 2018 /
 
STM32F103C8T6 hogyan kompatibilis az arduino rendszerben, ha az IDE-ben nem tudom beállítani?
(vagy lehet, hogy csak egyszerűen nem látom?).
(#) vargham válasza berkesandor hozzászólására (») Jan 12, 2018 /
 
Nem az Arduino cég készíti hozzá,külön kell telepíteni.
https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki
(#) Fizikus válasza sany hozzászólására (») Jan 12, 2018 /
 
Ha mar van egy UNO alappaneled, akkor felesleges egy Nano-t venned, mert a 2WD robot alvazra siman elfer az UNO. Sokkal jobban jarsz, ha veszel egy motor shield-et, mert a robothoz az mindenkeppen kell (hacsak nem akarod magad megepiteni). Kezdetekkor egy szenzor shield is jol johet a tuskekre kivezetett pin-ekkel, tapfesszel/5V-al es GND-vel.
(#) Medve válasza RoliNyh hozzászólására (») Jan 12, 2018 /
 
Nekem is ezek vannak, de nálam működik. A gyári, eredeti, UNO panelen, 2-3-as lábon az BT modullal
(#) RoliNyh válasza Medve hozzászólására (») Jan 12, 2018 /
 
Ez aztán jó, akkor már megint nálam van valami gebasz úgy néz ki...
(#) RoliNyh válasza Medve hozzászólására (») Jan 12, 2018 /
 
Egyre érdekesebb. Feltöltöttem a libet a web editorba, és a szoftveres seriallal megy.
Aztán letiltottam a megfelelő sort a VirtuinoBluetooth.h fájlban.:
  1. //#define BLUETOOTH_USE_SOFTWARE_SERIAL
  2. // disable this line if you want to use hardware serial


Beletettem a virtuino.zip fájlba, és feltöltöttem a web editorba, aztán próbálnám, de ott is hibát ír.

Nincs deklarálva a "Serial1"

Na szóval akkor hol és hogyan is kellene deklarálni ezt a "Serial1" -et szerinted/szerintetek?

Kerestem a VirtuinoBluetooth.h fájlban és a VirtuinoBluetooth.ccp fájlban is, de egyikben sincs ilyen karaktersorozat.

Serial az van dögivel, de Serial1, égen földön egy darab se...
A hozzászólás módosítva: Jan 12, 2018
(#) GPeti1977 válasza RoliNyh hozzászólására (») Jan 12, 2018 /
 
MEGA panelod van?
(#) RoliNyh válasza GPeti1977 hozzászólására (») Jan 12, 2018 /
 
Nem, csak UNO van beállítva.
De ha átállítom MEGA -ra, akkor már aszongyahogy a "bluetoothSerial" nincs deklarálva...

(Amúgy most hogy így kérded, a Serial1 valóban csak MEGA -n létezik mert annak van három hardveres soros portja is. Jól gondolom ugye?)
(#) RoliNyh hozzászólása Jan 13, 2018 /
 
Szóval csak a tisztánlátás véget egy pár gondolat...
  1. #include "VirtuinoBluetooth.h"                          // Include VirtuinoBluetooth library to your code
  2.  
  3. // Code to use SoftwareSerial
  4. #include <SoftwareSerial.h>                             //  Disable this line if you want to use hardware serial
  5. SoftwareSerial bluetoothSerial = SoftwareSerial(2,3);   // arduino RX pin=2  arduino TX pin=3    connect the arduino RX pin to bluetooth module TX pin   -  connect the arduino TX pin to bluetooth module RX pin.  Disable this line if you want to use hardware serial
  6. VirtuinoBluetooth virtuino(bluetoothSerial);            // Set SoftwareSerial baud rate.  -  Disable this line if you want to use hardware serial
  7.  
  8. // Code to use HardwareSerial
  9. //VirtuinoBluetooth virtuino(Serial1);                  // enable this line and disable all SoftwareSerial lines
  10.                                                         // Open VirtuinoBluetooth.h file on the virtuino library folder ->  disable the line: #define BLUETOOTH_USE_SOFTWARE_SERIAL
  11.  
  12. //================================================================== setup
  13.  
  14. void setup(){
  15.  
  16.   virtuino.DEBUG=true;               // set this value TRUE to enable the serial monitor status
  17.   Serial.begin(9600);                // Set serial monitor baud rate
  18.  
  19.   //bluetoothSerial.begin(9600);         // Disable this line if you want to use software serial (Mega, DUE etc.)
  20.   //Serial1.begin(9600);               // Enable this line if you want to use hardware serial (Mega, DUE etc.)
  21.  
  22.   // Use virtuino.vPinMode instead default pinMode method for digital input or digital output pins.
  23.   //pinMode(13,OUTPUT);
  24.     virtuino.vPinMode(13,OUTPUT);                               // Don't use vPinMode for PWM pins, or pins that their values change many times per second
  25.                                                                 // Every time the value of a vPinMode  pin is changed the virtuino library sends a message and inform virtuino about the pin value.
  26.                                                                 // If an PWM pin is declared as vPinMode pin the arduino will continuously try  to send data to android device because the value of a pwm pin changes constantly
  27.    
  28. //------ enter your setup code below
  29.  
  30. }
  31.  
  32. //================================================================== loop
  33.  
  34. void loop(){
  35.    virtuino.run();           //  necessary command to communicate with Virtuino android app
  36.    
  37.     //------ enter your loop code below here
  38.     //------ avoid to use delay() function in your code. Use the command virtuino.vDelay() instead of delay()
  39.     //------ your code .....
  40.    
  41.    // in this "Hello Virtuino World" example you don't have to add any code
  42.  
  43.  }


Tehát az 1. sorban beilleszti a "VirtuinoBluetooth.h" fájlt.
A 4. sorban beilleszti a "SoftwareSerial.h" fájlt
A 5. sorban létrehozza a szoftveres soros kommunikációt, elnevezi "bluetoothSerial" -ra,
és beállítja a 2 és 3 kimenetekre.

KÉRDÉS.:
A hardveres soros kommunikáció már alapból ezen a két kivezetésen van,
ha a szoftveres kommunikáció is ezen van, akkor nem akadnak össze/zavarják be egymást?
Mi van, ha mindkét kommunikációs csatornán küldök/fogadok adatot?

Tovább.:
6 sor egészen homály nekem.
Mi is van itt? Az IDE teljesen feketével írja az egész sort, semmi kiszínezés vagy kiemelés nincs benne.

KÉRDÉS.:
"VirtuinoBluetooth" micsoda?
"virtuino" micsoda?
"(bluetoothSerial)" ez elvileg az előzőleg létrehozott szoftveres kommunikációs csatorna neve.

Tovább.:
A 16 sorban engedélyez valami hibakeresési módot.
A 17 sorban pedig elinditja a hardveres kommunikációs módot 9600bps sebességgel.
Tehát létrejön az, hogy ugyanazon a két lábon (2, 3) van a szoftveres és a hardveres kommunikáció is beállítva, és használva. Erre a két pinre egyébként a HC-06 bluetooth modultkell kötni, azon keresztül beszélgetne az angdoidos applikációval.
Valamint a számítógépen az USB kábelen keresztül a soros monitorral, ha jól gondolom/értelmezem.
A hozzászólás módosítva: Jan 13, 2018
(#) tbarath válasza RoliNyh hozzászólására (») Jan 13, 2018 /
 
Még sose használtam ezt, azt se tudom mi az a virtuino (és annyira se érdekel hogy ráguglizzak).

Szóval csak logikázok abból, amit a kódból látok. Szerintem a VirtuinoBluetooth lib tartalmaz egy ugyanilyen nevű osztályt, ezt példányosítod virtuino néven, és az osztály konstruktorának gondolom meg kell (lehet?) adni egy swserial példányt.

Maga a kód nekem eléggé katyvasz, mert ha jól látom ott van benne mind a hwserial, mind a swserial kód, és kozekvensen kellene ezeket mindenhol kikommentelni, vagy az egyik maradjon benne, vagy a másik.
A hozzászólás módosítva: Jan 13, 2018
(#) Medve válasza RoliNyh hozzászólására (») Jan 13, 2018 /
 
Én UNO-t használtam, ott a hardveres USART a 0-1 es lábon megy, ott programoz, a BT-szal a szoftveres USARTon beszélget a 2-3-as lábon.
(#) RoliNyh válasza tbarath hozzászólására (») Jan 14, 2018 /
 
Sajna ez így autodidaktaként (nem tanult programozóként) nekem már magas.
A virtuino egy komplett vezérlő és kijelző alkalmazás okostelefonra, amivel az arduino boardot tudod vezérelni és a begyüjtött értékeit a telón megjeleníteni.
Hidd el, érdemes megnézni egy videót róla a videómegosztón, hátha rákapsz az ízére...
(#) RoliNyh válasza Medve hozzászólására (») Jan 14, 2018 /
 
Tegnap este rájöttem már én is, hogy hülyeséget csináltam. És arra is, hogy a hws valóban az 1, 2 lábon megy. A ss meg a 3, 4 lábon, és el is indult végre. Tehát az ütközés kizárt.
Szóval működik már nálam is.
Most már világos, hogy a hws -en a debugoláshoz küldi az adatokat az USB -n keresztül a PC -nek a soros monitorra. A ss -on meg a bluetooth -on keresztül a telefonon lévő appal kommunikál.

Nade, ha nekem nem kell a hws -on keresztüli debugolás, azt elvileg le lehet tiltani.
Én azt akarom, hogy a bluetoot -on keresztül az aplikációval komunikálás menjen a hws -on keresztül, és a ss pedig letiltani erőforrás spórolás céljából, ez vajon működhetne így szerinted?
(Ezt már csak holnap tudom kipróbálni.)
(#) Medve válasza RoliNyh hozzászólására (») Jan 14, 2018 /
 
A megjegyzésben közlik, hogy ha akarod, használhatod a hardveres UART-ot a BT kommunikációra. Ezt még én sem próbáltam ki, de mihelyt lesz ilyen projektem, ki fogom
(#) morgo hozzászólása Jan 14, 2018 /
 
Sziasztok!
Az Ardino Mega (2560) mind a 16 analóg bemenete használható digitális bemenetként, bekapcsolható felhúzóellenállásokkal?
(#) vargham válasza morgo hozzászólására (») Jan 14, 2018 /
 
Igen.
Bővebben: Nézd meg az ATmega2560 adatlapot.
2. Oldal, az ADC0-ADC15 analóg bemenetek két 8 bites porton vannak: F és K.
8. Oldal, "Port F serves as analog inputs to the A/D Converter. Port F also serves as an 8-bit bi-directional I/O port, if the A/D Converter is not used. Port pins can provide internal pull-up resistors".
9. Oldal, "Port K serves as analog inputs to the A/D Converter. Port K is a 8-bit bi-directional I/O port with internal pull-up resistors".
(#) morgo válasza vargham hozzászólására (») Jan 14, 2018 /
 
Köszi, így tiszta a kép.
(#) vargham válasza morgo hozzászólására (») Jan 14, 2018 /
 
Szívesen. Az adatlap szinte mindig segít. Bár tény, hogy idő megtanulni adatlapot olvasni.
(#) berkesandor hozzászólása Jan 15, 2018 /
 
Az hívást és SMS-t feldolgozó mérlegemmel a következő problémába ütköztem.
Az sim modulról érkező adatok olvasása limitálva van 200 karakterben.
Ez az eredeti példa:
  1. RxString = "";
  2.   Counter = 0;
  3.   while(SSerial.available()){
  4.     delay(1);  // short delay to give time for new data to be placed in buffer
  5.     // get new character
  6.     RxChar = char(SSerial.read());
  7.     //add first 200 character to string
  8.     if (Counter < 200) {
  9.       RxString.concat(RxChar);
  10.       Counter = Counter + 1;
  11.     }
  12.   }


Ezt illesztettem be a kódomba (a delay (1) kihagytam, mert úgy gondoltam feleslegesen akassza meg a programot).
Most azt a hibajelenséget produkálja, ha nagyon hosszú szöveg jön a sim modultól beleírt az állandó memória terültbe, a szerkezet lefagy csak újra programozással lehet feléleszteni.
Hogyan tudom ezt kivédeni?
(#) nedudgi válasza berkesandor hozzászólására (») Jan 15, 2018 /
 
Az RxString indexelve nem címezhető? A concat szerintem eléggé durva egy karakter hozzáadásához.
(#) berkesandor válasza nedudgi hozzászólására (») Jan 15, 2018 /
 
Nem tudom, hogyan lehetne indexelve betöltni.
Mit jelent, hogy "durva"?
A hozzászólás módosítva: Jan 15, 2018
(#) nedudgi válasza berkesandor hozzászólására (») Jan 15, 2018 /
 
Én meg ehhez a nyelvhez nem értek.
RxString[Counter] = RxChar
A többi maradhat. A concat szerintem átmásolja a régi tartalom összes karakterét, és utána az újat. Ez, főleg a vége felé, elég hosszú művelet lehet egy értékadáshoz képest.
A hozzászólás módosítva: Jan 15, 2018
(#) tbarath válasza nedudgi hozzászólására (») Jan 15, 2018 /
 
Igen, valahogy úgy. És az RxString ne String legyen, hanem char[200]
(#) Pali79 hozzászólása Jan 15, 2018 /
 
Érdekes dolgot produkál az én Mega2560+RAMPS 1.4 panelom. Grafikus kijelző van rajta amin valamiért alig látszik valami hiába állítom a kontrasztot, de amikor megnyomom a RAMPS reset gombját és amíg nyomva tartom addig jó a kijelzés. Aztán elengedem újraindul a mega és utána megint nem jó. Látott már valaki ilyet? Lehet ezzel valamit kezdeni?
(#) berkesandor válasza nedudgi hozzászólására (») Jan 16, 2018 /
 
Köszönöm a választ, működik szépen.
Újabb kérdésem lenne.
Ha a kiolvasott SMS ékezetes betűt tartalmaz, nem nagyon szereti a programom.
Karakterenként olvasom be az üzenetet, hogyan tudom megoldani egyszerűen, hogy az ASCII-ben nem szereplő karaktereket pl. space-re cserélje? És úgy dolgozzon vele tovább.
(#) nedudgi válasza berkesandor hozzászólására (») Jan 16, 2018 /
 
Oda kell figyelni, egy élvezetes betű két karakternyi helyet jelent az SMS-ben.
Következő: »»   415 / 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