Страница 2 из 2
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 14:12:51
Alexeyslav
Проверяй наличие сигналов до и после IC2, и потом возможно надо настроить скорость работы с программатором - понизить её, может данные по шине не успевают за актуальным состоянием если программатор не переводит микросхему в BITBANG-режим, что судя по всему и происходит.
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 16:17:53
kalobyte
вроде как в таком режиме мс эта работает только с виндовым драйвером
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 19:50:27
Alexeyslav
Наврятли ТОЛЬКО, скорей всего драйвер давным-давно отреверсили. Но если так, тогда точно надо снижать скорость.
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 20:31:56
acckyiboxxx
есть некоторые продвижения но к сожалению конечного результата пока достичь не удалось , но обо всем по порядку :
1) нарыл инфу что модули ftdi_sio и usbserial мешают нормальной работе , подгружаються каждый раз как втыкаю программатор , поэтому перед работой с ним приходиться в консоли прописывать (должно работать только на libftd2xx)
конфиг теперь такой :
Код: Выделить всё
programmer
id = "usbbit";
desc = "USBBit";
type = "ftdi_syncbb"; #"avrftdi"
connection_type = usb;
usbvid = 0x0403;
usbpid = 0x6001;
#usbvendor = "";
#usbproduct = "";
#usbdev = "";
#usbsn = "";
sck = 2; # RTS
buff = 3; # CTS
miso = 4; # DTR
reset = 5; # DSR
mosi = 6; # DCD
;
нумерацию выводов взял отсюда
http://www.ftdichip.com/Support/Documen ... itBang.pdf
при попытке шить как из консоли так и из эклипса имею следующее :
Код: Выделить всё
Launching /usr/bin/avrdude -pm48 -cusbbit -Pft0 -b1200 -vvv -Uflash:w:test_prj.hex:a
Output:
avrdude: Version 6.0.1, compiled on Sep 24 2013 at 00:57:26
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "/usr/local/etc/avrdude.conf"
User configuration file is "/root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : ft0
Using Programmer : usbbit
Overriding Baud Rate : 1200
avrdude: <unknown>: Pin is ok.
avrdude: VCC: Pin is ok.
avrdude: BUFF: Pin is ok.
avrdude: RESET: Pin is ok.
avrdude: SCK: Pin is ok.
avrdude: MOSI: Pin is ok.
avrdude: MISO: Pin is ok.
avrdude: ERRLED: Pin is ok.
avrdude: RDYLED: Pin is ok.
avrdude: PGMLED: Pin is ok.
avrdude: VFYLED: Pin is ok.
ft245r: spi bitclk 1200 -> ft baudrate 2400
avrdude execution aborted
скорость снизил как и советовали
последняя строчка говорит о том что я принудительно остановил процесс так как с течением времени ничего не менялось , и светодиод prog опять не загорался , со светодиодами история такая-же с чего все начиналось (((
тут мне кажеться что-то не так с фтшкой так как если-бы с ее стороны было все нормально то на cts появилась-бы 1 и светодиод загорелся-бы , в таком случае можно было-бы винить буффер но до него дело так и не доходит (остальные пины потыкаю осциллографом завтра)
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 21:26:44
Alexeyslav
А ты пробовал светодиоды зажигать? Просто из какой-то своей программы. Этими выводами ведь можно произвольно управлять.
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 21:33:22
acckyiboxxx
кажись дошло до меня в чем проблема , я идиот думал что ft232rl и ft232bm отличаються только типом корпуса но если обнаруженная мной информация верна это не так
http://microsin.net/adminstuff/hardware ... t245r.html , у ft232rl синхронный битбанг а у ft232bm асинхронный
остаеться надеяться что это лишь дефолтные значения и их можно поменять подредактировав код avrdude
надежду внушает эта дока
http://www.ftdichip.com/Support/Documen ... itBang.pdf
если точнее то функция FT_SetBitMode
если я правильно понял то 1 в случае rl включает асинхронный битбанг а в случае bm синхронный
http://www.ftdichip.com/Support/Documen ... Ft245R.pdf
у кого с инглишем все хорошо скажите возможно-ли тут все подправить или лучше раскошелиться на ft232rl
А ты пробовал светодиоды зажигать? Просто из какой-то своей программы. Этими выводами ведь можно произвольно управлять.
rx tx да а тот что на cts повешен нет так как не курил еще ман по фт-шной либе , соответственно накодить тоже ничего не мог
Re: проблемы с программатором
Добавлено: Пн сен 30, 2013 22:08:43
Alexeyslav
Как так? Это ведь стандартное устройство, работать с ним надо как с обычным коммуникационном портом.
Re: Программатор на FT232RL. Помогите разобраться.
Добавлено: Пт окт 04, 2013 15:59:49
Eugene.Negrobov
Я бы ради теста купил бы еще одну FT232 у какой-нибудь другой точки, чисто ради теста, а то ситуация что-то реально на брак смахивает.
Re: Программатор на FT232RL. Помогите разобраться.
Добавлено: Пт окт 04, 2013 16:05:19
exp131
Ага, заказал уже у китайцев по десятку у разных поставщиков. Там они раза в 4 дешевле, так что если даже и брак - не жалко.
Re: проблемы с программатором
Добавлено: Пн окт 07, 2013 01:15:42
acckyiboxxx
господа собрал в этот раз на ft232rl и даже без буффера отдает reset в микроконтроллер , отлично работает под линухой без всяких патчей дудки , вот лог прошивки для неверующих
Спойлер
Код: Выделить всё
Launching /usr/bin/avrdude -pm48 -cusbbit -Pft0 -b2400 -vvv -D -Uflash:w:test_prj.hex:a
Output:
avrdude: Version 6.0.1, compiled on Sep 24 2013 at 00:57:26
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "/usr/local/etc/avrdude.conf"
User configuration file is "/root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : ft0
Using Programmer : usbbit
Overriding Baud Rate : 2400
avrdude: <unknown>: Pin is ok.
avrdude: VCC: Pin is ok.
avrdude: BUFF: Pin is ok.
avrdude: RESET: Pin is ok.
avrdude: SCK: Pin is ok.
avrdude: MOSI: Pin is ok.
avrdude: MISO: Pin is ok.
avrdude: ERRLED: Pin is ok.
avrdude: RDYLED: Pin is ok.
avrdude: PGMLED: Pin is ok.
avrdude: VFYLED: Pin is ok.
ft245r: spi bitclk 2400 -> ft baudrate 4800
AVR Part : ATmega48
Chip Erase delay : 45000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 256 4 0 3600 3600 0xff 0xff
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
flash 65 6 64 0 yes 4096 64 64 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : ftdi_syncbb
Description : USBBit
Pin assignment : 0..7 = DBUS0..7
VCC = (not used)
BUFF = 3
RESET = 5
SCK = 2
MOSI = 6
MISO = 4
ERR LED = (not used)
RDY LED = (not used)
PGM LED = (not used)
VFY LED = (not used)
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9205
avrdude: reading input file "test_prj.hex"
avrdude: input file test_prj.hex auto detected as Intel Hex
avrdude: writing flash (246 bytes):
Writing | ################################################## | 100% 0.26s
avrdude: 246 bytes of flash written
avrdude: verifying flash memory against test_prj.hex:
avrdude: load data flash data from input file test_prj.hex:
avrdude: input file test_prj.hex auto detected as Intel Hex
avrdude: input file test_prj.hex contains 246 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.23s
avrdude: avr_read(): skipping page 4: no interesting data
avrdude: avr_read(): skipping page 5: no interesting data
avrdude: avr_read(): skipping page 6: no interesting data
avrdude: avr_read(): skipping page 7: no interesting data
avrdude: avr_read(): skipping page 8: no interesting data
avrdude: avr_read(): skipping page 9: no interesting data
avrdude: avr_read(): skipping page 10: no interesting data
avrdude: avr_read(): skipping page 11: no interesting data
avrdude: avr_read(): skipping page 12: no interesting data
avrdude: avr_read(): skipping page 13: no interesting data
avrdude: avr_read(): skipping page 14: no interesting data
avrdude: avr_read(): skipping page 15: no interesting data
avrdude: avr_read(): skipping page 16: no interesting data
avrdude: avr_read(): skipping page 17: no interesting data
avrdude: avr_read(): skipping page 18: no interesting data
avrdude: avr_read(): skipping page 19: no interesting data
avrdude: avr_read(): skipping page 20: no interesting data
avrdude: avr_read(): skipping page 21: no interesting data
avrdude: avr_read(): skipping page 22: no interesting data
avrdude: avr_read(): skipping page 23: no interesting data
avrdude: avr_read(): skipping page 24: no interesting data
avrdude: avr_read(): skipping page 25: no interesting data
avrdude: avr_read(): skipping page 26: no interesting data
avrdude: avr_read(): skipping page 27: no interesting data
avrdude: avr_read(): skipping page 28: no interesting data
avrdude: avr_read(): skipping page 29: no interesting data
avrdude: avr_read(): skipping page 30: no interesting data
avrdude: avr_read(): skipping page 31: no interesting data
avrdude: avr_read(): skipping page 32: no interesting data
avrdude: avr_read(): skipping page 33: no interesting data
avrdude: avr_read(): skipping page 34: no interesting data
avrdude: avr_read(): skipping page 35: no interesting data
avrdude: avr_read(): skipping page 36: no interesting data
avrdude: avr_read(): skipping page 37: no interesting data
avrdude: avr_read(): skipping page 38: no interesting data
avrdude: avr_read(): skipping page 39: no interesting data
avrdude: avr_read(): skipping page 40: no interesting data
avrdude: avr_read(): skipping page 41: no interesting data
avrdude: avr_read(): skipping page 42: no interesting data
avrdude: avr_read(): skipping page 43: no interesting data
avrdude: avr_read(): skipping page 44: no interesting data
avrdude: avr_read(): skipping page 45: no interesting data
avrdude: avr_read(): skipping page 46: no interesting data
avrdude: avr_read(): skipping page 47: no interesting data
avrdude: avr_read(): skipping page 48: no interesting data
avrdude: avr_read(): skipping page 49: no interesting data
avrdude: avr_read(): skipping page 50: no interesting data
avrdude: avr_read(): skipping page 51: no interesting data
avrdude: avr_read(): skipping page 52: no interesting data
avrdude: avr_read(): skipping page 53: no interesting data
avrdude: avr_read(): skipping page 54: no interesting data
avrdude: avr_read(): skipping page 55: no interesting data
avrdude: avr_read(): skipping page 56: no interesting data
avrdude: avr_read(): skipping page 57: no interesting data
avrdude: avr_read(): skipping page 58: no interesting data
avrdude: avr_read(): skipping page 59: no interesting data
avrdude: avr_read(): skipping page 60: no interesting data
avrdude: avr_read(): skipping page 61: no interesting data
avrdude: avr_read(): skipping page 62: no interesting data
avrdude: avr_read(): skipping page 63: no interesting data
avrdude: verifying ...
avrdude: 246 bytes of flash verified
avrdude done. Thank you.
avrdude finished
единственное что приходиться делать это ограничивать частоту до 2400 но даже при этом прошивка залетает быстро
если кому интересно как пустить все под линухой могу накатать статью , большей частью она будет стырена отсюда
http://www.simple-devices.ru/articles/7 ... -beginners но будут свои важные дополнения без которых эту тему заставить работать не получиться
ps: если статья требуеться стукните в лс
Re: Вопросы по программаторам на FT232
Добавлено: Ср окт 16, 2013 21:01:33
edm2007
Доброго времени суток.
Чудные дела творятся. Кому-то приходится скорость ограничивать, а у меня почему-то
вот этот программатор наоборот работает дико медленно. Мне конечно спешить некуда, но половина меги 8 за 10 минут на максимальной скорости - это все же долго. При этом, сам программатор определился сразу, в терминале работает без проблем, дудка выдает следующее:
avrdude -C avrdude.conf -c apu_2 -P ft0 -B 3000000 -p m8 -q
avrdude: BitBang OK
avrdude: pin assign -
MISO:4
SCK:2
MOSI:6
RESET:5
GATES:3
avrdude: drain OK
SET=> ft245r: bitclk 460800 -> ft baud 230400
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x1e9307
avrdude: safemode: Fuses OK
RESET ... OK
avrdude done. Thank you.
В общем и целом: все обнаруживается, стирается и шьется. Только медленно. Никто не сталкивался с подобным?
Re: Вопросы по программаторам на FT232
Добавлено: Ср окт 16, 2013 21:38:34
blackx
У меня вообще программатор на ft232 странно работает

Но шьет все ж побыстрее вашего.
Где брали avrdude? Попробуйте взять патченную отсюда
http://easyelectronics.ru/skorostnoj-av ... llera.html (файлы в конце статьи).
Вообще реализация программатора ftbb в avrdude не отличается качеством =(
попробуйте поиграться с флагом -B. К слову, не все значения туда вообще можно передавать - попробуйте все кратные числу 4800 в сторону увеличения например повыставлять. Ваше 3000000 дудка просто игнорит, это видно по выводу.
Bitbang - штука медленная и мутная. Я на ftbb забил, купил у китайцев USBASP. Шьет быстро, просто и без проблем.
Re: Вопросы по программаторам на FT232
Добавлено: Ср окт 16, 2013 21:47:33
edm2007
Дудку патченую из статьи и брал. Самодельным USBasp'ом я уже несколько лет шью, еще ни разу не подводил. А этот как игрушку собрал, интересно же.

При смене скорости возрастает время ожидания. Например, на 115200 поиск МК занимает уже 5 секунд (на трех мульенах около секунды).
Re: Вопросы по программаторам на FT232
Добавлено: Пн окт 21, 2013 13:07:59
edm2007
Всем привет.
Программатор реабилитирован. Дело было в FT232. Что интересно, микросхема абсолютно новая, вынута из блистера. Заменил на другую, и все прекрасно заработало. Скорость чуть ниже чем у USBasp, но тоже вполне неплохо (Attiny2313 под завязку где-то 3 - 4 секунды с верификацией).
Re: Вопросы по программаторам на FT232
Добавлено: Ср окт 23, 2013 22:57:16
DJ_Kiridza
Всем привета!
Подскажите, проектирую схему на АТМеге16 с FT232 для связи с компом.
Возникла мысля реализовать "встроенный программатор" на этой же FT232 заюзав свободные линии. Покурив гугл наткнулся на схемку программера указаного в топикстарте.
Но в статье загогулина: "
Но у этого программатора есть один минус — он не отдает линию RESET по завершении программирования."
Делать ручное переключение режимов "программирование/работа", как предлагает автор во втором варианте - не комильфо, - по ТЗ схема должна быть полностью управляема по USB!
Вопрос в следующем: кто собирал программер - что значит "не отдает линию RESET?" Она постоянно подтянута к нулю после прошивки, или как? Я так понимаю - это грабли со стороны ПО на компе, банальный "ресет FT232" должен освобождать все линии?!
Или все-же нужно танцевать с какой-нибуть CBUSn чтобы (через ключик) реализовать "временное замыкание" RI на RESET???

Зарание пасиб!
Re: Вопросы по программаторам на FT232
Добавлено: Чт окт 24, 2013 09:41:38
edm2007
Привет.
Я вот и собирал программатор с дополнительным буфером на 74HC125 (ссылку приводил на этой же странице чуть выше). По той схеме FT232 управляет выводом OE буфера, и после прошивки отключает вообще все линии программирования. Это меня полностью устроило. А вообще были схемы, где линия RESET отпускается программно...
Re: Вопросы по программаторам на FT232
Добавлено: Чт окт 24, 2013 12:50:24
DJ_Kiridza
А можно по-подробнее про схемы с програмним отпусканыем?
Re: Вопросы по программаторам на FT232
Добавлено: Ср окт 30, 2013 16:11:10
vdbvdb
DJ_Kiridza писал(а):А можно по-подробнее про схемы с програмним отпусканыем?
Всё довольно просто.
В случае с буфером типа 74HC244, вывод G (пины 2/19) выводим на один из выводов RT232RL (например, на RI) с подтяжкой на VCC.
Теперь по умолчанию буфер будет закрыт, а все его линии - в состоянии Z.
Так же, хорошо бы и выход буфера, соответствующий линии RESET подтянуть, но я это не делал, просто потому что уверен, что внутри схемы, чип в которой я прошиваю, RESET априори будет с подтяжкой.
Итак.
По умолчанию, буфер закрыт, все выводы в состоянии Z, а значит, на линии RESET будет высокий уровень (подтяжка либо на выходе из буфера, либо на самой схеме).
А когда avrdude что-то потребуется от МК, он устанавливает на RI низкий уровень, что открывает буфер и всё нормально пишется и читается в обычном режиме.
Единственное замечание - если нужна индикация активности, не надейтесь на режим RX&TX LED на выводах CSBUS у RT232RL.
Лучше взять один из трёх оставшихся свободных линий данных и использовать его.
Чтобы всё это заработало, в avrdude нужно будет указать параметр:
gates = 7; # (RI - это седьмой бит)
Я не уверен, что все avrdude про этот параметр знают, но у меня понимает, версия такая:
# $Id: avrdude.conf.in 916 2010-01-15 16:36:13Z joerg_wunsch $