Serial.print () مقابل Serial.println () في Arduino

Serial Print Mqabl Serial Println Fy Arduino



Arduino هي لوحة متحكم دقيقة شائعة الاستخدام لمشاريع DIY ، والروبوتات ، وأجهزة إنترنت الأشياء. تتمثل إحدى الميزات الأساسية في Arduino في تبادل البيانات مع أجهزة الكمبيوتر عبر الاتصال التسلسلي.

Serial.print () و Serial.println () هما من أكثر الأوامر استخدامًا للاتصال التسلسلي في Arduino. ستغطي هذه المقالة الاختلافات بين Serial.print () و Serial.println () وكيف تؤثر على مشروع Arduino الخاص بك.

جدول المحتويات







ما هو الاتصال التسلسلي

قبل أن نتعمق في الاختلافات بين Serial.print () و Serial.println () ، دعنا نفهم أولاً ماذا الاتصال التسلسلي يكون. الاتصال التسلسلي هي عملية إرسال واستقبال البيانات. باستخدام Arduino هذا ، يمكن نقل بت واحد من البيانات في كل مرة ، باستخدام بروتوكول الاتصال التسلسلي. في Arduino ، نستخدم الكائن التسلسلي لتبادل البيانات مع جهاز كمبيوتر باستخدام منفذ USB.



الاتصال التسلسلي ضروري لتصحيح ومراقبة سلوك مشروع Arduino. يمكنك استخدامه لطباعة قراءات أجهزة الاستشعار ، أو رمز التصحيح ، أو عرض الرسائل على شاشة الكمبيوتر.



Serial.print ()

Serial.print () هي وظيفة ترسل البيانات إلى المنفذ التسلسلي في دفق مستمر. يسمح لك بإرسال البيانات كسلسلة أو حرف أو قيمة عددية. على سبيل المثال ، يرسل الرمز المحدد سلسلة ' مرحبا بالعالم! 'إلى منفذ Arduino التسلسلي:





المسلسل ( 'مرحبا بالعالم!' ) ؛

Serial.print () لا تضيف أي فواصل أسطر أو أحرف رجوع في نهاية البيانات ، لذلك تتم طباعة البيانات بشكل مستمر على نفس السطر.

Serial.println ()

Serial.println () مشابه ل Serial.print () ، لكنه يضيف حرف فاصل أسطر (\ n) في نهاية البيانات. هذا يبين لنا ذلك في كل مرة Serial.println () يتم استدعاء الوظيفة ، سيبدأ بيان الطباعة التالي في سطر جديد. على سبيل المثال ، يرسل الرمز المحدد السلسلة ' مرحبا بالعالم! 'ويضيف فاصل أسطر:



المسلسل. println ( 'مرحبا بالعالم!' ) ؛

سيؤدي هذا إلى طباعة ' مرحبا بالعالم! 'على المحطة التسلسلية لاردوينو.

الفرق بين Serial.print () و Serial.println ()

الفرق الأساسي بين Serial.print () و Serial.println () هل هذا Serial.print () يرسل البيانات في دفق مستمر ، بينما Serial.println () يرسل البيانات مع فاصل أسطر في النهاية.

سنقوم الآن بتغطية رمز المثال الذي يشرح هاتين الوظيفتين.

Serial.print () مثال

فيما يلي الكود الذي يشرح استخدام Serial.print () :

الإعداد باطل ( ) {
المسلسل ( 9600 ) ؛ // تهيئة الاتصال التسلسلي في 9600 معدل الباود
}

حلقة فارغة ( ) {
int randomValue = عشوائي ( 0 و 1023 ) ؛ // توليد قيمة عشوائية بين 0 و 1023

المسلسل ( 'قيمة عشوائية:' ) ؛ // اطبع الملصق
المسلسل ( عشوائي قيمة ) ؛ // اطبع القيمة العشوائية في سطر جديد

تأخير ( 2000 ) ؛ // انتظر ل 500 مللي ثانية قبل الطباعة مرة أخرى
}

يقوم هذا الرمز بتهيئة الاتصال التسلسلي بمعدل باود 9600 في وظيفة setup (). تقوم الدالة loop () بعد ذلك بإنشاء قيمة عدد صحيح عشوائي بين 0 و 1023 باستخدام وظيفة random () وتخزينها في اسم المتغير عشوائي قيمة .

ال Serial.print () ثم يتم استخدام الوظيفة لطباعة الملصق ' قيمة عشوائية: 'إلى الشاشة التسلسلية ، متبوعة بالقيمة العشوائية الفعلية ، والتي تتم طباعتها على نفس السطر بدون استخدام حرف سطر جديد Serial.print () .

ال تأخير() يتم استخدام الوظيفة لإيقاف تنفيذ الحلقة مؤقتًا لمدة 2000 مللي ثانية (ثانيتان).

انتاج |
في الإخراج ، يمكننا أن نرى أن جميع القيم تتم طباعتها في سطر واحد دون أي فاصل أسطر.

Serial.println () مثال

يوضح الكود المعطى استخدام امتداد Serial.println () تعمل في اردوينو.

الإعداد باطل ( ) {
المسلسل ( 9600 ) ؛ // تهيئة الاتصال التسلسلي في 9600 معدل الباود
}

حلقة فارغة ( ) {
int randomValue = عشوائي ( 0 و 1023 ) ؛ // توليد قيمة عشوائية بين 0 و 1023

المسلسل ( 'قيمة عشوائية:' ) ؛ // اطبع الملصق
المسلسل. println ( عشوائي قيمة ) ؛ // اطبع القيمة العشوائية في سطر جديد

تأخير ( 2000 ) ؛ // انتظر ل 500 مللي ثانية قبل الطباعة مرة أخرى
}

رمز Serial.println () مشابه لما ورد أعلاه Serial.print () شفرة. الاختلاف الوحيد هنا هو القيم العشوائية التي يتم إنشاؤها وطباعتها مع فاصل أسطر مفقود في ملف Serial.print () شفرة.

انتاج |
تتم طباعة جميع القيم في سطر جديد كما استخدمنا Serial.print () بدلاً من Serial.println () :

خاتمة

الاتصال التسلسلي هو جانب أساسي من جوانب برمجة Arduino. ال Serial.print () و Serial.println () الوظائف مفيدة لعرض البيانات على محطة Arduino التسلسلية. يمكن أن يساعدك فهم الفرق بينهما واستخدامها بشكل مناسب في تصحيح أخطاء التعليمات البرمجية الخاصة بك والتواصل مع الأجهزة الخارجية.