Про це на форумі Arduino є нитка - у когось було подібне питання.
Я знайшов схему (внизу), яка не призначена для цієї дошки, однак штифти заголовків позначені так само, як ви знайшли, тому вона правдоподібно схожа.
Здається, що заголовок використовується для "Синхронного режиму розриву бітів", як це задокументовано: Режими вибивання бітів для FT232R та FT245R (Примітка до застосування AN_232R-01, Довідковий номер документа: FT_000339)
Насправді ви можете налаштувати цей заголовок для програміста SPI, як описано, наприклад, у програмісту FT232R Bitbang .
Я склав тест, оскільки в ящику моїх частин був аналогічний табло:
У ньому було передбачено 6-контактний заголовок, подібний до вашого. Перевернувши дошку, ми можемо побачити, що вони були позначені точно так само, як і ваші:
Я припаяв до заголовка (жовтого кольору, щоб бути послідовним), даючи мені це:
Я додав білу крапку для позначення штифта 1 (видно на краю), тому я підключаю кабель правильно.
Коли я намагався використовувати дошку, я отримав це повідомлення від avrdude:
avrdude: помилка: немає підтримки libftdi або libusb. Встановіть libftdi1 / libusb-1.0 або libftdi / libusb та запустіть конфігурувати / зробити ще раз
Отже, його треба було скласти з нуля! Я використовую Ubuntu 14.04, якщо ви намагаєтесь слідувати далі. :)
Завантажити avrdude
Перейдіть на сайт 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
Складіть avrdude
Тепер ми робимо avrdude після вилучення архіву та переходу до його папки:
./configure --enable-libusb --enable-libftdi
make
Знайдіть правильну конфігурацію
Всередині avrdude.conf
файлу, який постачається з avrdude, я знайшов (після деякого розмірковування), здається, це правильний запис:
# 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)
;
Зображення шпильок на номери працює так ... З цього PDF-файлу щодо режиму розбиття бітів у нас є ця таблиця з синім відмітками:
Цифри посилаються на бітове число (тобто в діапазоні від 0 до 7) у байті даних "бітовий удар". З попередньої схеми ми бачимо, що, наприклад, MISO на заголовку ICSP підключений до CTS на FT232RL. Таким чином, MISO є бітом даних 3, про який ми говоримо avrdude у наведеній вище конфігурації. Аналогічно 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"
Номери можуть залежати від вашої дошки. Потрібно знайти постачальника та ідентифікатор товару. В Ubuntu ви можете зробити lsusb
та побачити (серед іншого):
Bus 003 Device 061: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
^^^^ ^^^^
Зверніть увагу на два шістнадцяткових числа, які копіюються у файл правил.
Після цього скажіть системі перезавантажити правила:
sudo udevadm control --reload-rules
Потім відключіть і відключіть плату FTDI, щоб вона помітила нові дозволи.
Виявлення тестової дошки
Нарешті, рядок avrdude вище працює і читає чіп:
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.
Приклад підключений до Diavolino
Як тільки ми досягли цього, ви просто підключіть плату FTDI до цільової дошки за допомогою прямого кабелю.
Підсумок
Ви маєте плату FTDI (та ту, яку я маю) можна використовувати як програміст ICSP для мікросхем AVR, як описано вище. Таким чином, проста плата може бути як USB-послідовним перетворювачем, так і програмістом ICSP.
Я бачу подібні дошки, що продаються на eBay приблизно за 5 доларів, так що це, мабуть, досить дешевий варіант програмування.