एसटीएम 32 एफ 2 पर 115200 बॉड पर चल रहे दो यूएसएआरटी का उपयोग करके, एक रेडियो मॉड्यूल के साथ संवाद करने के लिए और पीसी से सीरियल के लिए एक। घड़ी की गति 120 मेगाहट्र्ज है।दो यूएसएआर इंटरप्ट्स के साथ त्रुटियों को ओवररन करें
यूएसएआरटीएस से डेटा प्राप्त करने के साथ-साथ एक यूएसएआरटी या दूसरे पर त्रुटियों को खत्म कर दिया जा सकता है। लिफाफे की गणना के कुछ त्वरित पीछे करना, दोनों को संसाधित करने के लिए पर्याप्त समय होना चाहिए, क्योंकि इंटरप्ट्स बाइट को गोलाकार बफर में कॉपी करते हैं।
दोनों सिद्धांतों और माप से बाधा को बाइट को धक्का देने के लिए बाधा कोड को 2-4μS के क्रम में चलाने के लिए 115200 बाउड पर चलाया जाना चाहिए, हमारे पास प्रत्येक चार को संसाधित करने के लिए लगभग 70us है।
हम एक या अन्य यूएसएआरटी पर मौलिक ओआरई क्यों देख रहे हैं?
अपडेट - अतिरिक्त जानकारी:
- हमारे कोड में कोई अन्य ISRs इस समय सक्रिय हो रहे हैं।
- हम प्रत्येक 10 एमएस को आग लगाने के लिए कॉन्स्टिक इंटरप्ट के साथ कील आरटीएक्स चला रहे हैं।
- हम इस समय किसी भी बाधा को अक्षम नहीं कर रहे हैं।
- इस पुस्तक (डिजाइनर की गाइड कॉर्टेक्स-एम प्रोसेसर परिवार के लिए) अंतरायन विलंबता 12cycles के आसपास है (वास्तव में घातक नहीं)
सब से ऊपर 70us को देखते हुए अनुसार समय के साथ 10 में से कम से कम एक कारक है हम इंटरप्ट को साफ़ करने के लिए लेते हैं - इसलिए मुझे यकीन नहीं है कि यह समझाने में इतना आसान है। क्या मुझे यह निष्कर्ष निकालना चाहिए कि मुझे कुछ और कारक दिखाना चाहिए जो मैं देख रहा हूं?
MDK-एआरएम संस्करण 4.70
systick बाधा RTOS द्वारा किया जाता है ऐसा नहीं समय यह अन्य ISRs बाइट प्रति चलाने के लिए 2-3μS ले सकता है।
आपने किसी के लिए यह कहने के लिए पर्याप्त जानकारी प्रदान नहीं की है कि आप, विशेष रूप से, ओवररन्स क्यों प्राप्त कर रहे हैं। स्पष्ट उम्मीदवार: कहीं और बाधाओं को अक्षम करना? उच्च प्राथमिकता हस्तक्षेप हैंडलर बहुत धीमी है? अपने कोड में बग? पता लगाने के लिए पर्याप्त जानकारी नहीं है। – janm
आईएसआर विलंबता उस चिप पर बहुत घातक है, यूएआरटी के पास फीफो बफर नहीं है। आपकी सैद्धांतिक गणना पहले से ही दो के कारक से बंद है। उच्च प्राथमिकता वाले इंटरप्ट्स जोड़ें जिनके आईएसआर बहुत अधिक समय लेते हैं या कोड में अक्षम होने में बाधा डालते हैं जिन्हें आप नहीं जानते हैं और एक ओवररन को समझाना आसान हो जाता है। –
टिप्पणियों के लिए धन्यवाद मैंने प्रश्न में कुछ और जानकारी जोड़ दी है, मुझे यकीन नहीं है कि मैं कौन सी अन्य जानकारी प्रदान कर सकता हूं। –