آردینو دارای پشتیبانی داخلی برای ارتباطات سریال روی پین های 0 و 1 است؛ اما چه می شود که نیازمند پورت سریال می شوید؟ کتابخانه نرم افزار سریال طوری توسعه داده شده است که اجازه می دهد ارتباطات سریال روی دیگر پین های دیجیتال از برد آردینو شما واقع شوند. از نرم افزار برای تکرار عملکرد سخت افزاری خطوط Rx و Tx استفاده کنید.این می تواند بسیار مفید باشد وقتی که نیاز به ارتباط به دو دستگاه سریال فعال مطرح می شود، یا تنها ارتباط با یک دستگاه وقتی که پورت اصلی سریال با هدف اشکال زدایی باز است. در مثال زیر ، پین های دیجیتال 10 و 11 روی آردینو به عنوان Rx و Tx مجازی استفاده شده اند. پین Rx مجازی برای شنیدن هرچیزی که قرار است از طریق خط اصلی سریال بیاید، و سپس انعکاس داده ها برای خارج کردن از خط TX مجازی، تنظیم شده است. در مقابل، هر چیزی که بر روی Rx مجازی دریافت شده است؛ فرستاده شده از سخت افزار Tx است.
سخت افزار مورد نیاز
برد آردینو
مدار
مداری برای این مثال وجود ندارد. از اتصال آردینو خود با کامپیوتر از طریق USB برای فعال سازی ارتباط سریال، اطمینال حاصل کنید.
![برای دیدن سایز بزرگ روی عکس کلیک کنید
نام: Arduino_bb.jpg
مشاهده: 109
حجم: 8.6 کیلو بایت](http://forum.arduino.ir/attachment.php?attachmentid=45&d=1364370853&thumb=1)
کد:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup()
{
// باز کردن ارتباط سریال و انتظار برای باز شدن پورت:
Serial.begin(57600);
while (!Serial) {
; // Leonardo انتظار پورت سریال برای اتصال ، تنها موردنیاز برد
}
Serial.println("Goodnight moon!");
// SoftwareSerial تنظیم نرخ داده برای پورت
mySerial.begin(4800);
mySerial.println("Hello, world?");
}
void loop() // اجرای پی در پی
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}
لینک سایت:Arduino - SoftwareSerialExample