Stránka 2 z 3
Napsal: 04 pro 2015, 16:30
od jiri255
jo a když jsem zkusil pevně definovat data
Zaveď si pevnou proměnnou "data" třeba
float data = 23.50;
tak mi to hlásí tuto chybu při pokusu program nahrát
"cannot convert 'float' to 'byte*' for argument '1' to 'void lwtx_send(byte*)'
Napsal: 04 pro 2015, 16:56
od frpr666
na vysílací straně si pro odladění dej:
...
if (lwtx_free())
{
for ( i = 0; i < 9; i++)
{
Serial.print(data[i], HEX);
}
lwtx_send(data);
...
na přijmací straně, bych vyhodil to delay(10000)
a vyčítání bych udělal podle příkladu, který je uveden ke knihovně.
Je třeba si uvědomit, že přijmač není nijak časově synchronizován s vysílačem.
Tj. pokud vysílač posílá zprávu např. "abcde" každých 5 sekud a na přijmači čteš buffer v pevném intervalu 10s, tak v bufferu můžou být různé kombinace přijatých zpráv, např.
"abcdeabcde", "bcdeabcdea","cdeabcdeab" atd..
Napsal: 04 pro 2015, 16:58
od Cowley
jeste koukam ze v programu pro prijimac nejak v radku nize vypadnul "&":
lwrx_getmessage(data,&delka);
Napsal: 04 pro 2015, 17:53
od Cowley
jiri255 píše:...jen oni pracujou s tlačítkama a já potřebuju teplotu...
A ten priklad podle tutorialu, poslat radu cislic 0-9 nebo zapojeni treba s tema tlacitkama, Ti funguje? Nekde se zacit musi

Napsal: 04 pro 2015, 18:16
od Cowley
jiri255 píše:...jo a když jsem zkusil pevně definovat data...
Kdybys ten prispevek cetl poradne, dole jsem to s omluvou Editoval

Napsal: 04 pro 2015, 18:25
od jiri255
to "&": tam být nemůže, když ho tam dám program se mi nenahraje
a hlásí chybu
lwrx_getmessage(data,&delka);
proto to mám bez toho:
lwrx_getmessage(data,delka);
jinde jsem našel, že to tam nebylo, tak nevím jak zásadní to
je pro funkci toho programu?
Jinak, když jsem tam nahrál to co je v tom tutorialu, tak mi to chodilo
vysílač posílal 1 až 9 a přijímač to zobrazoval, ale s teplotou mi to nefunguje

Napsal: 05 pro 2015, 10:52
od Cowley
Tak to zkus s jinou knihovnou, treba
odtud
Koukal jsem, ze podle tveho prispevku a jeho nove knihovny to hodne lidem nechodi a puvodni uz nikde neni k mani.
Napisu si Jeziskovi, at mi taky jeden par modulu prinese.

Napsal: 05 pro 2015, 17:42
od jiri255
zkusil jsem tu knihovnu virtualwire a ty programy co jsou v examples ten transmitter a receiver, ale to nefunguje vubec

v tech programech to hlasi jednu chybu za druhou a nejde to nahrat, takze nemam co odzkouset...
Napsal: 05 pro 2015, 18:36
od jiri255
našel jsem tuto virtualwire knihovnu a je funkční
[url]
https://www.pjrc.com/teensy/td_libs_VirtualWire.html
[/url]
programy co jsou tam uvedené žádnou chybu už nehlásí,
ale není mi tam jasné to zapojení do těch pinů,
každý program má pin 6,12,11,3 a ten druhý 11,12,2,3
ale přijímač i vysílač mají jen po jednom
výstupu, tak nevím kam to mám teda vlastně co zapojit?
Protože na přijímači se mi v serialu zobrazí jen "setup"
a dál nic a do vysílače jsem si doplnil
a to vypadá, že posílá pořád dokola "hello -i", tak to asi
funguje a něco to posílá, ale přijímač to nezobrazí

Napsal: 05 pro 2015, 19:06
od Cowley
Je to vzdy v poradi pro Ledku, vysilani, prijimani, ovladani.
Takze u vysilace to bude vystup pro Transmit, u prijimace to bude Receive.
Napsal: 05 pro 2015, 20:04
od jiri255
a který pin použít u vysílače ten 12 nebo 3:
transmit_pin = 12;
nebo
transmit_en_pin = 3;
a u přijímače je to tedy jen ten pin 11
const int receive_pin = 11;
a ty osatní piny se tedy nezapojují ani nijak nepropojují
potom nějak úplně nechápu proč tam jsou?
Napsal: 05 pro 2015, 20:16
od Cowley
_en je pro ovladani, vstup cele zarizeni vysilace aktivuje-povoluje, anglicky enable. Musi tam byt uvedene vsechny, vysilac i prijmac ma jednu spolecnou knihovnu a ta ty hodnoty vyzaduje, i kdyz v danem programu neni vubec treba dal vyuzita.
Jinak mas na te strance vysvetleni ke vsem prikazum

Napsal: 05 pro 2015, 20:35
od jiri255
tak už mi to asi jede vysílač jsem připojil na pin 12 UNO a přijímač mám na pin 11 MEGA a teď přijímač přijímá následující: (je to kopie ze serialu)
Kód: Vybrat vše
setup
Got: 68 65 6C 6C 6F 20 1
Got: 68 65 6C 6C 6F 20 2
Got: 68 65 6C 6C 6F 20 3
Got: 68 65 6C 6C 6F 20 4
Got: 68 65 6C 6C 6F 20 5
Got: 68 65 6C 6C 6F 20 6
Got: 68 65 6C 6C 6F 20 7
Got: 68 65 6C 6C 6F 20 8
Got: 68 65 6C 6C 6F 20 9
Got: 68 65 6C 6C 6F 20 A
Got: 68 65 6C 6C 6F 20 B
Got: 68 65 6C 6C 6F 20 C
Got: 68 65 6C 6C 6F 20 D
Got: 68 65 6C 6C 6F 20 E
Got: 68 65 6C 6C 6F 20 F
Got: 68 65 6C 6C 6F 20 10
Got: 68 65 6C 6C 6F 20 11
Got: 68 65 6C 6C 6F 20 12
Got: 68 65 6C 6C 6F 20 13
Got: 68 65 6C 6C 6F 20 14
Got: 68 65 6C 6C 6F 20 15
Got: 68 65 6C 6C 6F 20 16
Got: 68 65 6C 6C 6F 20 17
Got: 68 65 6C 6C 6F 20 18
Got: 68 65 6C 6C 6F 20 19
Got: 68 65 6C 6C 6F 20 1A
Got: 68 65 6C 6C 6F 20 1B
Got: 68 65 6C 6C 6F 20 1C
Got: 68 65 6C 6C 6F 20 1D
Got: 68 65 6C 6C 6F 20 1E
Got: 68 65 6C 6C 6F 20 1F
Got: 68 65 6C 6C 6F 20 20
Got: 68 65 6C 6C 6F 20 21
Got: 68 65 6C 6C 6F 20 22
Got: 68 65 6C 6C 6F 20 23
Got: 68 65 6C 6C 6F 20 24
Got: 68 65 6C 6C 6F 20 25
Got: 68 65 6C 6C 6F 20 26
Got: 68 65 6C 6C 6F 20 27
Got: 68 65 6C 6C 6F 20 28
Got: 68 65 6C 6C 6F 20 29
Got: 68 65 6C 6C 6F 20 2A
Got: 68 65 6C 6C 6F 20 2B
což je super, ale moc to nepřipomíná to vysílané "hello"
Napsal: 05 pro 2015, 20:51
od Cowley
A znas ASCII tabulku? Tak koukni jak je hello a mezera zastoupena v HEX, kdyz mas po prijmu v programu prijimace nechat vytisknout zachycene znaky v HEX
Povazuj to za velky pokrok...
A posledni bunka [6] je plnena parametrem count od jednicky po pauze delay vzdy s dalsim vyslanim o jednicku vetsi.
Proto je i videt, ze se "fakt neco deje tzn. vysila i prijima" Gratuluji

Napsal: 05 pro 2015, 20:58
od jiri255

aha to mě hned nenapadlo... je to hello mezera a ty znaky,
tak ano to je skutečně pokrok jenže, jak tímhle způsobem odeslat
tu teplotu 23.50 a když ještě i pošlu třeba text teplomer1,
tak jak s toho na přijímači udělám "teplomer1 - 23.50"
