एक कस्टम STM32 बोर्ड प्रोग्राम नहीं कर सकता


9

मैंने एक साधारण एसटीएम 32 बोर्ड डिजाइन किया है। नीचे योजनाबद्ध और पीसीबी लेआउट चित्र दिए गए हैं:

योजनाबद्ध:
यहां छवि विवरण दर्ज करें

पीसीबी लेआउट: यहां छवि विवरण दर्ज करें

VDD के साथ पीसीबी लेआउट hightlighted: यहां छवि विवरण दर्ज करें

GND के साथ पीसीबी लेआउट पर प्रकाश डाला: यहां छवि विवरण दर्ज करें

इस डिज़ाइन के केवल वे हिस्से जो मेरे प्रश्न के लिए प्रासंगिक हैं, उपरोक्त चित्रों में दिखाए गए हैं।

मेरी समस्या यह है: मैंने इस कस्टम बोर्ड को प्रोग्राम करने के लिए एक STM32 डिस्कवरी बोर्ड के बिल्ट-इन ST-लिंक का उपयोग करने की कोशिश की, लेकिन मैं अभी तक सफल नहीं हो सका। पीसी पर एसटी-लिंक यूटिलिटी एप्लिकेशन प्रोग्रामर को पहचान सकता है, लेकिन यह लक्ष्य एमसीयू का पता नहीं लगा सकता है। मुझे जो त्रुटि संदेश मिले वे थे: "लक्ष्य जुड़ा नहीं" और "ST-Link USB संचार त्रुटि"।

यहाँ मेरी समस्या के बारे में कुछ संबंधित तथ्य हैं:

  • STM32 डिस्कवरी बोर्ड ठीक काम करता है: मैं इसका उपयोग कर सकता हूँ कि यह ST-32 लिंक है जो कि बोर्ड पर STM32 MCU है। यह ठीक है।
  • STM32 MCU को कस्टम बोर्ड पर सही अभिविन्यास के साथ मिलाया गया है। मैंने दो बार यह जाँच की।
  • मैंने VDD और SWD निशान की जाँच की है। वे अच्छी तरह से जुड़े हुए हैं (टांका लगाने की समस्या नहीं)। पिन बूट 0 0 वी पर है। पिन NRST 3.3V पर है।
  • एसडब्ल्यूडी केबल कम है, लंबाई में केवल 7-8 सेमी।
  • मेरे कस्टम बोर्ड पर STM32 एक ही प्रकार का है जो डिस्कवरी बोर्ड पर है।
  • मैंने STM32 डिस्कवरी बोर्ड के मैनुअल में निर्देशों का पालन किया है कि कैसे बाहरी एसटीएम 32 MCU को प्रोग्राम करने के लिए डिस्कवरी बोर्ड का उपयोग किया जाए। अधिक विशिष्ट होने के लिए, मैंने 2 CN3 जंपर्स को हटा दिया, और फिर मैंने इस तालिका में दिए गए बोर्डों को जोड़ा: यहां छवि विवरण दर्ज करें

  • मैंने डिस्कवरी बोर्ड पर मिलाप पुल SB11 को भी हटा दिया (ताकि पिन NRST ठीक से काम कर सके)।

  • मैंने ST-Link यूटिलिटी ऐप और Keil दोनों की कोशिश की है। मुझे प्राप्त त्रुटि संदेश समान हैं।
  • पहले तो मैंने उपरोक्त तालिका (SWO) पर पिन ६ नहीं जोड़ा क्योंकि मेरे ज्ञान के लिए यह आवश्यक नहीं है। हालाँकि इसके बाद मैंने इसे भी जोड़ा, लेकिन चीजें अभी भी कारगर नहीं हुईं।
  • मैंने पिन NRST से GND में एक 100nF कैप भी जोड़ा, और फिर इस पिन से VDD के लिए 100k पुल-अप रेज़िस्टर। समस्या अभी भी बनी हुई है।
  • मैंने ST-Link यूटिलिटी प्रोग्राम के "कनेक्ट अंडर रीसेट" मोड का उपयोग करने का भी प्रयास किया है। भाग्य भी नहीं।

मुझे संदेह है कि डिजाइन में कुछ गड़बड़ हो सकती है, लेकिन मुझे यकीन नहीं है। कृपया समस्या को हल करने में मेरी मदद करें।

आपका बहुत बहुत धन्यवाद :)


जहां तक ​​मुझे याद है, आपको सेंट-लिंक और आपके कस्टम बोर्ड दोनों को पावर देना होगा। आपके कस्टम बोर्ड के SWD कनेक्टर में 3.3V को पता लगाने के लिए सेंट-लिंक के लिए 3.3V प्रदान करना है।
davidrojas

@davidrojas: आपके उत्तर के लिए धन्यवाद। खैर, वर्तमान में मैं अपने पीसी से यूएसबी पोर्ट द्वारा एसटी-लिंक को पावर करता हूं। कस्टम STM32 बोर्ड बाहरी, पृथक 3.3V द्वारा संचालित होता है। हालाँकि इन 2 बोर्डों का मैदान पहले से जुड़ा हुआ है (जैसा कि ऊपर की तालिका में है)। इसके अलावा, मेरे कस्टम बोर्ड से 3.3 V STD- लिंक पर VDD_TARGET से भी जुड़ा है। क्या आपको लगता है कि यह पर्याप्त है?
user3286500

यह पर्याप्त होना चाहिए, हाँ। एक और मुद्दा SWDIO और SWCLK लाइनों की लंबाई और लेआउट हो सकता है, मुझे इस वजह से अतीत में रुक-रुक कर कनेक्शन की समस्या हुई है। उन्हें यथासंभव छोटा होना चाहिए। SWD की गति को भी कम करने की कोशिश करें।
दविद्रोजास

मैंने SWD की गति कम कर दी है, डिफ़ॉल्ट 1.8 MHz से 400 kHz के नीचे, लेकिन फिर भी सफल नहीं हुआ। केबल की लंबाई के अनुसार, मेरे सेटअप में SWD कनेक्शन की कुल लंबाई (ST-Link से लक्ष्य STM32 तक) लगभग 12-13 सेमी है। क्या यह अभी भी सीमा के भीतर है?
user3286500

1
क्या आपने देखा कि चिप के नीचे जमी हुई जमीन शारीरिक रूप से अलग-थलग है, और वास्तव में जमीन के किसी भी पिन से जुड़ी नहीं है? ग्राउंड पिन के बीच वास्तविक कनेक्शन चिप के बाहर यातना भरे रास्तों का अनुसरण करते हैं, और उनमें से कुछ वास्तव में पृथक हो सकते हैं। आपको अपनी क्लीयरेंस को समायोजित करने की आवश्यकता है ताकि ग्राउंड पे में अलग-थलग द्वीप न हों, और यह सुनिश्चित करने में मदद करेगा कि चिप के सभी ग्राउंड पिन समान क्षमता के बहुत करीब हैं।
डेव ट्वीड

जवाबों:


5

आपकी शानदार टिप्पणियों के लिए धन्यवाद। उनकी वजह से, मुझे विश्वास है कि मेरा डिज़ाइन त्रुटि मुक्त है। इसीलिए मैंने हार्डवेयर में त्रुटियों की खोज करने के लिए अपना ध्यान केंद्रित किया। और मुझे त्रुटि मिली! यह एक टांका लगाने की त्रुटि है।

इस निर्देश का पालन करने के बाद मुझे यह त्रुटि मिली: "एक मल्टीमीटर का उपयोग करें और शॉर्ट्स या कनेक्शन की कमी के लिए सभी कनेक्शनों का परीक्षण करें। पिन / पैड / जो भी वास्तव में धीरे से छूना याद रखें, क्योंकि यदि आप जांच को मुश्किल से दबाते हैं, तो आप ठीक कर सकते हैं" "कनेक्शन अस्थायी रूप से (उदाहरण के लिए आप IC के पिन को PCB पर ट्रेस करने के लिए पुश करते हैं और परीक्षण ठीक है, लेकिन जैसे ही आप पिन को फिर से जाने देते हैं)।" मूल पोस्ट यहाँ है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.