Прямая манипуляция с портом
В Arduino я могу вводить и выводить по портам, таким образом
PORTD = B10010111;
byte K = PORTD;
Есть ли эквивалентный метод для ESP32?
Я проектирую линию задержки для видео, с этими спецификациями:
- Используйте CORE0 ESP32, чтобы прочитать оцифрованное значение биполярного видеосигнала при +/- 1 В пост. Тока из 8-разрядного параллельного биполярного АЦП @20 МГц и записать 8-разрядное значение в ОЗУ ESP32.
- Используйте CORE1 ESP32 после указанной задержки для чтения ОЗУ и вывода содержимого на ЦАП с частотой 20 МГц.
- Используйте быстрый OP-AMP для воссоздания исходного биполярного видеосигнала.
Моя проблема:
- Решения, которые я видел, состоят в том, чтобы передавать входной статус каждого отдельного контакта в регистр, а затем использовать регистр для любой арифметики. Это увеличивает количество вычислений на бит до такой степени, что у меня больше не осталось бы возможности передавать данные на 20 МГц для процессора, работающего на 240 МГц.
- Есть ли прямой метод манипулирования портами, который позволяет мне читать / записывать весь порт за раз, экономя мое драгоценное время вычислений?