3.30. الخلاصة¶
لقد تجوّلت عبر أجزاء الوحدة machine التي تظهر في اللحظة التي يتحدث فيها برنامج نصي إلى العالم الفيزيائي:
خرج ودخل GPIO -- قيادة LED أو ترانزستور، وقراءة زر أو مفتاح حد. اللبنات الأساسية التي يرتكز عليها كل مشروع عتادي، مع مقاومات الرفع والسحب وإزالة الارتداد البرمجية للقراءات التي يجب أن تكون موثوقة.
الإشارات التماثلية -- قراءة مستشعر أو مقاومة متغيرة أو أي جهد آخر متغير باستمرار باستخدام ADC؛ وعند عدم توفر DAC، إنتاج جهد مُتحكَّم به باستخدام PWM ومرشح RC تمرير منخفض.
تطبيقات PWM -- تعتيم LED، وتغيير سرعة محرك تيار مستمر عبر جسر H، وتموضع محرك سيرفو. موجة واحدة، ومُتوسِّطات فيزيائية مختلفة (العين، ومحاثة المحرك) وتأطيرات مختلفة (دورة العمل مقابل عرض النبضة المطلق).
النواقل التسلسلية --
UARTللروابط غير المتزامنة من نقطة إلى نقطة؛ وSPIللطرفيات السريعة على اللوحة مع اختيار شريحة واحد لكل جهاز؛ وI2Cلنواقل المستشعرات البطيئة متعددة الأجهزة على سلكين فقط؛ وCANللنواقل الميدانية القوية متعددة الأسياد بين الوحدات.أنماط الإنتاج -- مؤقت مراقبة للتعافي من حالات التعليق، وأوضاع السكون لإطالة عمر البطارية. ويصبح كلاهما ضروريًا في أول مرة تغادر فيها الكاميرا المنضدة.
هذا يكفي لبناء حلقة استشعر -- خطّط -- تصرّف لجهاز مدمج: اقرأ المستشعرات عبر I2C / SPI / ADC، واتخذ القرارات في Python، وقُد المشغّلات عبر PWM / GPIO، وأبلغ عن الحالة عبر UART / CAN، ونم بين الأحداث.
3.30.1. استخدام هذا المرجع لاحقًا¶
تعامل مع فصول العتاد كمواد مرجعية، لا كقراءة لمرة واحدة. تسرد صفحة مرجع الوحدة machine كل صنف وطريقة في مكان واحد عندما يكون السؤال هو مجرد "ما الاسم الدقيق لهذا الاستدعاء". أما الصفحات الخاصة بكل فصل هنا فهي المكان الذي تعود إليه للحصول على رؤية "أي مقبض يفعل ماذا، ولماذا" التي لا تقدمها المواد المرجعية بمفردها.
3.30.2. إلى أين تذهب من هنا¶
مستشعرات الرؤية هي الموضوع الرئيسي التالي. حيث علّمك هذا القسم الطرفيات العامة -- Pin وADC وPWM وUART وSPI وI2C وCAN -- التي تظهر على أي MCU تقريبًا، فإن القسم التالي يُعلّمك الطرفية المميِّزة للكاميرا بعمق كبير: مستشعر الصورة، والسلسلة الطويلة من البصريات والسيليكون ومعالجة الإشارة بين الفوتونات التي تصطدم بالزجاج ومخزن مؤقت من البكسلات في RAM. تنتقل مجموعة الأدوات إلى الوحدتين csi وimage، لكن كل ما تعلمته عن قيادة GPIO، والتحدث عبر I2C، واستخدام PWM ينتقل معك دون تغيير -- فالومضات والمشغّلات ودروع المستشعرات كلها تستخدم النواقل نفسها التي غطيتها للتو.