مفتاح الحد#
مقدمة#
يتم استخدام فئة الحد limit مع مفتاح الحد، وهو مستشعر رقمي صغير يكتشف التلامس المادي مع جسم ما.

مُنشئ الفئة#
limit(
triport::port &port);
مُدمِّر الفئة#
يقوم بتدمير الكائن ذي الحد الأقصى limit ويحرر الموارد المرتبطة به.
virtual ~limit();
حدود#
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
المنفذ ذو الثلاثة أسلاك الذي يتصل به مفتاح الحد، مكتوبًا على النحو التالي: |
مثال#
// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);
الدوال الأعضاء#
تتضمن فئة limit الدوال الأعضاء التالية:
pressing– إرجاع ما إذا كان يتم الضغط على مفتاح الحد.pressed– يسجل وظيفة ليتم استدعاؤها كلما تم الضغط على مفتاح الحد.released– يسجل وظيفة ليتم استدعاؤها كلما تم تحرير مفتاح الحد.
قبل استدعاء أي من الدوال الأعضاء ذات الحد limit ، يجب إنشاء نسخة ذات حد limit ، كما هو موضح أدناه:
/* This constructor is required when using VS Code.
Limit Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a limit instance in Port A
limit LimitSwitchA = limit(Brain.ThreeWirePort.A);
pressing#
تُعيد هذه الدالة ما إذا كان مفتاح الحد مضغوطًا حاليًا. ويمكن استخدامها للتحقق مما إذا كان الروبوت يصطدم بأجسام أخرى.
Available Functionsint32_t pressing();
لا تقبل هذه الدالة أي معلمات.
Return Valuesيُرجع int32_t يشير إلى ما إذا كان يتم الضغط على مفتاح الحد.
1— يتم الضغط على مفتاح الحد.0— مفتاح الحد غير مضغوط.
pressed#
يسجل وظيفة ليتم استدعاؤها عند الضغط على مفتاح الحد.
Available Functionsvoid pressed(
void (* callback)(void) );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
مؤشر إلى دالة سيتم استدعاؤها عند الضغط على مفتاح الحد. |
هذه الدالة لا تُرجع قيمة.
Examplesعرّف دالة الاستدعاء (خارج نطاق
int main())void switchPressed() { // The Brain will print that the Limit Switch was pressed // on the Brain's screen. Brain.Screen.print("switch pressed"); }قم بتسجيل دالة الاستدعاء داخل الدالة الرئيسية
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run switchPressed when the Limit Switch is pressed. LimitSwitchA.pressed(switchPressed); }
released#
يسجل وظيفة ليتم استدعاؤها عند تحرير مفتاح الحد.
Available Functionsvoid released(
void (* callback)(void) );
المعلمة |
يكتب |
وصف |
|---|---|---|
|
|
مؤشر إلى دالة سيتم استدعاؤها عند تحرير مفتاح الحد. |
هذه الدالة لا تُرجع قيمة.
Examplesعرّف دالة الاستدعاء (خارج نطاق
int main())void switchReleased() { // The Brain will print that the Limit Switch was released // on the Brain's screen. Brain.Screen.print("switch released"); }قم بتسجيل دالة الاستدعاء داخل الدالة الرئيسية
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run switchReleased when the Limit Switch is released. LimitSwitchA.released(switchReleased); }