www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Serial Port Bluetooth Module

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Periferija
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
mih@
Neznanec
Neznanec



Pridružen-a: Pon 14 Jun 2010 11:09
Prispevkov: 2
Aktiv.: 0.01

PrispevekObjavljeno: Pon Jun 14, 2010 11:21 am    Naslov sporočila:  Serial Port Bluetooth Module Odgovori s citatom

Za en projekt želim na Arduina priklopit bluetooth, preko katerega bi potekala serijska komunikacija. Gledal sem nekaj tutorialov po internetu, vsi imajo pač 3.3 GND RX in TX. Nabavil sem tega . Na dnu strani so tudi neka navodila in specifikacije. Pri večini vodičev piše, da se pač BT priklopi, potem pa se že da povezati na računalniku. Vendar le tega računalnik ne zazna. Verjetno ga je prej treba kako inicializirat? Predvidevam da z ukazi, ki so v manual.pdf (torej npr. \r\n+INQ=1\r\n). Nisem pa zasledil kako se mu to pošlje. Predvidevam da preko serijske povezave?
Spisal sem en programček, pa ne vem če si prav razlagam oziroma če sploh gre tako:
Koda:
#include <NewSoftSerial.h>

NewSoftSerial mySerial(2, 3);

void setup() 
{
 Serial.begin(9600); //terminal on PC
 Serial.println("Start");
 mySerial.begin(9600);  //bluetooth
}
void loop()
{
 if (mySerial.available()) {
     Serial.print(mySerial.read());   
 }
 if (Serial.available()) {
     mySerial.print(Serial.read());
 }
}


Torej da bi komuniciral z bluetoothom preko terminala, vmes je pa Arduino. Toliko da vidim kaj sploh vrača bluetooth, da bi recimo vsaj vrnil svoj naslov ali pa druge BT naprave v okolici.
Ali moram najprej BT priklopit direktno na računalnik preko serijske povezave, da vidim kaj se z njim dogaja?

Hvala za kakršnokoli pomoč Smile
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
David2204
Član
Član



Pridružen-a: Pon 03 Nov 2008 0:01
Prispevkov: 997
Aktiv.: 5.32
Kraj: Ljubljana - Nova Gorica

PrispevekObjavljeno: Pon Jun 14, 2010 4:53 pm    Naslov sporočila:   Odgovori s citatom

Če hočeš Arduino uporabiti samo zaradi serijskih vrat, Bluetooth modul poveži na pin 0 in 1 tako, da grejo RX bluetootha in Arduina skupaj, isto za TX. Nato poveži Reset linjo na maso. Tako boš začasno onemogočil ATMego. Pa pazi pri povezovanju bluetooth modula, ker ta deluje na 3,3V. To pomeni da ga napajaš na 3,3V in tudi signalne linije ne smejo preseči teh napetosti. Upam, da ga nisi že skuril.

Izhodni signal (med RX arduina in RX bluetootha) lahko preprosto spraviš na 3,3V, če zaporedno vežeš 10k in 20k upora. Na vrh povežeš RX arduina, nasred RX bluetootha, spodaj pa maso.

Upam, da sem dovolj jasno razložil. Če ne, pa vprašaj. Wink

_________________
My favorite programming language is ... solder. -Bob Pease
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
mih@
Neznanec
Neznanec



Pridružen-a: Pon 14 Jun 2010 11:09
Prispevkov: 2
Aktiv.: 0.01

PrispevekObjavljeno: Sre Jun 16, 2010 12:46 pm    Naslov sporočila:   Odgovori s citatom

Hvala za tako hiter odgovor.
Sem povezal tako kot si napisal in glej ga zlomka: če vpišem AT mi vrne OK, prav tako mac naslov, pin kodo in podobno. Zdaj moram malo pogledat kako ga pripravit do tega, da bo zaznal BT računalnika oziroma mobilnega telefona.

V bistvu je bila pa glavna ideja ta, da preko mobilnega telefona komuniciram z arduinom. Recimo na telefonih s Symbianom teče python, ki zna komunicirat preko BT. Zato sem najprej mislil povezat arduino z računalnikom, da bi preko terminala izpisoval kaj se sploh dogaja. Zato sem mislil uporabit tisti SoftSerial, če sem si sploh prav zamislil?
Recimo ko spišem programček na telefonu, da ko pritisnem 1 na številčnici, le-to pošlje preko BT v arduino, ta pa prižge ledico (samo kot primer).
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
David2204
Član
Član



Pridružen-a: Pon 03 Nov 2008 0:01
Prispevkov: 997
Aktiv.: 5.32
Kraj: Ljubljana - Nova Gorica

PrispevekObjavljeno: Sre Jun 16, 2010 4:25 pm    Naslov sporočila:   Odgovori s citatom

Če želiš podatke odčitavati tudi na Arduinu, potem je pravilno, da podatke naprej pošlješ preko SoftSerial knjižnice.

Drugače pa poskusi iz računalnika povezat na modul s SPP (serial port profilom). Pa datasheet bluetooth modula preberi, da vidiš katera je default bluetooth koda. Wink

_________________
My favorite programming language is ... solder. -Bob Pease
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Sagaris
Član
Član



Pridružen-a: Tor 06 Okt 2009 11:44
Prispevkov: 105
Aktiv.: 0.60
Kraj: Ilirska Bistrica/Ljubljana

PrispevekObjavljeno: Čet Jul 28, 2011 3:49 pm    Naslov sporočila:   Odgovori s citatom

Malo bi ukradel temo.

Na firmi imamo Bluetooth RS232 serial adapterje, vendar kot ugotavljam niso full-duplex.
Problem je v tem, da na napravo, od katere hočem podatke, ne dobivam podatkov. Ideja je takšna:
-Iz PC-ja pošlem zahtevo za podatke.
-Naprava dobi zahtevo in začne s pošiljanjem podatkov
-Na PC-ju podatke pretvorim v uporabne informacije.

Testiral sem z navadnim RS232 kablom, priklopljenim na USB-to-RS232 konverter in zadeva deluje normalno. Parametre imam nastavljene po specifikacijah naprave:
Baud rate - 19200
Data bits - 8
Parity - Even
Stop bit - 1
Handshake - CTS/RTS(Hardware)

Zahtevo pošiljam preko C# programa, ki po poslani zahtevi bere podatke iz določenega COM porta.
Preko kabla [slovenščina je zame španska vas] normalno. Pošljem zahtevo, berem podatke(konstantno se pošiljajo v razmaku nekaj sekund).
Dodaten problem pri programu v C# je še ta:
-Preko kabla, kot že rečeno, deluje normalno
-Pri BT modulu pa je problem, da mi Visual studio javi napako, da COM port ne obstaja ali kaj podobnega. Vrže mi IO Exception, tako da lahko le pošljem, ne pa tudi sprejemam. Sedaj bom še nekaj poizkusil, pa javim.

Preko Bluetooth modula(ki se poveže, software od BT-ja javlja da je vse OK) pa lahko le pošljem (v statusu od BT modula vidim, da se pošlje 52 znakov-točno toliko je dolga zahteva).
Se pravi iz tega lahko nekako sklepam, da BT adapter dejansko ni full duplex, plus to, da ima sam modul stikalo, na katerem izbiraš DCE oz. DTE. V specifikacijah piše DCE - towards antenna connector in DTE - towards RS232 connector.
Se pravi DCE pomeni da se podatki pošiljajo na anteno in nato v PC, DTE pa iz PC-ja, preko antene v RS232, ki je priklučen na napravo..

Je to kot pravim tukaj? Se pravi imam half-duplex BT RS232 napravo? Ima kdo kaj izkušenj, se da dobiti(narediti) adapter, ki bi imel full-duplex povezavo?

_________________
There is no stronger drug than reality!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
watts
Član
Član



Pridružen-a: Sob 06 Nov 2010 17:59
Prispevkov: 422
Aktiv.: 2.59
Kraj: Knežak

PrispevekObjavljeno: Sob Jul 30, 2011 3:12 pm    Naslov sporočila:   Odgovori s citatom

Sagaris je napisal/a:
-Pri BT modulu pa je problem, da mi Visual studio javi napako, da COM port ne obstaja ali kaj podobnega. Vrže mi IO Exception, tako da lahko le pošljem, ne pa tudi sprejemam. Sedaj bom še nekaj poizkusil, pa javim.


Moj nasvet + izkušnja iz programiranja: kakršnikoli USB/bluetooth serijski porti ki jih uporabljaš za komunikacijo, naj bodo v rangu COM1 do COM4. Sicer za operacijski sistem je COM9 obstajal, ampak z FreeBasicom komunicirat z konzolo za mobitel prek USBja je bil križ in kraž vse dokler nisem spremenil porta na COM4.

Verjamem da je tukaj križ v vseh jezikih, ne sam C/C#/C++/Freebasic/itd.

Poskusi, poročaj, LP.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Obelix
Član
Član



Pridružen-a: Pon 19 Maj 2008 13:59
Prispevkov: 1862
Aktiv.: 9.64
Kraj: Maribor

PrispevekObjavljeno: Sob Jul 30, 2011 5:39 pm    Naslov sporočila:   Odgovori s citatom

watts je napisal/a:
Moj nasvet + izkušnja iz programiranja: kakršnikoli USB/bluetooth serijski porti ki jih uporabljaš za komunikacijo, naj bodo v rangu COM1 do COM4. Sicer za operacijski sistem je COM9 obstajal, ampak z FreeBasicom komunicirat z konzolo za mobitel prek USBja je bil križ in kraž vse dokler nisem spremenil porta na COM4.


Omemba FreeBasica je pritegnila pozornost.

Imel bom program v FreeBasicu, s katerim bi rad (med drugim) komuniciral z Arduinom preko USB. Komunikacija bo preprosta. Pravzaprav bo Arduino sprejel samo nek ukaz na osnovi katerega bo nekaj naredil.

Če imaš kak primer USB komunikacije iz FreeBasica, se priporočam.

Hvala in lep pozdrav, Andrej
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Sagaris
Član
Član



Pridružen-a: Tor 06 Okt 2009 11:44
Prispevkov: 105
Aktiv.: 0.60
Kraj: Ilirska Bistrica/Ljubljana

PrispevekObjavljeno: Pon Avg 01, 2011 4:08 pm    Naslov sporočila:   Odgovori s citatom

Rešili problem... Bil je čisto programski.
Vpisal sem še tole:

System.Threading.Thread.Sleep(5000);

Če program ne počaka, potem ne deluje. Smile

_________________
There is no stronger drug than reality!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Sagaris
Član
Član



Pridružen-a: Tor 06 Okt 2009 11:44
Prispevkov: 105
Aktiv.: 0.60
Kraj: Ilirska Bistrica/Ljubljana

PrispevekObjavljeno: Pon Avg 01, 2011 5:26 pm    Naslov sporočila:   Odgovori s citatom

No, zdej smo ugotovili da niti čakat ni treba, je bil pa to povod za spremembo kode. Zdej je dejansko en buffer in zdej dela super.
_________________
There is no stronger drug than reality!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
frimd
Član
Član



Pridružen-a: Čet 15 Okt 2009 21:01
Prispevkov: 141
Aktiv.: 0.80
Kraj: Slov. Konjice

PrispevekObjavljeno: Tor Maj 07, 2013 11:42 am    Naslov sporočila:   Odgovori s citatom

Zanima me če moram TX linijo iz 5v na 3.3v spraviti z delilnikom
Slika

Ali lahko nemesto delilnika uporabim kar upor 330ohm ?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
red_mamba
Član
Član



Pridružen-a: Ned 20 Feb 2005 17:56
Prispevkov: 1486
Aktiv.: 6.69
Kraj: Yogyakarta

PrispevekObjavljeno: Tor Maj 07, 2013 12:13 pm    Naslov sporočila:   Odgovori s citatom

frimd je napisal/a:
Zanima me če moram TX linijo iz 5v na 3.3v spraviti z delilnikom
Slika

Ali lahko nemesto delilnika uporabim kar upor 330ohm ?


Oboje bi moralo funkcionirati. Vendar je delilnik bolj pravilna oblika.

_________________
Bad things happen to good people all the time for no reason!
Blog
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
frimd
Član
Član



Pridružen-a: Čet 15 Okt 2009 21:01
Prispevkov: 141
Aktiv.: 0.80
Kraj: Slov. Konjice

PrispevekObjavljeno: Tor Maj 07, 2013 4:14 pm    Naslov sporočila:   Odgovori s citatom

pri Rx liniji ni potreben delilnik oz. upor ?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
red_mamba
Član
Član



Pridružen-a: Ned 20 Feb 2005 17:56
Prispevkov: 1486
Aktiv.: 6.69
Kraj: Yogyakarta

PrispevekObjavljeno: Tor Maj 07, 2013 9:57 pm    Naslov sporočila:   Odgovori s citatom

frimd je napisal/a:
pri Rx liniji ni potreben delilnik oz. upor ?


ne, 3+nekaj V bi moralo zadostovati za logicno 1

_________________
Bad things happen to good people all the time for no reason!
Blog
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Periferija Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 48 dni


Powered by phpBB © 2001, 2005 phpBB Group