-
ESP32S3 supports These are the relevant pages in the document.
I went ahead and tried to implement it directly with the registers and asm code but without success. This is what I did:
Then to set the bit I used (as explained in forums and in esp-hal code)
Note that I could not get the |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 4 replies
-
I managed to solve this. |
Beta Was this translation helpful? Give feedback.
-
Just for completeness: More chips support dedicated GPIO (S2) - on our RISCV chips it's supported via the cpu_gpio_* CSRs |
Beta Was this translation helpful? Give feedback.
-
I guess it's because in Rust we use LLVM while ESP-IDF uses GCC - maybe @MabezDev knows more details? |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
I managed to solve this.
The issue was with the asm code which for some reason doesn't work, don't know how it work in esp-idf.
I managed to get it to work with the mask command:
unsafe { core::arch::asm!("ee.wr_mask_gpio_out {0}, {1}", in(reg) 0x00, in(reg) 0x01) };
I just hope it's as fast as the non masked version.