Skip to content

Commit 4b282e1

Browse files
committed
Moving IRAM callback in cpp code
Ref: junkfix/esp32-ds18b20#26
1 parent c69a54d commit 4b282e1

2 files changed

Lines changed: 6 additions & 8 deletions

File tree

src/esp32-ds18b20/OneWireESP32.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ const rmt_receive_config_t owrxconf = {
5050
#endif
5151
};
5252

53+
IRAM_ATTR static bool owrxdone(rmt_channel_handle_t ch, const rmt_rx_done_event_data_t* edata, void* udata) {
54+
BaseType_t h = pdFALSE;
55+
xQueueSendFromISR((QueueHandle_t)udata, edata, &h);
56+
return (h == pdTRUE);
57+
}
58+
5359
OneWire32::OneWire32(uint8_t pin) {
5460
owbuf = new rmt_symbol_word_t[DS18_MAX_BLOCKS];
5561

@@ -159,12 +165,6 @@ OneWire32::~OneWire32() {
159165
delete[] owbuf;
160166
}
161167

162-
bool owrxdone(rmt_channel_handle_t ch, const rmt_rx_done_event_data_t* edata, void* udata) {
163-
BaseType_t h = pdFALSE;
164-
xQueueSendFromISR((QueueHandle_t)udata, edata, &h);
165-
return (h == pdTRUE);
166-
}
167-
168168
bool OneWire32::reset() {
169169

170170
rmt_symbol_word_t symbol_reset;

src/esp32-ds18b20/OneWireESP32.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@
1111
#include "freertos/task.h"
1212
#include "sdkconfig.h"
1313

14-
IRAM_ATTR bool owrxdone(rmt_channel_handle_t ch, const rmt_rx_done_event_data_t* edata, void* udata);
15-
1614
class OneWire32 {
1715
private:
1816
gpio_num_t owpin;

0 commit comments

Comments
 (0)