Search found 4 matches

by ESPpeter
Sun Feb 25, 2018 3:29 pm
Forum: ESP32 Arduino
Topic: RMT for accurate timing measurement
Replies: 1
Views: 5649

Re: RMT for accurate timing measurement

"Is there any proper full register description?"
Here:
http://arduinouser.hu/esp32/ESP32_RMT_R ... ummary.pdf
by ESPpeter
Sat Dec 23, 2017 1:34 pm
Forum: ESP32 Arduino
Topic: Direct IO Port Manipulation
Replies: 7
Views: 44852

Re: Direct IO Port Manipulation

"How do I do this with ESP32?"

const uint8_t ledPin = 2 ;
pinMode(ledPin,OUTPUT) ;
digitalWrite(ledPin,1); // (*((volatile uint32_t *) (0x3ff44000 + 0x8 ))) ^= 1 << 2 ;
digitalWrite(ledPin,0); // (*((volatile uint32_t *) (0x3ff44000 + 0xC))) ^= 1 << 2 ;
by ESPpeter
Tue Dec 05, 2017 1:43 pm
Forum: ESP32 Arduino
Topic: Directly writing control registers- new programmer feeling pretty lost
Replies: 7
Views: 24601

Re: Directly writing control registers- new programmer feeling pretty lost

ESP_igrr wrote:ESPpeter: Make sure you enable RMT peripheral clock before writing to the control registers. I.e. call periph_module_enable(PERIPH_RMT_MODULE);
Thanks!
You win! :)
*((volatile uint32_t *) (0x3FF000C0)) |= 0x200 ;
*((volatile uint32_t *) (0x3FF000C4)) &= (~(0x200)) ;
after them work!
:)
by ESPpeter
Mon Dec 04, 2017 1:17 pm
Forum: ESP32 Arduino
Topic: Directly writing control registers- new programmer feeling pretty lost
Replies: 7
Views: 24601

Re: Directly writing control registers- new programmer feeling pretty lost

Hi!
How can write DIRECTLY the registers?
*((volatile uint32_t *) (0x3ff560F0)) = 3 do nothing.
Why?
But the read work:
... = *((volatile uint32_t *) (0x3ff560F0))
Thanks