تطوير خادم TELNET على أساس W5500 و ATMEGA8

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

تم تصميم إحدى الوحدات - W5500 - لتصنيع الهياكل الإلكترونية التي سيتم توصيلها بالإنترنت. في هذه الحالة ، في معظم الأحيان ، يعني التحكم عن بعد في هيكلها. على سبيل المثال ، يمكن أن يكون "منزلًا ذكيًا" وروبوتًا وما شابه. المشروع الأكثر تافهًا (باستثناء Hello world) هو الدمج البعيد لمصابيح LED من خلال متصفح الويب (الشكل 1). إذا تم توصيل مفاتيح الترانزستور والمرحلات بدلاً من المصابيح ، فيمكن تبديل الأحمال الأكثر قوة. وبالتالي ، فإن البرنامج (البرامج الثابتة) لهذا التصميم في جوهره هو خادم ويب يعالج طلبات http من مستخدم بعيد.

التين. 1. إدارة المصابيح من خلال متصفح.

تعتمد وحدة W5500 على شريحة W5500 نفسها مع مجموعة جسمها ، بالإضافة إلى موصل BLS لـ MK عبر SPI وموصل RJ-45 للتوصيل بشبكة كمبيوتر ومنظم جهد خطي لـ 3.3 فولت (الشكل 2).



التين. 2. وحدة W5500.

رقاقة W5500 هي وحدة تحكم كاملة مع معالجة متكاملة لمجموعة كاملة من بروتوكولات الشبكة ، من إيثرنت إلى TCP (الشكل 3). من خلال تنفيذ تصميم يعتمد على هذه الشريحة ، لا يحتاج المبرمج إلى كتابة كود معالجة بروتوكول TCP / IP ، يكفي تنفيذ بروتوكول طبقة التطبيق فقط ، والذي سيتم تضمينه في TCP. في المثال أعلاه (على Arduino) ، يتم استخدام http كبروتوكول للتطبيق.

التين. 3. هيكل شريحة W5500.

قررت دون دراسة Arduino دراسة وثائق شريحة W5500 بالتفصيل وتنفيذ البرنامج بشكل مستقل بناءً على متحكم Atmega8. لن يتضمن هذا البرنامج معالج http. مطلوب لتنفيذ أبسط تبادل البيانات (RAW) عبر بروتوكول TCP باستخدام محطة طرفية بعيدة. ليس من الدقة تمامًا التحدث عن بروتوكول Telnet ، كما يقول عنوان هذه المقالة. لديها ميزات خاصة بها على أساس تبادل المعلومات الإضافية حول معلمات المطاريف. ومع ذلك ، فإن معظم عملاء telnet يدعمون RAW ولا يتطلبون ما سبق. وبالتالي ، لن يتضمن برنامج Atmega8 MK معالج بروتوكول على مستوى التطبيق. ستتعامل فقط مع تهيئة W5500 وإدارة المقبس واستقبال البيانات ونقلها.

التطبيق الرئيسي لهذا التصميم هو إدارة الجهاز من خلال محطة طرفية بعيدة. في هذه الحالة ، يتصل التصميم بالجهاز المُدار عبر واجهة UART (ثلاثة أسلاك GND و TxD و RxD). الإدارة من خلال المحطة هي نهج احترافي كلاسيكي في منطقة معينة في غياب واجهة رسومية. على سبيل المثال ، سطر أوامر Windows أو Linux ، أو طريقة لتكوين جهاز توجيه من خلال محطة طرفية باستخدام بروتوكول Telnet. المثال الأخير يعادل في الواقع الفكرة التي نوقشت في هذه المقالة.

عند تطوير هذا الجهاز أو ذاك ، إذا لزم الأمر ، أتصور التحكم فيه باستخدام أوامر نصية من خلال محطة طرفية متصلة عبر واجهة UART. يمكن أن يكون هذا اتصالًا بجهاز كمبيوتر عادي بمنفذ RS-232 COM عبر شريحة المحول MAX232 أو USB (منفذ COM الظاهري) عبر شريحة PL2303. يمكنك استخدام برنامج HyperTerminal القياسي كمحطة. مع انتشار الهواتف الذكية التي تعمل بنظام Android ، أصبح من السهل الاتصال عبر Bluetooth: تم توصيل وحدة Bluetooth (على سبيل المثال ، HC-06) بواجهة UART للجهاز ، وهاتف ذكي متصل بالوحدة لاسلكيًا. هناك العديد من التطبيقات على الإنترنت التي تنفذ الجهاز عبر البلوتوث. وبالتالي ، يمكنك التحكم في الجهاز من خلال الجهاز الطرفي من هاتف محمول عبر Bluetooth في نطاق قصير. يتيح لك التصميم الذي تمت مناقشته في هذه المقالة تنفيذ التحكم عبر الوحدة الطرفية باستخدام الإنترنت. يمكن أن تكون الوحدة الطرفية هي HyperTerminal القياسي ، الذي يأتي مع Windows XP ، أو يمكنك تشغيل الأداة المساعدة telnet من سطر أوامر Windows والعمل فيه. إذا كنا نتحدث عن هاتف ذكي ، فيمكنك اختيار أحد التطبيقات على Android (هناك أيضًا عدد كبير منها) (الشكل 4).



التين. 4. تطبيقات "محطة TCP" على Google Play.

تحتوي رقاقة W5500 على 8 مقابس مستقلة ، لكل منها ذاكرة لاستلام ونقل المعلومات التي تزيد عن 2 كيلوبايت. الإجمالي ، إجمالي الذاكرة 16 كيلوبايت للاستلام و 16 كيلوبايت لإرسال المعلومات. يتم استخدام هذه المعلمات افتراضيًا ، ولكن إذا لزم الأمر ، في مرحلة تهيئة الشريحة ، يمكن إعادة تخصيص الذاكرة على مآخذ التوصيل. سيستخدم التطبيق الموضح هنا إعدادات الذاكرة الافتراضية ، ويتم تضمين جميع المقابس الثمانية. يتم تعيين الكثير من المعلمات لكل مقبس في مرحلة التهيئة ، أهمها وضع التشغيل ومنفذ TCP. وضع التشغيل لجميع المقابس الثمانية التي نحتاجها هو وضع خادم TCP. يجب تعيين منافذ مختلفة لكل مقبس. أخذت ثمانية منافذ متتالية ، بدءًا ، على سبيل المثال ، من 4000. في مرحلة التهيئة لوحدة W5500 ، يتم تعيين معلمات الشبكة السلكية في برنامج Atmega8 MK: عنوان IP وقناع الشبكة الفرعية وعنوان IP الخاص بالبوابة وحتى عنوان MAC الفعلي. يجب أن تتطابق إعدادات الشبكة في W5500 مع إعدادات الشبكة المنزلية التي يتصل بها. عند الاتصال عن بعد بجهازنا الموصوف ، تشير إعدادات المحطة الطرفية إلى عنوان المضيف (عنوان IP أو اسم المجال) والمنفذ. يشير عنوان المضيف إلى جهاز W5500 ، ويشير المنفذ إلى المقبس الموجود في الجهاز. يمكن أن يعمل مقبس واحد مع اتصال واحد فقط. لذلك ، من الممكن إجراء ثمانية اتصالات متزامنة مستقلة. يوضح الشكل 5 معلمات الاتصال في برنامج HyperTerminal القياسي بـ W5500 بعنوان IP 192.168.0.111 إلى المقبس 0 (المنفذ 4000). للاتصال بالإنترنت العالمي (من الخارج) ، تحتاج إلى تكوين جهاز التوجيه المنزلي بشكل صحيح.

التين. 5. الاتصال عبر TCP / IP في HyperTerminal.

جربت العديد من تطبيقات TCP الطرفية المختلفة ، لكل منها مزاياه وعيوبه. بادئ ذي بدء ، من خلال طريقة تعبئة حزمة TCP ، يمكن تمييز حالتين. في الحالة الأولى ، يتم إنشاء حزمة TCP وإرسالها إلى الخادم فورًا عند إدخال حرف في النهاية الطرفية. وبالتالي ، فإن حقل البيانات لكل حزمة يأخذ 1 بايت ويحتوي على الحرف الذي أدخله المستخدم. يعمل برنامج HyperTerminal فقط في هذا الوضع. في الحالة الثانية ، يتم إدخال مجموعة الأحرف (الأمر) في حقل نص منفصل ، وعندما تنقر فوق الزر "إرسال" ، يتم تكوين حزمة واحدة فقط مع حقل بيانات ، ومحتوياتها عبارة عن مجموعة أحرف أدخلها المستخدم. يتطابق حجم حقل البيانات الخاص بهذه الحزمة بالبايت مع عدد الأحرف التي تم إدخالها. الحالة الثانية هي الأكثر ملاءمة وملاءمة ، كما أنها اقتصادية في حركة المرور. يعمل تصميمنا مع كلتا الحالتين ، حيث ينتقل إلى إخراج (TxD) لـ UART MK Atmega8 جميع الأحرف التي أدخلها المستخدم البعيد من أي مقبس.

أما بالنسبة لتنظيم نقل المعلومات من الخادم إلى العميل ، فهناك أيضًا خصائصها الخاصة. من الممكن جعل برنامج MK يولد حزمة TCP أحادية البايت أيضًا مباشرة ، عند استلام بايت واحد (حرف) على ساق RxD UART MK. يمكنك إنشاء حزمة TCP من مجموعة من وحدات البايت الواردة إلى MK بواسطة وجود إشارة إضافية خاصة ، والتي لا توجد إلا أثناء إرسال التسلسل من الجهاز المتصل (إشارة التعبئة). بالمناسبة ، يتم استخدام هذه الإشارة لتحويل MAX485 إلى الإرسال في حالة تحويل RS-232 إلى واجهة RS-485 أحادية الاتجاه. ومع ذلك ، كما كنت مقتنعا ، من الأنسب استخدام جهاز ضبط الوقت ، أي تأخير بسيط يتم من خلاله استقبال الأحرف وتكوين رزمة TCP. هذه هي الطريقة التي طبقتها في البناء الموصوف. يعمل على النحو التالي. المؤقت (يتم ضبط الوقت على حوالي 0.3 ثانية). يبدأ عند وصول الحرف الأول ويتم إعادة تعيينه عند وصول كل حرف تالي إلى UART MK. إذا لم تصل أي أحرف خلال وقت محدد ، يتم تكوين حزمة بالأحرف المستلمة وإرسالها إلى العميل ، ويتوقف المؤقت. في حالتي الخاصة ، هناك بريد جماعي على جميع المقابس التي يتصل بها العملاء.

الآن سيكون الأمر يتعلق بالخصوصية. المحطة الطرفية البعيدة الموصوفة غير محمية من التنصت باستخدام أجهزة تحليل حركة المرور. حتى بروتوكول Telnet نفسه لا يوفر مصادقة كلمة المرور وتشفيرها. لهذا ، هناك بروتوكولات طرفية حديثة أخرى بعيدة. وفي حالة Telnet ، وكذلك في حالة RAW (بدون بروتوكول تطبيق) ، يمكنك تنفيذ طريقة غير مباشرة لمصادقة كلمة المرور ، والتي لن تكون فعالة إلا مع التدخل المتعمد. ومع ذلك ، فإن طريقة التفويض هذه ستحمي من حركة المرور "اليسرى" غير المنضبط. يمكن أن يأتي من برامج التجسس ، والتي يمكن من خلال ترتيب عناوين IP لموفري الخدمة المعروفين ومجموعة المنافذ ، أن تتصل فجأة بجهازنا (إذا "تستمع" إلى اتصالات من الإنترنت). في البرامج الثابتة الخاصة بي ، قمت بتطبيق صفحة ترحيب العميل ، إذا كانت متصلة بالخادم ، أي للتصميم بناءً على وحدة W5500.

تحتوي صفحة الترحيب على معلومات حول عنوان IP للعميل ورقم مأخذ التوصيل (للمراقبة) وطلب إدخال كلمة مرور (الشكل 6).

التين. 6. صفحة الترحيب لخادم W5500.

بعد الاتصال داخل برنامج MK ، يبدأ المؤقت (لمدة 18 ثانية تقريبًا) ، حيث يجب أن يكون لدى المستخدم الوقت لإدخال كلمة مرور محددة (نفس الشيء على جميع المقابس). إذا تم إدخال كلمة المرور بشكل غير صحيح ، بعد انقضاء الوقت المحدد ، يقوم المستخدم بإبلاغ الرسالة المقابلة ويفصل الخادم (الشكل 7).

التين. 7. الإبلاغ عن كلمة مرور غير صحيحة.

في حالة إدخال كلمة مرور بشكل صحيح ، تظهر للمستخدم أيضًا الرسالة المقابلة (الشكل 8). بعد ذلك ، تم إنشاء جسر "شفاف" بين المحطة الطرفية البعيدة وواجهة UART الخاصة بـ MK ، والتي يتم توصيل وحدة W5500 بها عبر SPI. تم اختبار تشغيل هذا الجسر فقط على مستوى فرق المستخدمين. قد لا يتم ضمان تبادل البيانات عالي السرعة إذا كان تطبيق العميل في بعض الحالات ليس محطة مستخدم ، ولكن بعض البرامج الأخرى. والأكثر من ذلك ، فإن التصميم الموصوف لا يضمن (بشكل أدق ، لم يتم توفيره) تبادل البيانات مزدوج الاتجاه.

التين. 8. رسالة حول كلمة المرور الصحيحة.

عندما يتم إدخال كلمة مرور ، لا يقوم المستخدم بإعادة الأحرف التي يدخلونها إلى الجهاز الطرفي ، وكذلك "Backspace" لا يعمل (التراجع مع حرف تم إدخاله بشكل غير صحيح). طول كلمة المرور 8 أحرف. يقوم برنامج MK بمسح أول 8 أحرف يتم تلقيها من العميل ، بغض النظر عن توزيعها عبر حزم TCP. ولكن يجب ألا تتجاوز أي حزمة 10 بايت. بالمناسبة ، تعمل وظيفة "إرسال ملف نصي" في HyperTerminal بشكل مثير للاهتمام. كما تم فحصه باستخدام محلل حركة المرور ، عندما يتم تنفيذ هذه الوظيفة ، يتم تشكيل رزمتي TCP: الحزمة الأولى مع بيانات 1 بايت تحتوي على الحرف الأول من الملف النصي المرسل ، وتحتوي الحزمة الثانية على بقية المحتويات.

يوفر الخادم كلمتين مرور مختلفتين. يتم استخدام كلمة مرور واحدة لإنشاء جسر TCP-UART (الاستخدام العادي) ، كما هو موضح أعلاه ، ويتم استخدام كلمة المرور الثانية للتحكم في وحدة W5500 أو معلمات التصميم الأخرى. إذا تم إدخال كلمة المرور هذه ، تظهر للمستخدم صفحة ترحيب أخرى ، ويدخل في وضع التحكم. لقد قدمت عن قصد أن هذا الوضع كان ممكنًا فقط على أحد المقابس المجانية. إذا كان مأخذ توصيل مع هذا الوضع مشغولاً ، وتم إجراء محاولة لتسجيل الدخول إلى هذا الوضع على مأخذ توصيل آخر ، فسيتم قطع الاتصال على الفور من قبل الخادم. قبل الفاصل ، سيتم عرض رسالة حول رقم المقبس الذي يعمل بالفعل (مشغول) في وضع التحكم (الشكل 9).

يوفر وضع التحكم الأوامر التي قمت بتعريفها ، ويمكن رؤية قائمة منها عن طريق إدخال أمر المساعدة. يجب أن ينتهي الأمر بحرف سطر جديد (أدخل مفتاح). بالإضافة إلى ذلك ، إذا كان وضع التحكم نشطًا ، يرسل خادم W5500 رسائل الخدمة إلى المحطة الطرفية ، على سبيل المثال ، حول توصيل العملاء بمآخذ توصيل أخرى بعناوين IP الخاصة بهم أو حول مقبس مجاني. يوضح الشكل 10 ما سبق. قائمة الفرق لم تكتمل بعد ، وسيتم تجديدها بمرور الوقت.



التين. 9. رسالة حول مأخذ توصيل مشغول عند إدخال كلمة مرور وضع التحكم.

التين. 10. وضع التحكم W5500.

يقوم أمر echo بتعطيل أو تمكين عودة الحرف المطبوع إلى النهاية الطرفية (المراقبة الذاتية). الأمرين التاليين لقراءة وكتابة سجل العناوين لشريحة W5500. يشار إلى قيم سجلات العناوين في وثائق شريحة W5500. لقد قدمت هذه الأوامر العالمية ، في المقام الأول لتصحيح الأخطاء. يقوم الأمر rl بإعادة تشغيل رقم المقبس الموضح بعد ذلك على الفور. وبالمثل ، يقرأ الأمر sr حالة المقبس ، مع إعطاء قيمته كرقم HEX. يعطي الأمر "ens" جدولًا بالحالات لكل مقبس: الحالة "0" - المقبس مجاني ، في انتظار العميل ، الحالة "1" - المقبس في الاستخدام العادي ، الحالة "2" - المقبس في وضع التحكم. يمكنك إدخال عدد أكبر بكثير من الأوامر. سيكون من المفيد تغيير المعلمات التي تتناسب مع الشريحة في مرحلة التهيئة عند تشغيل الجهاز (على سبيل المثال ، معلمات الشبكة) ، وتخزينها في الذاكرة غير المتقلبة لـ MK. قد يكون من المفيد أيضًا إدخال أوامر خاصة تتحكم في دبابيس MK المجانية الإضافية. على سبيل المثال ، "PC0 = 1" ، "PC2 = 0" ، إلخ. تأكد من أنك بحاجة إلى أمر التكوين واجهة UART MK.

فكر في التفاصيل الأكثر دقة لعمل برنامج MK. بالإضافة إلى المؤقتات المذكورة أعلاه ، يتم تنشيط المؤقت ، وبفضله ، كل نصف دقيقة تقريبًا ، تسمى حزم التحكم TCP "استمرار". يعد ذلك ضروريًا للتحقق من الاتصال في حالة عدم تبادل بيانات المستخدم. إذا لم يكن هناك أي تأكيد من العميل لأي سبب خلال فترة زمنية محددة داخل W5500 ، ما يسمى مهلة وإعادة تشغيل مأخذ التوصيل. قد يفقد الاتصال فجأة ، على سبيل المثال ، بسبب انقطاع في ارتباط البيانات أو الطبقة المادية: قاموا بسحب كبل Ethernet أو قطع اتصال الإنترنت أو فقد اتصال Wi-Fi ، إلخ.

بناءً على وثائق شريحة W5500 (ورقة البيانات) ، يتم تنفيذ الوظائف التالية في رمز البرنامج. أولاً ، يتم تسجيل الوظائف الأساسية للكتابة والقراءة W5500 في العناوين. وظائف المستوى الأعلى - إعادة ضبط الأجهزة ، وتهيئة الشريحة ، وتهيئة المقبس ، وفتح مأخذ ، والاستماع إلى المقبس ، وفصل وإغلاق المقبس ، وإرسال الأمر "keep_alive" ، وإعادة تشغيل المقبس. الوظيفة الأخيرة هي تكوين للوظائف المذكورة أعلاه: إغلاق ، فتح ، استماع. تُرجع معظم الدالات قيمة حالة مأخذ التوصيل بعد تنفيذها. أخيرًا ، تتمثل الوظائف الأساسية في معالجة المعلومات المستلمة (القراءة من المخزن المؤقت RX) ومعالجة المعلومات المرسلة (الكتابة إلى المخزن المؤقت TX). أخذت توصيات بشأن تنفيذ هذه الوظائف من الموقع الرسمي لشركة تصنيع الرقائق W5500 ( حلقة الوصل ). تقوم وظيفة الاستلام بالكتابة فوق البيانات المستلمة من المخزن المؤقت RX في المخزن المؤقت غير الحلقي 128 بايت. هذا الحجم يكفي للتطبيقات البسيطة ، ولا يمكنك الحصول على الكثير من متحكم Atmega8. يقوم المخزن المؤقت TX في W5500 أيضًا بنقل البيانات من المخزن المؤقت المتوسط ​​، وهو صغير الحجم أيضًا. وبدورها ، تدخل البيانات من المخزن المؤقت الحلقي UART. يتم تنفيذ هذا الأخير تلقائيًا في بيئة تطوير CVAVR باستخدام الأداة المساعدة CodeWizardAVR في مرحلة إنشاء المشروع.

يتم توصيل W5500 بواجهة MKI SPI (MOSI و MISO و SCK و SCLK). بالإضافة إلى ذلك ، يتم توصيل دبوس RST (إعادة ضبط الأجهزة) بإخراج MK معين ، ويتم توصيل دبوس INT المقابل بإدخال المقاطعة الخارجية INT0. يتم استخدام هذا الأخير للغرض المقصود: عندما يحدث حدث في وحدة W5500 ، فإنه يولد نبضة في دبوس INT ، والتي يتم معالجتها بواسطة وحدة التحكم في جسم المقاطعة الخارجية. يتعرف MK على مآخذ الحدث التي حدثت ، ثم يعيد كتابة رموز الأحداث لكل مأخذ في صفيف معين. تحدث المعالجة الإضافية للمقاطعة داخل حلقة البرنامج الرئيسية. في المجموع ، تم توثيق خمسة أحداث: العميل المتصل ، العميل غير متصل (بتعبير أدق ، قدم طلب قطع الاتصال) ، تم استلام البيانات من العميل ، انتهت المهلة ، تم إرسال البيانات بنجاح. في الحلقة الرئيسية ، تتم معالجة جميع الأحداث باستثناء الأخيرة. يتم وضع بيان حالة التبديل في هذه المعالجة. تم العثور على الجزء الأكبر من كود C في قسم المعالجة للحدث الثالث (استقبال البيانات). في ذلك ، بعد وظيفة معالجة المعلومات المستلمة ، يتم أيضًا وضع عامل تشغيل مفتاح التبديل ، ولكن في هذه الحالة يرتبط هذا "التبديل" بمتغير مسؤول عن حالة المقبس المذكور أعلاه (القيم 0 ، 1 ، 2). القسم الأول مسؤول عن إجراء التعرف على كلمة المرور. يتم الكتابة فوق الأحرف المستلمة في مخزن مؤقت لكلمة مرور منفصلة. في ظل ظروف معينة ، تعمل وظائف مقارنة السلسلة المستلمة مع السلاسل الثابتة التي تحتوي على كلمات المرور.في حالة حدوث صدفة ، يتم تعيين الحالة المقابلة. القسم الثاني هو الأبسط - يتم إعادة توجيه محتويات المخزن المؤقت الخاص به للمعلومات المستلمة إلى UART من وحدة التحكم الدقيقة. هذا هو وضع الاستخدام العادي. القسم الثالث (الأكبر) مسؤول عن معالجة الأوامر - وضع التحكم في الجهاز.

بالإضافة إلى استمرار معالج المقاطعة ، تحتوي الحلقة الرئيسية للبرنامج على معالجات مؤقت ظاهرية - مهلة قطع الاتصال عندما تكون كلمة المرور غير ناجحة ، وإرسال "الحفاظ على الحياة" بشكل دوري وإرسال حزمة مكونة بواسطة مؤقت TCP إلى العميل. يتم أيضًا وضع وظيفة القراءة من UART في نص الحلقة الرئيسية ، حيث يتم نقل الأحرف التي تلقتها وحدة التحكم إلى مخزن الإرسال (المتوسط) الخاص بها ويتم إعادة ضبط المؤقت ، وهو المسؤول عن تشكيل حزمة TCP.

يتم وضع جميع إجراءات المقبس في دورة من 0 إلى 7 ، يرتبط مكررها برقم المقبس. وبالتالي ، تحدث المعالجة المتسلسلة لجميع المقابس. في البداية ، كنت أعني أنه إذا قمت بتعيين نفس رقم المنفذ لكل من المقابس الثمانية ، فيمكنك توصيل ما يصل إلى ثمانية مستخدمين على نفس المنفذ. ومع ذلك ، لم يعمل هذا التكوين ، وتم تأجيل هذه المشكلة للمستقبل.

عند تصميم تصميم لوحات الدارات الكهربائية ، قدمت ساعة في الوقت الفعلي (RTC) على شريحة DS1307. Atmega8 MK ، كوارتز للتردد 11.0592 ميجاهرتز (التردد المحدد لدقة UART) ، وموصل لوحدة W5500 ، وموصلات منفذ MK (بما في ذلك SPI للبرامج الثابتة ، و UART) ، و RTC مع حجرة البطارية الخاصة بها كوارتز و CR2032 موجودة على لوحة الدوائر المطبوعة على الوجهين ، 5 فولت منظم خطي (7805) ، موصل الطاقة وأكثر من ذلك. يظهر الرسم التخطيطي للوحة الدوائر المطبوعة في برنامج Sprint Layout في الشكل 11. العنصر الوحيد الذي يظهر باللون الأحمر ملحوم على الجانب الخلفي ، لكنني ملحومه إلى الجانب الأمامي.

التين. 11. رسم تخطيطي للوحة الدائرة.

يتم عرض صور البناء النهائي في الشكل 12. سيتم استخدام ساعة في هذا البناء لتحديد الوقت خلال الأحداث المختلفة لمقابس W5500 ، وسيتم تخصيص هذه المرة للمستخدم في المحطة الطرفية بجوار الرسالة إذا كان المستخدم متصلاً في وضع التحكم. وأيضًا ، ستكون الساعة مفيدة للمستقبل للتجارب مع بروتوكول الوقت NTP أو لأي غرض آخر.

التين. 12. صور الهيكل النهائي.

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

التين. 13. محول صناعي TCP / IP - RS-232.

يوضح الشكل 13 مثالاً لمحول TCP / IP صناعي إلى RS-232 بناءً على شريحة W5100 ، وهو مشابه جدًا لـ W5500. بالإضافة إلى واجهة الإدارة المرنة ، لديها ميزة أخرى. بالإضافة إلى العمل مع طرف TCP / IP ، من الممكن استخدام برنامج تشغيل خاص يأتي مع الجهاز لتثبيت منفذ COM افتراضي على جانب العميل. من خلاله ، يمكنك الاتصال باستخدام محطة طرفية عادية ليس لديها وضع اتصال TCP / IP. علاوة على ذلك ، يمكن للجهاز دعم تبادل البيانات RS-232 الكامل إذا تم توصيل أي برنامج بدلاً من الطرفية عبر منفذ COM الظاهري. أي أن الجهاز الموضح في الشكل 13 عبارة عن جسر كامل RS-232 من خلال البنية التحتية للشبكة.

Source: https://habr.com/ru/post/ar414211/


All Articles