Arduino Mega Çoklu Seri İletişim
Bazen bir seri port yeterli değil! Birden fazla seri özellikli cihazla iletişim kurmaya çalışırken, aynı zamanda ana seri penceresine geri bilgi gönderirken, birkaç ekstra RX / TX bağlantı noktası hoş bir şey olabilir. Bu örnek, Arduino ve Genuino Mega’nın 3 yardımcı seri portlarından birini kullanarak, bu bağlantıda okunan gelen verileri ana TX hattına ve daha sonra da görüntülemek için ana seri pencereye yönlendirir.
Donanım
- Arduino veya Genuino Mega Kart
- Seri etkinleştirilmiş cihaz (örneğin bir Xbee Radyo, bir Bluetooth modülü veya RFID okuyucu veya başka bir kart).
Devre
Bu örnek için kullanmayı seçmiş olduğunuz seri özellikli aygıtın veri sayfasını kontrol ettikten sonra, her ikisinin de uygun şekilde kablolandığından ve elektrik olduğundan emin olun. Cihazınızın RX pin ve TX pinlerini aşağıdaki şemada gösterildiği gibi Mega’nuzun TX1 ve RX1 pinlerine bağlayın.
Seri iletişimini sağlamak için Mega’nizin bilgisayarınıza USB üzerinden bağlı olduğundan emin olun.
Kod
Bu taslak, seri olarak etkinleştirilmiş aygıtınızı bağladığınızın TX1 ve RX1’e bağlı olduğunu varsayar.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | /* Çoklu Seri testi Ana seri porttan alır, diğerlerine gönderir. Seri port 1'den aldığı, ana seriye (Seri 0) gönderir. Bu örnek sadece Arduino Mega, Due, Zero vb. Gibi birden fazla seriye sahip panolarla çalışır. Devre: - Seri portuna bağlı herhangi bir seri cihaz 1 - Seri port Seri Seri açık 0 oluşturuldu 30 Ara 2008 20 Mayıs 2012 tarihinde değiştirildi Tom Igoe & Jed Roach tarafından 27 Kas 2015 değiştirildi Arturo Guadalupi tarafından Bu örnek kod kamu malıdır. */ void setup() { // her iki seri bağlantı noktasını başlatır: Serial.begin(9600); Serial1.begin(9600); } void loop() { // port 1'den oku, port 0'a gönder: if (Serial1.available()) { int inByte = Serial1.read(); Serial.write(inByte); } // port 0'dan oku, port 1'e gönder: if (Serial.available()) { int inByte = Serial.read(); Serial1.write(inByte); } } |
Kaynak:arduino.cc