ESP32 S3 için Software UART Kütüphanesi Arıyorum

Başlatan berkay_91, 25 Mayıs 2023, 10:27:28

berkay_91

Merhaba, ESP32-S3-Wroom-1U modülü ile RS-485 haberleşmesi yapmam gerekiyor, mevcut olan hardware UART'ı başka bir amaç için kullanıyorum, datasheetinden bulduğum şematiğe göre sadece bir adet hardware UART var. Tavsiye edebileceğiniz bir software UART kütüphanesi var mı?

https://www.mouser.com.tr/ProductDetail/Espressif-Systems/ESP32-S3-WROOM-1U-N16R8?qs=Li%252BoUPsLEns6V0Pr5KRJtw%3D%3D



hasankara


berkay_91

Rica etsem kullandığım modül üzerinden UART1 ve UART2 bacaklarını gösterir misiniz?



yucatar

UART0
RX -> 36 pin
TX -> 37 pin

UART1
RX -> 11 pin
TX -> 10 pin

3 uart var diyor ama ben üçüncüyü bulamadım. :du:

mr.engineer

Alıntı yapılan: berkay_91 - 25 Mayıs 2023, 16:38:25Rica etsem kullandığım modül üzerinden UART1 ve UART2 bacaklarını gösterir misiniz?




ESP32S2 kullanmıştım en son onda da 2 tane UART vardı ama pinler sabit değil. UART'ın RX/TX bağlantısını istediğiniz pinlere map edebiliyorsunuz. S3'de aynısı geçerli mi bilmiyorum

hasankara

https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_en.pdf

17. sayfadan itibaren tablolar belirtilmiş. Bende uart2 için bulamadım. Ancak uart için denememiş olmakla birlikte, iomux ile istenilen pinlere yönlendirme yapılabiliyor. Daha önce spi için rastgele pinlere clk data vermeyi denemiştim. Sadece mux belirli bir clk kısıtlaması getiriyor. Normalde max 80mhz çıkabilecekken 20 yada 40 mhz gibi limitleme gelebiliyor.

berkay_91

Alıntı yapılan: mr.engineer - 25 Mayıs 2023, 23:09:46ESP32S2 kullanmıştım en son onda da 2 tane UART vardı ama pinler sabit değil. UART'ın RX/TX bağlantısını istediğiniz pinlere map edebiliyorsunuz. S3'de aynısı geçerli mi bilmiyorum

mapping ile ilgili örnek kod atar mısınız?

berkay_91

#include <HardwareSerial.h>

#define rx 1
#define tx 2

void setup() 
{
  Serial2.begin(9600, SERIAL_8N1, rx, tx);
}

void loop()
 {
  Serial2.println(digitalRead(4));
  Serial2.print(millis());
  delay(1000);
}

bu şekilde ESP32-S3 için harhangi iki pini RX ve TX olarak atıyabiliyoruz