الفرق بين المراجعتين لصفحة: «Arduino/serial/begin»
جميل-بيلوني (نقاش | مساهمات) أنشأ الصفحة ب'تضبط الدالة <code>begin()</code> معدل تدفق البتات في الثانية الواحدة (baud) لعملية نقل البيانات عبر الا...' |
جميل-بيلوني (نقاش | مساهمات) إضافة محتويات الصفحة. |
||
سطر 1: | سطر 1: | ||
تضبط الدالة <code>begin()</code> معدل تدفق البتات في الثانية الواحدة (baud) | <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"> | ||
سطر 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 Function]] | |||
[[تصنيف: Arduino Communication]] | |||
[[تصنيف: Arduino Serial]] |
مراجعة 09:58، 22 أكتوبر 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()
: تُستدعَى عندما يكون هنالك بيانات متاحة للقراءة عبر منفذ الاتصال التسلسلي.