esp32:direct_pin_data_copy
This is an old revision of the document!
copy data from input pin to output pin - example ws8212 data stream
void loop() {
uint64_t cnt = 0;
register uint32_t cnt2 = 0;
//disableCore0WDT();
//disableCore1WDT();
portDISABLE_INTERRUPTS();
//disableCore0WDT();
//disableCore1WDT();
gpio_num_t pin = (gpio_num_t)(25 & 0x1F);
int state=0;
register int v1 = digitalRead(25);
register int p1 = digitalRead(25);
for (;;) {
v1 = (GPIO_REG_READ(GPIO_IN_REG) >> pin) & 1U;
if (v1 != p1)
{
digitalWrite(27, v1);
p1 = v1;
}
cnt2 ++;
if (cnt2 % 1000000 == 0) {
//Serial.println("loop");
portENABLE_INTERRUPTS();
portDISABLE_INTERRUPTS();
}
}
}
esp32/direct_pin_data_copy.1569520069.txt.gz · Last modified: by aistis
