الفرق بين المراجعتين لصفحة: «Arduino/serial/begin»

من موسوعة حسوب
أنشأ الصفحة ب'تضبط الدالة <code>begin()‎</code> معدل تدفق البتات في الثانية الواحدة (baud) لعملية نقل البيانات عبر الا...'
 
طلا ملخص تعديل
 
(2 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
تضبط الدالة <code>begin()‎</code> معدل تدفق البتات في الثانية الواحدة (baud) لعملية نقل البيانات عبر الاتصال التسلسلي. من أجل التواصل مع الحاسوب، استعمال أحد معدلات تدفق البيانات التالية: 300، أو 600، أو 1200، أو 2400، أو 4800، أو 9600، 14400، أو 19200، أو 28800، أو 38400، 57600، 115200. مع ذلك، تستطيع تحديد معدلات نقل أخرى للتواصل عبر الرجلين 0 و 1 مع جهاز أو عنصر يتطلب معدل تدفق بيانات محدَّد.
<noinclude>{{DISPLAYTITLE:التابع <code>Serial.begin()‎</code> في أردوينو}}</noinclude>
 
يضبط التابع <code>begin()‎</code> معدل تدفق البتات في الثانية الواحدة (baud) لبدء عملية نقل البيانات عبر الاتصال التسلسلي. من أجل التواصل مع الحاسوب، استعمل أحد معدلات تدفق البيانات التالية: 300، أو 600، أو 1200، أو 2400، أو 4800، أو 9600، أو 14400، أو 19200، أو 28800، أو 38400، أو 57600، أو 115200. مع ذلك، تستطيع تحديد معدلات نقل أخرى للتواصل عبر الرجلين 0 و 1 مع جهاز أو عنصر يتطلب معدل تدفق بيانات محدَّد غير تلك المذكورة.
يضبط المعامل الثاني الاختيار المُمرَّر إلى الدالة <code>begin()‎</code> بتات البيانات، التماثل (parity)، والإيقاف. القيمة الافتراضية هي 8 بتات للبيانات وبت للإيقاف وعدم وجود بتات للتحقق من التماثل.


يضبط المعامل الثاني الاختيار المُمرَّر إلى التابع <code>begin()‎</code> بتات البيانات، التماثل (parity)، والإيقاف. القيمة الافتراضية هي 8 بتات للبيانات وبت للإيقاف وعدم وجود بتات للتحقق من التماثل.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="arduino">
<syntaxhighlight lang="arduino">
سطر 16: سطر 16:
Serial3.begin(speed, config)
Serial3.begin(speed, config)
</syntaxhighlight>
</syntaxhighlight>
 
==المعاملات==
== المعاملات ==
===<code>speed</code>===
 
=== <code>speed</code> ===
[[Arduino/long|عدد طويل]] يحدِّد معدل تدفق البتات في كل ثانية (baud).
[[Arduino/long|عدد طويل]] يحدِّد معدل تدفق البتات في كل ثانية (baud).
 
===<code>config</code>===
=== <code>config</code> ===
يحدِّد عدد بتات البيانات والتحقق من التماثل (parity) والإيقاف. القيم المتاحة التي يمكن استعمالها هي:
يحدِّد عدد بتات البيانات والتحقق من التماثل (parity) والإيقاف. القيم المتاحة التي يمكن استعمالها هي:
* <code>SERIAL_5N1</code>
*<code>SERIAL_5N1</code>
* <code>SERIAL_6N1</code>
*<code>SERIAL_6N1</code>
* <code>SERIAL_7N1</code>
*<code>SERIAL_7N1</code>
* <code>SERIAL_8N1</code> (القيمة الافتراضية)
*<code>SERIAL_8N1</code> (القيمة الافتراضية)
* <code>SERIAL_5N2</code>
*<code>SERIAL_5N2</code>
* <code>SERIAL_6N2</code>
*<code>SERIAL_6N2</code>
* <code>SERIAL_7N2</code>
*<code>SERIAL_7N2</code>
* <code>SERIAL_8N2</code>
*<code>SERIAL_8N2</code>
* <code>SERIAL_5E1</code>
*<code>SERIAL_5E1</code>
* <code>SERIAL_6E1</code>
*<code>SERIAL_6E1</code>
* <code>SERIAL_7E1</code>
*<code>SERIAL_7E1</code>
* <code>SERIAL_8E1</code>
*<code>SERIAL_8E1</code>
* <code>SERIAL_5E2</code>
*<code>SERIAL_5E2</code>
* <code>SERIAL_6E2</code>
*<code>SERIAL_6E2</code>
* <code>SERIAL_7E2</code>
*<code>SERIAL_7E2</code>
* <code>SERIAL_8E2</code>
*<code>SERIAL_8E2</code>
* <code>SERIAL_5O1</code>
*<code>SERIAL_5O1</code>
* <code>SERIAL_6O1</code>
*<code>SERIAL_6O1</code>
* <code>SERIAL_7O1</code>
*<code>SERIAL_7O1</code>
* <code>SERIAL_8O1</code>
*<code>SERIAL_8O1</code>
* <code>SERIAL_5O2</code>
*<code>SERIAL_5O2</code>
* <code>SERIAL_6O2</code>
*<code>SERIAL_6O2</code>
* <code>SERIAL_7O2</code>
*<code>SERIAL_7O2</code>
* <code>SERIAL_8O2</code>
*<code>SERIAL_8O2</code>
 
==القيم المعادة==
==القيم المعادة==
لا يعاد أي شيء.
لا يعاد أي شيء.
==أمثلة==
==أمثلة==
مثال على استعمال الدالة <code>begin()‎</code>  لتهيئة واجهة التخاطب التسلسلية وبدئها:<syntaxhighlight lang="arduino">
مثال على استعمال التابع <code>begin()‎</code>  لتهيئة واجهة التخاطب التسلسلية وبدئها:<syntaxhighlight lang="arduino">
void setup() {
void setup() {
     Serial.begin(9600); // فتح منفذ الاتصال التسلسلي وضبط معدل تدفق البيانات إلى 9600 بت/ثا  
     Serial.begin(9600); // فتح منفذ الاتصال التسلسلي وضبط معدل تدفق البيانات إلى 9600 بت/ثا  
سطر 79: سطر 74:
</syntaxhighlight>
</syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
*التابع <code>[[Arduino/serial/end|end()‎]]</code>: يعطِّل الاتصال التسلسلي المفتوح محرِّرةً بذلك الرجل 0 (RX) والرجل 1 (TX) لتصبح قابلةً للاستعمال كدخل أو خرج رقمي.
*التابع <code>[[Arduino/serial/find|find()‎]]</code>: يتحقَّق من وجود السلسلة النصية المُمرَّرة إليه ضمن بيانات ذاكرة التخزين المؤقتة للاتصال التسلسلي.
*التابع <code>[[Arduino/serial/flush|flush()‎]]</code>: ينتظر اكتمال عملية نقل البيانات المرسلة عبر الاتصال التسلسلي
*التابع <code>[[Arduino/serial/parseint|parseInt()‎]]</code>: يعيد أول [[Arduino/int|عدد صحيح]] صالح من مخزَّن الاتصال التسلسلي المؤقت.
*التابع <code>[[Arduino/serial/peek|peek()‎]]</code>: يعيد البايت (المحرف) التالي من البيانات المستلمة عبر الاتصال التسلسلي دون حذفه من المخزَّن الداخلي المؤقت للاتصال التسلسلي.
*التابع <code>[[Arduino/serial/print|print()‎]]</code>: يطبع البيانات المُمرَّرة إليها على منفذ الاتصال التسلسلي بترميز ASCII (أي نص يستطيع الأشخاص الآخرين قراءته). 
*التابع <code>[[Arduino/serial/read|read()‎]]</code>: يقرأ البيانات المستلمة عبر الاتصال التسلسلي.
*التابع <code>[[Arduino/serial/settimeout|setTimeout()‎]]</code>: يضبط المهلة الزمنية القصوى بالميلي ثانية لانتظار وصول البيانات من منفذ الاتصال التسلسلي.
*التابع <code>[[Arduino/serial/write|write()‎]]</code>: يكتب بيانات ثنائية على منفذ الاتصال التسلسلي.
*التابع <code>[[Arduino/serial/serialevent|serialEvent()‎]]</code>: يُستدعَى عندما يكون هنالك بيانات متاحة للقراءة عبر منفذ الاتصال التسلسلي.
==مصادر==
==مصادر==
*[https://www.arduino.cc/reference/en/language/functions/communication/serial/begin/ صفحة الدالة Serial.begin()‎ في توثيق أردوينو الرسمي.]
*[https://www.arduino.cc/reference/en/language/functions/communication/serial/begin/ صفحة التابع Serial.begin()‎ في توثيق أردوينو الرسمي.]
[[تصنيف: Arduino]]
[[تصنيف: Arduino Method]]
[[تصنيف: Arduino Communication]]
[[تصنيف: Arduino Serial]]

المراجعة الحالية بتاريخ 17:56، 6 نوفمبر 2018

يضبط التابع begin()‎ معدل تدفق البتات في الثانية الواحدة (baud) لبدء عملية نقل البيانات عبر الاتصال التسلسلي. من أجل التواصل مع الحاسوب، استعمل أحد معدلات تدفق البيانات التالية: 300، أو 600، أو 1200، أو 2400، أو 4800، أو 9600، أو 14400، أو 19200، أو 28800، أو 38400، أو 57600، أو 115200. مع ذلك، تستطيع تحديد معدلات نقل أخرى للتواصل عبر الرجلين 0 و 1 مع جهاز أو عنصر يتطلب معدل تدفق بيانات محدَّد غير تلك المذكورة.

يضبط المعامل الثاني الاختيار المُمرَّر إلى التابع begin()‎ بتات البيانات، التماثل (parity)، والإيقاف. القيمة الافتراضية هي 8 بتات للبيانات وبت للإيقاف وعدم وجود بتات للتحقق من التماثل.

البنية العامة

Serial.begin(speed) 
Serial.begin(speed, config)

// فقط Mega لوحات أردوينو
Serial1.begin(speed)
Serial2.begin(speed)
Serial3.begin(speed)
Serial1.begin(speed, config)
Serial2.begin(speed, config)
Serial3.begin(speed, config)

المعاملات

speed

عدد طويل يحدِّد معدل تدفق البتات في كل ثانية (baud).

config

يحدِّد عدد بتات البيانات والتحقق من التماثل (parity) والإيقاف. القيم المتاحة التي يمكن استعمالها هي:

  • SERIAL_5N1
  • SERIAL_6N1
  • SERIAL_7N1
  • SERIAL_8N1 (القيمة الافتراضية)
  • SERIAL_5N2
  • SERIAL_6N2
  • SERIAL_7N2
  • SERIAL_8N2
  • SERIAL_5E1
  • SERIAL_6E1
  • SERIAL_7E1
  • SERIAL_8E1
  • SERIAL_5E2
  • SERIAL_6E2
  • SERIAL_7E2
  • SERIAL_8E2
  • SERIAL_5O1
  • SERIAL_6O1
  • SERIAL_7O1
  • SERIAL_8O1
  • SERIAL_5O2
  • SERIAL_6O2
  • SERIAL_7O2
  • SERIAL_8O2

القيم المعادة

لا يعاد أي شيء.

أمثلة

مثال على استعمال التابع begin()‎ لتهيئة واجهة التخاطب التسلسلية وبدئها:

void setup() {
    Serial.begin(9600); // فتح منفذ الاتصال التسلسلي وضبط معدل تدفق البيانات إلى 9600 بت/ثا 
}

void loop() {}

المثال التالي خاص بلوحة أردوينو Mega. يعمل المثال على تهيئة منافذ الاتصال التسلسلية الأربعة التي تملكها اللوحة:

// أربعة منافذ اتصال تسلسلية Mega تملك لوحة أردوينو
// (Serial, Serial1, Serial2, Serial3),
// يمكن أن يكون لكل واحد منها معدل تدفق بيانات مختلق عن الآخر

void setup(){
  Serial.begin(9600);
  Serial1.begin(38400);
  Serial2.begin(19200);
  Serial3.begin(4800);

  Serial.println("Hello Computer");
  Serial1.println("Hello Serial 1");
  Serial2.println("Hello Serial 2");
  Serial3.println("Hello Serial 3");
}
void loop() {}

انظر أيضًا

  • التابع end()‎: يعطِّل الاتصال التسلسلي المفتوح محرِّرةً بذلك الرجل 0 (RX) والرجل 1 (TX) لتصبح قابلةً للاستعمال كدخل أو خرج رقمي.
  • التابع find()‎: يتحقَّق من وجود السلسلة النصية المُمرَّرة إليه ضمن بيانات ذاكرة التخزين المؤقتة للاتصال التسلسلي.
  • التابع flush()‎: ينتظر اكتمال عملية نقل البيانات المرسلة عبر الاتصال التسلسلي
  • التابع parseInt()‎: يعيد أول عدد صحيح صالح من مخزَّن الاتصال التسلسلي المؤقت.
  • التابع peek()‎: يعيد البايت (المحرف) التالي من البيانات المستلمة عبر الاتصال التسلسلي دون حذفه من المخزَّن الداخلي المؤقت للاتصال التسلسلي.
  • التابع print()‎: يطبع البيانات المُمرَّرة إليها على منفذ الاتصال التسلسلي بترميز ASCII (أي نص يستطيع الأشخاص الآخرين قراءته). 
  • التابع read()‎: يقرأ البيانات المستلمة عبر الاتصال التسلسلي.
  • التابع setTimeout()‎: يضبط المهلة الزمنية القصوى بالميلي ثانية لانتظار وصول البيانات من منفذ الاتصال التسلسلي.
  • التابع write()‎: يكتب بيانات ثنائية على منفذ الاتصال التسلسلي.
  • التابع serialEvent()‎: يُستدعَى عندما يكون هنالك بيانات متاحة للقراءة عبر منفذ الاتصال التسلسلي.

مصادر