Экспериментируя с ногодрыгом выяснил что максимальная скорость переключения портов:
GPIO_OUT = 1 << 13; // high gpio13
// 0x6000035C(GPIO_PIN13) 1: sigma-delta; 0: GPIO_DATA
GPIO_PIN13 = 1; // low
GPIO_PIN13 = 0; // high
Меня особенно сильно интересует максимально быстрое считывание со входа.
- digitalWrite(arduino) ~ 1.1 MHz.
- непосредственно через регистр 0x60000300(GPIO_OUT) ~ 1.8 MHz.
- тоже самое и через 0x60000304/ 0x60000308 ~ 1.8 MHz.
GPIO_OUT = 1 << 13; // high gpio13
// 0x6000035C(GPIO_PIN13) 1: sigma-delta; 0: GPIO_DATA
GPIO_PIN13 = 1; // low
GPIO_PIN13 = 0; // high
- Так получается ~ 5.7 MHz.
Меня особенно сильно интересует максимально быстрое считывание со входа.