A variable in C/C++ which stores the type and location of data in memory.
1
vote
2answers
46 views
User callback functions
I want to write a class that allows the user to attach his own function to a member function that listens for messages coming from a wireless module, so that the user's function can be called ...
1
vote
3answers
60 views
Integer goes garbage after iteration. struct pointer manipulation messed up other variables in memory
I'm writing a library for Charlieplexed LED display (trying to write a common one actually). The library is working quite fine. In my arduino sketch, I'm using an integer to keep track of the LED, ...
1
vote
1answer
48 views
Casting a struct member between uint8_t and char, with regard to serial transfer
Im simply trying to pass my payload to another device that has the same architecture and struct. I'm using UART to transfer, and modeling the protocol from EasyTransfer.
When I call ...
5
votes
2answers
126 views
Works with gcc, not with Arduino. error: taking address of temporary array
I need to hard code 8 byte addresses into char arrays of length 8. This must be done many places in my code (in function scope), so I have tried to come up with a one-liner. The following works ...
3
votes
1answer
103 views
Dereferencing char into a struct
I am sending some data over an NRF24 link, using the RF24Network library. So far I have only sent numbers, now I also want to send a string, so I have set up my payload struct as
struct payload_t { ...
0
votes
1answer
75 views
Why doesn't my object's method return back to my caller method?
I am creating a miniature computer using an Arduino, and I am creating a full-scale interpreter for it. Everything works, and the code begins to run after calling the runCode method, but once the run ...
2
votes
1answer
26 views
Mysterious behavior when using objects
I am writing a project that involves using complementary filters to combine gyroscope and accelerator readings in 3 directions. The relevant code is below.
class CompFilter {
public:
long ...
2
votes
2answers
222 views
How can I pass a char array as the parameter to a function?
I am creating a menu for adjusting system variables.
The menu is made up of pointers like so:
char* options4[] = {"hMin1", "hMax1", "refr1", "fSpeed1"};
I want to pass the selected string as the ...
3
votes
1answer
98 views
sending ctrl-z in a struct?
I have a set of buttons wired to an arduino leonardo that are meant to send either single keystrokes to a computer "a, b, c..." etc, or a key sequence like ctrl+z (to perform an undo command.) ...
0
votes
0answers
89 views
Modbus RS485 Comms Export Meter
I am attempting to communicate with an ABB electrical export meter with an Arduino Mega2560. I am using the SimpleModbusMaster library as found here : ...
1
vote
1answer
82 views
C++ Pointer Issues - Mangled Data
I am having trouble getting my head around pointers in C++, specifically how they behave when passed around or used within objects. As far as my understanding goes as long as pointers, or more ...
1
vote
1answer
31 views
String operators
I have a section of code that I am unsure of what it is doing.
static int bufindw = 0;
static char buffer[4][96];
static char *strchr_pointer;
int result;
result = ...
0
votes
2answers
314 views
Pass a member function pointer to a method of a foreign class (EDB Lib)
I'm currently working on my own arduino library and I'm becoming exasperated with the following problem: I want to store data with the extended database library ...
1
vote
2answers
89 views
cannot convert error with pointers
I write a code to store patterns for LED blinking, but I got this error:
led_basics:39: error: cannot convert 'char (*)[17][2]' to 'char*' in initialization
led_basics:39: error: cannot convert ...
0
votes
2answers
77 views
Use pointer in calculation results in error
I'm building a project to measure/track flyball dog races.
The dogs timings are measured by photoelectric sensors at the start/finish line of the racing lane.
I have most of my code working (available ...
1
vote
3answers
359 views
ISR executes even though an interrupt is not triggered
I am trying to implement a function queue scheduling system. INT1 is connected to a button and int1task causes an LED to flash.
typedef void (*funcptr)(void);
TPrioQueue *queue = NULL;
void ...
0
votes
1answer
442 views
Wrong Mouse.move() output in Arduino Leonardo
I'm using my Arduino Leonardo as a Mouse but I'm experimenting a strange behaviour.
I put my mouse at (-1, -1) (absolute) coordinates and then I execute this code:
Move.move(com[curr_cmd_id].x, ...
1
vote
3answers
427 views
Is it bad coding practice to design a buffer using pointers?
I coded a ring buffer for my Arduino to buffer data from either the SPI or TWI ports. In the .h file I used a pointer for the buffer:
typedef uint8_t *ring_buffer_t;
typedef uint8_t ring_count_t;
...
9
votes
1answer
464 views
Are function pointer assignments atomic in Arduino?
The following snippets are from TimerOne library source code:
// TimerOne.h:
void (*isrCallback)();
// TimerOne.cpp:
ISR(TIMER1_OVF_vect) // interrupt service routine that wraps a user defined ...
1
vote
1answer
1k views
How to use String.substring?
I have the following code in which requestLine is always empty and I can't figure out why. request contains a raw HTTP request, and I want to get the first line of the request which contains the ...
9
votes
2answers
5k views
Why can I not use pointers instead of array with PROGMEM?
I'm currently changing some libraries to use flash instead of RAM for string storage so that I do not run out of SRAM on a project.
Some strings in the library are declared in this manner:
const ...