Petka
-
Постов
1 438 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные Petka
-
-
Кабель менял, и пробывал на 2х других компьютерах -на них ещё хуже, почти всегда не детектится.
Вот это уже нехороший признак.
На 99% дело в ft232 или её обвязке.
Кварц у FT тоже попробывал сейчас заменить -не помогло. Поэтому как эксперемент хочу включить напрямую от ком порта, но не ясно нужна ли инверсия. Если нет, то я подключю через программатор Громова, там сигнал mosi уже тянется к tx ком порта, а на rx перекину miso, вот и готовый адаптер. А если нужно инвертировать, тогда на 75232 что нибудь спаяю."инверсия" нужна.
-
Спасибо за советы.
В общем поменял мегу8 на мегу88 -симптомы не изменились(( так же без проблем самопрошилось, и так-же глючит.
Из этого делаем вывод, что дела не в меге и не в прошивке.
....Я снял осцилограммки для наглядности. С ног tx и rx FT232BM Кстати на их выводах всё время лог.1, а активный получается лог.ноль. Так и должно быть?
...
Судя по картинке с частотами всё в порядке.
Да, между символами UART будет высокий уровень.
Что можно ещё посмотреть? Уж всё перепахал.. единственное что не менял, эту саму FT и её кварц.1) Попробуйте поменять USB кабель. (кабель должен быть с экраном и с ферритовыми кольцами рядом с разъёмами)
2) Попробуйте воткнуть программатор в другой USB порт. Или лучше совсем в другой компьютер и повторить эксперименты.
Petka, а может мне попробовать подрубить мегу напрямую в ком-порт? Только не знаю, надо ли инвертировать сигналы..Напрямую нельзя. Разные логические уровни. Для согласования уровней КОМ порта и UART контроллера можно применить микросхемы max232 или их функциональные аналоги.
-
Собрал на ft232bm ,меге8 (без букв), кварц 14.7456 Прошивка 8 версии. Печатка оригинальная из архива на первой странице.
......
Ничего не помогает.(( Что-делать посоветуете, мегу8 менять??
Прошу прощения за долгую паузу. Был в отпуске.
Перед заменой меги:
1) Обновите драйвера ft232.
2) Протестируйте связь по виртуальному КОМ порту. Отсоедините выводы TX и RX микросхемы ft232 от меги. Закоротите их друг на друга. Проверьте терминалом, что всё что вы отсылаете в виртуальный КОМ порт приходит обратно без искажений.
3) проверьте частоту генерации кварца. (осциллом)
4) проверьте длительность бита при приёме и передаче на RX и TX.
-
"1","0", прошит-не прошит, запрограммирован, не запрограммирован, инвртирован...
Черт ногу сломит, я совсем запутался....
Где галки то ставить надо в AVRDude ?
Первый раз вижу такую картинку.
Судя по надписям там есть поле "HEX". В это поле можно напрямую значения фузов писать. (значения фузов были где-то раньше по теме).
-
Как прошивать контроллер с помощью USB-Petka через AVRStudio 5?
Нет выбора, проект написан именно для AVRStudio, переделывать некогда.
В самом AVRStudio пытаюсь добаваить в качестве программатора STK500 - не видит его система.
ЧТо делать?
Драйвера стоят?
Виртуальный компорт видится?
-
прошу прощения я вчера выложил скрин с этим ключем из w7x64, вот скрин из xp х32
....
Судя по картинкам есть несколько вариантов:
1) есть непропаи/закоротки в цепях UC_MOSI, UC_MISO, UC_SCK, перемычку X2-X4.
2) проверить питание меги в программаторе.
-
-
пишет что не видит, делаю вот такой строкой avrdude -p atmega8 -c stk500_by_petka -P \\.\com1 -i 10 -B 10 -b 9600 -U flash:w:atmega8_73728.hex -U hfuse:w:0xDC:m -U lfuse:w:0xD7:m, в конфу прописал то что здесь пишут, узб сериал висит на ком1 9600 в настройках, может атмега не подходит ?
1) Проверьте положение перемычки программирования.
2) Добавьте к параметрам avrdude "-v -v" (без кавычек) и повторите. Вывод avrdude скопируйте сюда.
-
здравствуйте, подскажите собрал вашу плату на atmega8a-ua, понипрог не видит ее выдает ошибку -24, изначально пробовал в w7x64, сейчас поставил хп х32, разницы никакой, все время ошибка -24, при считывании fuse, дрова устанавливаются без проблем на узб-ком, собирал две платы все одно и тоже
Попробуйте первоначальную прошивку сделать с помощью avrdude.
-
Какие ИАРы какие GCC ? Я на ассемблере всё пишу.
....
Если пишете на асме, то тем более можете стек растить "вниз".
-
Нужно выделить область под стек.
Много - жалко памяти.
Мало ...
Посчитать все возможные прерывания и pushы я просто не в состоянии.
Пока способа лучше чем постоянный анализ указателя в самом частом и самом высокоприоритетном прерывании ни чего не придумал.
Может существуют еще какие либо методы выбора оптимального размера стека?
Используйте GCC. В нём куча растёт "вверх", а стек "вниз" с вершины памяти. Размер стека вообще указывать не надо.
-
...
...под линем работаю. Openocd обязательно патчить иначе SWD работать не будет....
патчить ничего не надо и так работает из коробки.
-
И еще раз вопросы:
1. versaloon делает вид, что он STLink и понимает все, что делает ST-LINKIII-KEIL.dll?
нет
2. Укажите, пожалуйста, путь на прошивку.http://vsprog.googlecode.com/svn/trunk/
Из этих исходников собираются прошивки для программаторов.
3. Если можно, краткое руководство, как прошить STLink процессор, сидящий на ST32Fxxx-Discovery, прошивокй из п.2.Я прошивал другим отладчиком.
-
инициализация портов и SPI
RCC->AHBENR |= RCC_AHBENR_GPIOAEN | RCC_AHBENR_GPIOBEN; //Тактирование портов A, B //Линини SPI1 (Master) //PA12(MOSI), PA11(MISO), PA5(SCK), PA4(NSS) - AF, Push-Pull, AF5(SPI1) GPIOA->MODER |= GPIO_MODER_MODER12_1 | GPIO_MODER_MODER11_1 | GPIO_MODER_MODER5_1 | GPIO_MODER_MODER4_1; //Alternate function GPIOA->OTYPER &= ~(GPIO_OTYPER_OT_12 | GPIO_OTYPER_OT_11 | GPIO_OTYPER_OT_5 | GPIO_OTYPER_OT_4); //Push-Pull GPIOA->AFR[1] |= (5<<16 | 5<<12); //PA12 = AF5, PA11 = AF5 GPIOA->AFR[0] |= (5<<20 | 5<<16); //PA5 = AF5, PA4 = AF5
......
Однозначно у вас не настроены порты на максимальную скорость.
Проверил у себя на плате. Осциллограммы совпадают в вашим скриншотом.
Попробуйте установить правильные значения в регистр GPIOA->OSPEEDR.
P.S. Что-то типа:
GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR11_0 | GPIO_OSPEEDER_OSPEEDR11_1 |GPIO_OSPEEDER_OSPEEDR12_0 | GPIO_OSPEEDER_OSPEEDR12_1 |GPIO_OSPEEDER_OSPEEDR5_0 | GPIO_OSPEEDER_OSPEEDR5_1 |GPIO_OSPEEDER_OSPEEDR4_0 | GPIO_OSPEEDER_OSPEEDR4_1;
-
-
Да, с этим все ОК
Теперь при подключенном программаторе к устройству устройство программируется или нет?
-
1.39 В при подключенном, около 0 при отключенном МК.
При подключенном программаторе светодиод стабильно горит?
-
Кстати, а эта перемычка обязательна? (помечена красной стрелкой на картинке)
Обязательна.
P.S. Большой полигон "сеточкой" это "земля" (GND). Мультиметром напряжения надо измерять от него (чёрным щупом тыкать в него)
-
Действительно логично)
С подключенной схемой - 3.21 В
С отключенной схемой - 4.57 В
Ищите закоротки/сопли в районе этих цепей. При отключенном программаторе от схемы в этой точке напряжение должно быть близко к нулю.
-
А куда мультиметром ткнуть, чтобы замерить? R8 и R9 перемычкой соеденены
Очевидно, в перемычку =)
-
1) Да, есть питание, беру с программатора. Подтяжка RESET есть, 10 кОм. МК ATmega16.
2) R8=220 кОм, R9=100 кОм.
Какое напряжение между R8 и R9 при подключенном устройстве и без него?
-
1) подано ли питание на программируемый контроллер? Есть ли подтяжка линии RESET на программируемой плате?
2) какой номинал резисторов R8/R9 ?
-
В схеме программатора или программируемой микросхемы?
В схему программатора.
А что это за вывод Vref? Я только AREF знаю.Да, это вывод AREF. Номер пина 20.
И еще, я неправильно построил вопрос. Я имел ввиду, что основная проблема в том, что программатор не подключается к программируемому МК.Конденсатор отвечает за механизм определения подключения программатора к программируемому контроллеру.
-
....
Все заработало в 6 студии, еще раз скачал прошивку в отдельную папку и по новому прошил на маленькой скорости.
Отлично.
...заметил такую особенность, светодиод 6 раз мигает, но постоянно сразу не горит. А вот если подержу за ISP панельку, то загорается. Скажите пожалуйста, в чем может быть проблема? Я уверен, что вы с таким сталкивались и не раз, очень нужно ваше компетентное мнение!Припаять конденсатор 0,1 мкф на землю с вывода контроллера Vref.
AvrUsb500 by Petka. продолжение
в AVR
Опубликовано · Пожаловаться
В "режиме самопрограммирования" ft232 работает только в части управляющих сигналов (CTS, RTS и т.п.) а обмена по RX/TX нет. Это может объяснить работоспособность только в режиме самопрограммирования. Попробуйте поменять FTшку.