Arduino Trådlös styrning

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Kalle_skåne
Inlägg: 3
Blev medlem: 19 november 2015, 15:47:58

Arduino Trådlös styrning

Inlägg av Kalle_skåne »

Hejsan .. Jag behöver lite hjälp med att lösa ett C problem jag har. Jag pular med en liten trådlös styrning till en teleskopfokusering.

Jag utgår ifrån 2st Arduino UNO kort och Sändare/Mottagare typ ASK XY-MK-5V, Jag har laddat ner "RadioHead" RH_ASK drivrutiner från http://airspayce.com/mikem/arduino/RadioHead/index.html.

Det fungerar över förväntat direkt utan strul att skicka styrkommandon mellan korten. Kruxet är att det är >15 år sedan jag hackade i C-kod senast :)

Hur får jag ut mottagna kommandon från driver.recv(buf, &buflen) så jag kan avkoda dom och använda dom till att styra tex. en stegmotor ????

Tex jag skickar från sändarkortet FIN eller FOUT eller SIN eller SOUT

Se kod nedan.

// ask_receiver.pde
// -*- mode: C++ -*-
// Simple example of how to use RadioHead to receive messages
// with a simple ASK transmitter in a very simple way.
// Implements a simplex (one-way) receiver with an Rx-B1 module

#include <RH_ASK.h>
#include <SPI.h> // Not actualy used but needed to compile

RH_ASK driver;

void setup()
{
Serial.begin(9600); // Debugging only
if (!driver.init())
Serial.println("init failed");
}

void loop()
{
uint8_t buf[RH_ASK_MAX_MESSAGE_LEN];
uint8_t buflen = sizeof(buf);

if (driver.recv(buf, &buflen)) // Non-blocking
{
int i;

// Message with a good checksum received, dump it.
driver.printBuffer("Got:", buf, buflen);
}
}
nifelheim
Den första
Inlägg: 2329
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Re: Arduino Trådlös styrning

Inlägg av nifelheim »

Välkommen hit!

Med reservation för att jag missförstår frågeställningen,
buf kommer att peka på det första mottagna tecknet och buflen är längden av det mottagna.

ex.

du skickar/tar emot:
frasse

buf kommer att peka på f:et i frasse och buflen kommer vara 6

klassen finns ju ganska bra dokumenterad
http://airspayce.com/mikem/arduino/Radi ... __ASK.html


Om det inta var det du undrade får du nog förklara lite mer vad du vill göra. :)
Kalle_skåne
Inlägg: 3
Blev medlem: 19 november 2015, 15:47:58

Re: Arduino Trådlös styrning

Inlägg av Kalle_skåne »

Hejsan .

Tack för svar.. Jag har svårt att få kläm hur det skall skrivas ihop. Jag får inte ut annat än 0000.... ur buf efter konvertering till int.

Om jag tex skickar "DDEE" så får jag ut i hex driver.printBuffer("Got:", buf, buflen); 44 44 45 45 ..

Men försöker jag tilldela KeycharMsg och konvertera till int så får jag inte till det.

for (i = 0; i < buflen; i++)
{
KeycharMsg = char(buf);
}
KeycharMsg[buflen] = '\0';
KeyData = atoi(KeycharMsg);
Kalle_skåne
Inlägg: 3
Blev medlem: 19 november 2015, 15:47:58

Re: Arduino Trådlös styrning

Inlägg av Kalle_skåne »

Hej igen .

Nu fungerar det som planerat... Det har varit lite för mycket hårdvaruutveckling senaste 15 åren för mej..

Det är kul med embedded C programmering när man får det att fungera. Hehe

:)
Skriv svar