Spi फ़्लैश को लिखने के लिए प्रतीत नहीं कर सकते


9

खैर मैं इस पर थोड़ी देर के लिए अटक गया, शायद इस बिंदु पर 2-3 सप्ताह। मुझे यकीन नहीं है कि मैं क्या गलत कर रहा हूं। मैं इस स्पाई फ्लैश भाग को लिखने की कोशिश कर रहा हूं , और अब मैं इसे मिटाने, लिखने और इसे अलग करने की कोशिश करने के लिए सिर्फ रूटीन चला रहा हूं लेकिन अभी तक कोई भाग्य नहीं है। बेशक मैं एक गुच्छा रास्ते में एक कीड़े को हल किया है ...

वैसे भी मैंने अपनी WP लाइन को बोर्ड पर ऊंचा बांध दिया है, और मैंने घड़ी की राह को 200khz तक धीमा कर दिया है, फिर मैं अपनी रूटीन रूटीन चलाता हूं और यह इस तरह दिखता है:

यहां छवि विवरण दर्ज करें पहले मैं सिर्फ डिबग के लिए आईडी की जांच करता हूं, यह 9F कमांड है, फिर मैंने 06 कमांड के साथ WREN सेट किया है, C7 पूरे चिप-इरेज है, और फिर मैं 05 के साथ स्थिति बिट की जांच करता हूं और यह स्पष्ट है। इस चीज़ का चिप मिटने का समय केवल 35ms है।

अब मैं अपना कोड पुनः लोड करता हूं और लिखने का प्रयास करता हूं:

यहां छवि विवरण दर्ज करें पहले मैंने 06 के साथ WREN सेट किया, यह देखने के लिए स्थिति जांचें कि WREN 05 के साथ सेट है, यह है, तो 0x000000 पता करने के लिए पेज प्रोग्राम कमांड 02 भेजें। आप देख सकते हैं कि मैं पहले कुछ बिट्स के रूप में डेडकैफ़ लिख रहा हूं। यहाँ भी चित्रित नहीं किया गया है लिखने के पूरा होने के बाद (एक पृष्ठ या 256 बाइट्स), मैं 0x04 कमांड को WREN को अक्षम करने के लिए भेजता हूं। मैंने देखा है कि और मैंने अपने पेज बफ़र के अंतिम चार बाइट्स 0xAA, 0x55, 0xAA, 0x55 होने के लिए सेट किए और मैंने उन्हें सीएस के उच्च होने से ठीक पहले देखा।

अब पुनः लोड कोड बंद करें और पढ़ने का चक्र चलाने का प्रयास करें: यहां छवि विवरण दर्ज करें 0x03 को रीड कमांड के रूप में भेजें और 0x000000 पते के रूप में, और ... सभी 0xFF डिवाइस से वापस।

मैं डिवाइस को अपनी पढ़ी गई आईडी पर प्रतिक्रिया दे सकता हूं और WREN कमांड सेट कर सकता हूं ताकि मुझे पता हो कि यह मुझे सुनता है, और जवाब दे सकता है। मुझे नहीं पता कि मैं इस बिंदु पर क्या कर रहा हूं। मुझे लगता है कि मैं डेटाशीट पढ़ने, और कुछ चीजों की कोशिश करने पर वापस जाऊँगा, लेकिन अगर किसी के पास कोई अंतर्दृष्टि है तो मैं मदद की सराहना करूँगा। यह इस बात पर काम करने वाला एक और निराशाजनक सप्ताहांत है।


10
और ... मैं समझ गया। अगर मेरे पास हर बार एक डॉलर होता था तो मुझे लगता था कि आखिरकार मदद के लिए कहीं पोस्ट करने के लिए पर्याप्त हताश होने के बाद मुझे कुछ करना है। यह पता चलता है कि ग्लोबल अनलॉक नाम से एक और कमांड 0x98 है, जिसे लिखने में सक्षम या प्रोग्रामिंग पर वर्गों में उल्लेख नहीं किया गया है ... वैसे भी मेरे WREN कमांड के आगे और यह काम कर रहा है। भाई के लिए खेद है।
भ्रमित

10
उत्तर के रूप में अपनी टिप्पणी जोड़ें और इसे स्वीकार करें।
ज्यामितीय

@Geometrikal से सहमत होना चाहिए कि आपको अपने प्रश्न का उत्तर देना चाहिए। मैं तस्वीर SPI इंटरफ़ेस के साथ परेशानी के अलावा कुछ भी नहीं था; ठीक उसी कारणों के लिए: प्रलेखन।
यूजर .1

2
नमस्ते! आपने लगभग एक साल पहले एक अच्छा प्रश्न पोस्ट किया और फिर टिप्पणियों में एक अच्छा उत्तर पोस्ट किया। लेकिन सवाल अभी भी "अनुत्तरित" सूची में सबसे ऊपर दिखाई दे रहा है! कृपया अपनी टिप्पणियों को एक उत्तर में कॉपी करें और इसे "स्वीकार" करें। इस तरह इसे सही ढंग से प्रबंधित किया जा सकेगा और हम आपके जवाब को
बढ़ा

1
@confused कृपया अपना उत्तर पोस्ट करें और इसे उत्तर के रूप में चिह्नित करें ताकि हम प्रश्न को बंद कर सकें, धन्यवाद
वोल्टेज स्पाइक

जवाबों:


3

मुझे बस नफरत है कि यह अभी भी 'अनुत्तरित' सूची में सबसे ऊपर है, इसलिए मैं जवाब देने जा रहा हूं।

जैसा कि 'भ्रमित' टिप्पणियों में कहा गया है, 'ग्लोबल अनलॉक' नामक एक कमांड है जिसे फ्लैश भाग में लिखने से पहले निष्पादित किया जाना चाहिए।


1
आपको अपना उत्तर स्वीकार करना चाहिए, अन्यथा यह प्रश्न अभी भी "अनुत्तरित" के रूप में चिह्नित किया जाएगा।
.टिएन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.