سؤال

تواجه مشكلة حاليا في التطبيق.

تم تصميم تطبيقي لفتح قارئ RFID على PI التوت.وعائدات قراءة علامات RFID الواردة.

الرمز كما يلي؛

giveacodicetagpre.

أفتح التطبيق، ويعمل على ما يرام.يستطيع باستمرار قراءة علامات بطاقة.ومع ذلك؛عندما أستخدم بطاقة مختلفة، يبدو أن Node.js يستخدم نوعا من المخزن المؤقت.

مثال؛

أنا مسح بطاقة a، عودة علامة aaa. أنا مسح بطاقة A، عودة علامة aaa. أنا مسح بطاقة B، عودة علامة aaa. أنا مسح بطاقة B، عودة علامة aaa. أنا مسح بطاقة B، عودة علامة BBB (الذي كان من المفترض أن يتم إرجاعه).

يبدو أن هذا يحدث دائما عند تغيير العلامات.

هل هناك نوع من المخزن المؤقت في node.js، يقوم بتخزين مخزن مؤقت للبيانات التي لم تنتقل بعد؟

أنا على بينة من .dain (رد الاتصال) ، ولكن كيف يمكنني تنفيذ هذابطريقة مناسبة؟

هل كانت مفيدة؟

المحلول

لا أفهم تماما مكتبة العقدة-serialport، لكن لدي مشكلة مماثلة عند تلقي البيانات.

في كل مرة تغيرت فيها قيمة البيانات، ستلقى دائما القيمة السابقة مرة واحدة قبل ذلك، ثم تلقي القيمة الصحيحة في "البيانات" التالية.

قمت بحلها باستخدام طريقة "تدفق" في API Node-Serialport API.

وسيلة النفطية للقيام بذلك سيكون:

giveacodicetagpre.

حاول اختبار هذا الحق قبل فصل اتصال مأخذ التوصيل.

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top