अतिरिक्त आईएसपी कनेक्टर के साथ एफटीडीआई ब्रेकआउट


12

टीएल; डीआर - क्या सामान्य आईएसपी के रूप में छह पीले आईएसपी पिन का उपयोग किया जा सकता है?


सामान्य USB-TTL FTDI ब्रेकआउट बोर्ड इस तरह दिखता है:

USB-TTL FTDI ब्रेकआउट बोर्ड

हाल ही में, मैं नीचे दिखाए गए बोर्ड के एक संस्करण को लेकर आया था। हालाँकि, इस बोर्ड पर अतिरिक्त पीले हेडर पिन क्या हैं? उन्हें ISP लेबल दिया जाता है।

ISP के साथ USB-TTL FTDI ब्रेकआउट बोर्ड

यहाँ पीछे का एक दृश्य है:

ISP रियर के साथ USB-TTL FTDI ब्रेकआउट बोर्ड

तो क्या उन्हें वास्तव में एक मानक आईएसपी / आईसीएसपी के रूप में उपयोग किया जा सकता है?

AVR-ICSP

हालांकि, नीचे दिए गए आरेख के अनुसार, जो प्रश्न में 6 पिनों को लेबल करता है, मुझे यकीन नहीं है कि सिग्नल लाइनों का एक वैध सहसंबंध है।

पौराणिक कथा के साथ आईएसपी के साथ यूएसबी-टीटीएल एफटीडीआई ब्रेकआउट बोर्ड

यह कहना है कि क्या MISO, RI से RST, DSR से SCK और DCD से MOSI काम करेंगे? या यही वजह है कि FT232RL: USB से सीरियल 232 TTL अडैप्टर - और ISP में अलाउड के लिए विशेष संस्करण की आवश्यकता होती है ? - पोस्ट # 6 :

एक नई सुविधा के रूप में एक 6-पिन आईएसपी हेडर उपलब्ध है। इसके साथ, avrdude और avrftdi आप Atmels और Arduino बूटलोडर्स प्रोग्राम कर सकते हैं। संकलित FTDI ड्राइवर के साथ avrdude का एक विशेष संस्करण नेक्सेसरी है।

हालांकि संकलित FTDI ड्राइवर के साथ एवार्ड के उस संस्करण के लिए प्रदान की गई लिंक मृत है।

यह भी कहा जाता है, पद # 7 में , कि ये पिन वास्तव में X3 कनेक्टर के बराबर हैं, जैसा कि पुराने Arduino Dicimila / NG / Duemilanove बोर्डों पर पाया जाता है

डायसीमिला पर X3 हेडर

और वे (जाहिर है) का उपयोग किया जा सकता है, जैसे कि थोड़ा धमाकेदार एसपीआई,

Diecimila पर ISP हेडर से X3 हेडर कनेक्ट करना

यह ध्यान दिया जाना चाहिए कि आरटीआई, सीटीएस, डीसीडी और डीएसआर (आरएसडी लेबल) पिन मूल एफटीडीआई ब्रेकआउट बोर्ड के किनारे उपलब्ध हैं। तो, क्या आईएसपी हेडर के साथ ब्रेकआउट बोर्ड सिर्फ एक ही हेडर को एक अलग हेडर का उपयोग करके प्रदान करता है?

मैं थोड़ा उलझन में हूँ - क्या मैंने अभी यह सोचा है, और यह ब्रेकआउट बोर्ड बस एक आईएसपी / आईसीएसपी हेडर है और एक एफडीडीआई कनेक्टर एक बोर्ड में रोल किया गया है (जब एवरड्यूड के उपयुक्त संस्करण के साथ उपयोग किया जाता है)? या यह एक सामान्य आईएसपी हेडर नहीं है? मैं इस प्रकार के ब्रेकआउट बोर्ड से संबंधित कोई विशिष्ट दस्तावेज नहीं पा सकता हूं , जैसा कि पोस्ट # 4 में कहा गया है

क्या कोई भी निश्चित रूप से कह सकता है कि ये छह पिन किस लिए हैं? यदि वे एक सामान्य आईएसपी हेडर नहीं हैं, तो क्या आप इसका उपयोग करने का एक विस्तृत तरीका प्रदान कर सकते हैं? एक योजनाबद्ध मददगार होगा।

जवाबों:


14

Arduino फ़ोरम पर इसके बारे में एक धागा है - किसी ने एक समान प्रश्न किया था।


मैंने एक योजनाबद्ध (नीचे) पाया जो उस बोर्ड के लिए नहीं है , हालांकि हेडर पिन को उसी तरह लेबल किया जाता है जैसा आपने पाया है, इसलिए यह समान रूप से समान है।

FTDI बोर्ड योजनाबद्ध

ऐसा प्रतीत होता है कि हेडर का उपयोग "सिंक्रोनस बिट बैंग मोड" के लिए किया जाता है जैसा कि यहाँ प्रलेखित किया गया है: FT232R और FT245R के लिए बिट बैंग मोड (अनुप्रयोग नोट AN_232R-01, दस्तावेज़ संदर्भ संख्या: FT_000339)


आप वास्तव में उस हेडर को SPI प्रोग्रामर होने के लिए कॉन्फ़िगर कर सकते हैं, उदाहरण के लिए, FT232R बिटबैंग प्रोग्रामर में


मैंने एक परीक्षण किया, क्योंकि मेरे हिस्से के दराज में एक समान बोर्ड था:

FTDI बोर्ड के सामने

इसमें आपके समान 6-पिन हेडर का प्रावधान था। बोर्ड को पलटते हुए हम देख सकते हैं कि उन्हें आपके जैसे ही लेबल किया गया था:

FTDI बोर्ड वापस

मैंने एक हेडर पर टांका लगाया (पीले रंग में, सुसंगत होना) मुझे यह दे रहा है:

हेडर के साथ FTDI बोर्ड

मैंने पिन 1 (किनारे पर दिखाई देने वाला) को इंगित करने के लिए एक सफेद बिंदु जोड़ा, इसलिए मैं केबल को सही तरीके से चारों ओर प्लग करता हूं।


जब मैंने बोर्ड का उपयोग करने का प्रयास किया तो मुझे यह संदेश एव्राड्यूड से मिला:

अवहेलना: त्रुटि: कोई libftdi या libusb समर्थन नहीं। Libftdi1 / libusb-1.0 या libftdi / libusb स्थापित करें और फिर से कॉन्फ़िगर / रन करें

तो, यह खरोंच से संकलित किया जाना था! अगर आप साथ चलने की कोशिश कर रहे हैं तो मैं Ubuntu 14.04 का उपयोग कर रहा हूं। :)


डाउनलोड एवार्ड

साइट पर जाएं http://www.nongnu.org/avrdude/

मैंने संस्करण 6.3 स्रोत डाउनलोड किया: http://download.savannah.gnu.org/releases/avrdude/avrdude-6.3.tar.gz

Libusb और libftdi स्थापित करें

संकलन करने से पहले मुझे libusb और libftdi को पकड़ना था:

sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libftdi-dev

संकलन करें

अब हम आर्काइव को आर्काइव करने और उसके फोल्डर में नेविगेट करने के बाद बनाते हैं:

./configure --enable-libusb --enable-libftdi
make

सही कॉन्फ़िगरेशन खोजें

avrdude.confजो फ़ाइल मुझे मिली है, उसके अंदर मिली फ़ाइल के अंदर (कुछ विचार करने के बाद) यह सही प्रविष्टि है:

# see http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html
# Note: pins are numbered from 1!
programmer
  id    = "arduino-ft232r";
  desc  = "Arduino: FT232R connected to ISP";
  type  = "ftdi_syncbb";
  connection_type = usb;
  miso  = 3;  # CTS X3(1)
  sck   = 5;  # DSR X3(2)
  mosi  = 6;  # DCD X3(3)
  reset = 7;  # RI  X3(4)
;

पिंस की संख्याओं की मैपिंग इस तरह से काम करती है ... पीडीएफ से बिट बिट मोड के बारे में हमने ऊपर यह तालिका दी है, मेरे द्वारा नीले रंग में एनोटेशन के साथ:

बिट बैंग मोड पिंस

संख्याएँ बिट बिट ("0 से 7 की सीमा में)" बाइट "डेटा बाइट में संदर्भित होती हैं। हम पहले के योजनाबद्ध से देख सकते हैं कि, उदाहरण के लिए, ICSP हेडर पर MISO FTTS32RL पर सीटीएस के लिए वायर्ड है। इस प्रकार MISO डेटा बिट 3 है, जिसे हम उपरोक्त विन्यास में अवॉड्यूड बताते हैं। इसी तरह SCK डेटा बिट 5 है, और इसी तरह।

मैंने इस तरह परीक्षण करने का प्रयास किया:

./avrdude -C avrdude.conf -carduino-ft232r -pm328p  -v

निश्चित अनुमतियाँ

मैं एक अनुमतियाँ त्रुटि जो फ़ोल्डर में एक फ़ाइल बनाने के द्वारा तय किया गया था मिल गया /etc/udev/rules.d/कहा जाता है 71-FTDI.rules। इसके अंदर है:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE:="0666"

आपके बोर्ड के लिए नंबर अलग-अलग हो सकते हैं। आपको विक्रेता और उत्पाद आईडी ढूंढनी होगी। उबंटू में आप कर सकते हैं lsusbऔर देख सकते हैं (अन्य चीजों के बीच):

Bus 003 Device 061: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
                       ^^^^ ^^^^

दो हेक्स संख्या पर ध्यान दें, जो नियम फ़ाइल में कॉपी हो जाती हैं।

ऐसा करने के बाद, सिस्टम को नियमों को फिर से लोड करने के लिए कहें:

sudo udevadm control --reload-rules

फिर नई अनुमतियों को नोटिस करने के लिए इसे प्राप्त करने के लिए एफटीडीआई बोर्ड को अनप्लग करें और फिर से भरें।

टेस्ट बोर्ड का पता लगाना

अंत में, ऊपर अव्रूड लाइन काम करती है और चिप को पढ़ती है:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: safemode: hfuse reads as DE
avrdude: safemode: efuse reads as FD

avrdude: safemode: hfuse reads as DE
avrdude: safemode: efuse reads as FD
avrdude: safemode: Fuses OK (E:FD, H:DE, L:FF)

avrdude done.  Thank you.

मैं एक ATmega328P में खामियों को दूर किया था।


उदाहरण एक डायवोलिनो से जुड़ा हुआ है

एक Atmega328P प्रोग्रामिंग

एक बार जब हम इसे प्राप्त कर लेते हैं तो आप सीधे एफटीडीआई बोर्ड को एक सीधी केबल के माध्यम से अपने लक्ष्य बोर्ड से जोड़ते हैं।


सारांश

आपके पास (और जो मेरे पास है) एफटीडीआई बोर्ड को AVR चिप्स के लिए ICSP प्रोग्रामर के रूप में उपयोग किया जा सकता है, जैसा कि ऊपर वर्णित है। इस प्रकार एक साधारण बोर्ड सीरियल कनवर्टर के लिए एक यूएसबी और आईसीएसपी प्रोग्रामर दोनों हो सकता है।

मुझे लगभग 5 डॉलर में ईबे पर इसी तरह के बोर्ड बिकते दिखाई दे रहे हैं, जो शायद काफी सस्ता प्रोग्रामिंग विकल्प है।


धन्यवाद निक। हाँ, Arduino फ़ोरम पर वह थ्रेड वह है जिसे मैंने अपने प्रश्न में संदर्भित किया था, लेकिन यह वास्तव में स्पष्ट नहीं था कि इसे कैसे उपयोग किया जाए - लेकिन यह उपयोगी रूप से X3 हेडर ब्लॉग को इंगित करता है। आपके द्वारा प्रदान किया गया दूसरा लिंक आगे भी उस विषय पर विस्तार करता हुआ प्रतीत होता है, उत्कृष्ट, धन्यवाद। हालाँकि, इस विशेष बोर्ड के लिए अभी भी कोई ब्लॉग नहीं लिखा गया है, जो कि अजीब है।
ग्रीनऑनलाइन

मेरा मानना ​​है कि यदि आप ऐसा करते हैं, तो आप USB डिवाइस के रूप में FTDI से बात कर रहे होंगे और अब ऑपरेटिंग सिस्टम के सीरियल पोर्ट API का उपयोग नहीं कर रहे होंगे, इसलिए अतिरिक्त सेटअप / ड्राइवर / अनुमति के मुद्दे हो सकते हैं जो किसी सिस्टम को होस्ट करने के लिए उपयोग कर रहे हैं यह। FTDI के अधिक सक्षम FT4232H / FT2232H / FT232H भागों को अक्सर JTAG इंटरफेस से अधिक उन्नत प्रोसेसर के रूप में उपयोग किया जाता है।
क्रिस स्ट्रैटन

3
संशोधित उत्तर देखें मुझे अपना बोर्ड ICSP प्रोग्रामर के रूप में काम करने के लिए मिला।
निक गैमन

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