реклама на сайте
подробности

 
 
> Как правильно выставит фьюзы в Ponyprog?, PonyProg, AVR
Roma12
сообщение Aug 25 2012, 10:21
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 1-08-12
Из: Харьков
Пользователь №: 72 978



Есть такая проблема, не могу разобратся как правильно выставить галочки в PonyProg. По некоторым источникам говорится что галочка - значит "задействован", в других наоборот - галочка - значит "отключен". Совсем запутался ))
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 22)
izerg
сообщение Aug 25 2012, 10:41
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 531
Регистрация: 1-02-05
Из: Украина, Киев
Пользователь №: 2 342



Два способа победить проблему:
1 - выбросить коня, и взять что-либо нормальное. AVREAL, например.
2 - прочитать внимательно, что такое "галочки", и на что оно влияет.

Go to the top of the page
 
+Quote Post
Roma12
сообщение Aug 25 2012, 11:07
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 1-08-12
Из: Харьков
Пользователь №: 72 978



Цитата(izerg @ Aug 25 2012, 14:41) *
Два способа победить проблему:
1 - выбросить коня, и взять что-либо нормальное. AVREAL, например.

А чем конь плох вобще?

Цитата(izerg @ Aug 25 2012, 14:41) *
Два способа победить проблему:

2 - прочитать внимательно, что такое "галочки", и на что оно влияет.

а как вы считаете? я уже задолбался искать если чесно, но мне пока важно использовать именно Pony Prog, современем я соберу лучше программатор и перейду на что то более надежное
Go to the top of the page
 
+Quote Post
Палыч
сообщение Aug 25 2012, 11:47
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Roma12 @ Aug 25 2012, 14:21) *
По некоторым источникам говорится что галочка - значит "задействован", в других наоборот - галочка - значит "отключен".

В Пони галочка означает "Запрограммирован", т.е. значение соответствующего fuse равно нулю.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Aug 25 2012, 13:02
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Roma12 @ Aug 25 2012, 14:07) *
А чем конь плох вобще?

Ничем. Отличный программатор. Гораздо проще в использовании, чем AvReal. Дело не в программаторе, а в том, что перед выставлением "галочек" вы обязаны проштудировать соотв. разделы документации, с тем, чтобы выставить "галочки" не как попадет, а как нужно именно вам. И программатор здесь решительно ни при чем. Кстати, Пони сам же и показывает, что по умолчанию "checked" = "programmed" (bit = 0) ...
Go to the top of the page
 
+Quote Post
Roma12
сообщение Aug 25 2012, 17:26
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 1-08-12
Из: Харьков
Пользователь №: 72 978



Цитата(Палыч @ Aug 25 2012, 15:47) *
В Пони галочка означает "Запрограммирован", т.е. значение соответствующего fuse равно нулю.


Например здесь вот http://www.getchip.net/wp-content/uploads/...313-FuseBit.png
наоборот сделано да? судя по красной надписи снизу

Цитата(kovigor @ Aug 25 2012, 17:02) *
Ничем. Отличный программатор. Гораздо проще в использовании, чем AvReal. Дело не в программаторе, а в том, что перед выставлением "галочек" вы обязаны проштудировать соотв. разделы документации, с тем, чтобы выставить "галочки" не как попадет, а как нужно именно вам. И программатор здесь решительно ни при чем. Кстати, Пони сам же и показывает, что по умолчанию "checked" = "programmed" (bit = 0) ...

ну это понятно. просто в сети блуждают слухи про ненадежность ПОНИ. Я вобще при прошивке не изучаю так подробно фюьзы на контролер, а просто заливаю прошивку в МК как указал создатель данного устройства. Иногда не понятно как выставить фьюзы если программатор совсем не тот

Сообщение отредактировал Roma12 - Aug 25 2012, 17:27
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 25 2012, 17:46
Сообщение #7


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(Roma12 @ Aug 25 2012, 21:22) *
Например здесь вот http://www.getchip.net/wp-content/uploads/...313-FuseBit.png
наоборот сделано да? судя по красной надписи снизу


"Checked = unprogrammed!". Ну и глупо написано! Причем тут программирование, если фузы так и сяк программируются, только на разные значения?
Писать надо то, чему соответствует галочка (check) - нулику или единичке, т.е. как у таблиц в даташите!

Между прочим, в даташите по этому поводу под таблицей есть мелким шрифтом набранная фраза: "For all fuses ”1” means unprogrammed while ”0” means programmed". После стыковки этой фразы с пояснением к программатору наступает ... размягчение мозгов sm.gif, когда уже перестаешь понимать, ставить эту чертову галку или нет. Но насколько я представляю PonyProg, то галка у него соответствует нулику, т.е. "запрограммированному" состоянию. Вот вся эта катавасия и является той причиной, по которой PonyProg сгубила так много МК.

На самом деле суть здесь проста - все таблицы установки параметров в даташитах приведены в нуликах и единичках! И это есть именно то, что соответствует ВЫБРАННОМУ режиму (и CKSEL в том числе). И эти нулики и единички, как раз, и есть то, что требуется запрограммировать. Однако дебилизм понипроговского интерфейса заставляет сперва перевести единицы и нулики в слова "programmed" и "unprogrammed" по сноске под таблицей, а потом повторно перевести "programmed" и "unprogrammed" в "сhecked" и "unchecked". Причем оба раза вопреки здравому смыслу sm.gif.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Aug 25 2012, 18:05
Сообщение #8


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Xenia @ Aug 25 2012, 20:46) *
"Checked = unprogrammed!". Ну и глупо написано!

Совершенно сапоги. Потому что написано с точностью до наоборот, т.е. checked==programmed==0

Еще.
Цитата(Xenia @ Aug 25 2012, 20:46) *
Вот вся эта катавасия и является той причиной, по которой PonyProg сгубила так много МК.

Там-таки что-то в коде не так, потому что avreal никогда ничего не губил, на том же stk200. laughing.gif
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 25 2012, 18:15
Сообщение #9


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(_Pasha @ Aug 25 2012, 22:05) *
Там-таки что-то в коде не так, потому что avreal никогда ничего не губил, на том же stk200.


Avreal действительно ничего не губит, поскольку фузы задаются в нем числовым способом, в полном соотвествии с таблицами даташита. Например:
CKSEL = 0 to F - Clock selection
т.е. переводишь двоичное число из выбранной строки таблицы в 16-ричную форму - его и пишешь. А в большинстве случаев и того нет, когда параметр программируется единственным битом:
avreal.exe +90USB647 -fcksel=e, ckdiv=1, bodlevel=2, sut=0, hwbe=1, jtagen=1 ...
- всё предельно ясно и понятно, без необходимости разбирательства в том, "programmed" это или "unprogrammed".
Go to the top of the page
 
+Quote Post
Палыч
сообщение Aug 25 2012, 18:52
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Xenia @ Aug 25 2012, 21:46) *
Причем тут программирование, если фузы так и сяк программируются, только на разные значения?
Этот термин придумали разработчики AVR... Что же нам делать? Приходится идти у них на поводу, чтобы была однозначность в терминах...

Цитата(Xenia @ Aug 25 2012, 21:46) *
...все таблицы установки параметров в даташитах приведены в нуликах и единичках!
Тут Вы слегка погорячились. В подразделе DS "Fuse bits" во всех таблицах рядом с единичками-ноликами написано в скобочках programmed-unprogrammed.

Цитата(_Pasha @ Aug 25 2012, 22:05) *
Там-таки что-то в коде не так...
Всё нормально в Пони с кодом... Разработчики Пони пошли у Atmel"а на поводу - отталкивались от programmed/unprogrammed, решив, что галка должна соответствовать - programmed (т.е. нулевому значению fuse). Тогда как у большенства людей стойкий стереотип: галка = единица. Отсюда и загубленные по невнимательности МК...


Цитата(Xenia @ Aug 25 2012, 22:15) *
...т.е. переводишь двоичное число из выбранной строки таблицы в 16-ричную форму - его и пишешь. А в большинстве случаев и того нет, когда параметр программируется единственным битом...
Ну, вот видите - как сложно... Проще из Студии fuses программировать. Я, например, так и делаю. Там, вообще "словами" написано - переводить из разных систем счислений ничего не надо!
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Aug 25 2012, 18:55
Сообщение #11


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Палыч @ Aug 25 2012, 21:52) *
Отсюда и загубленные по невнимательности МК...

Каждый верит в свою историю. Но я несколько десятков аврок спасал самопальным параллельным программатором... он паялся только с целью шить меги 8 и 16, оказалось, что еще и выставить D9E1 sm.gif
ЗЫ невнимательностью там и не пахло, чисто проблема при прошивке фузов... и резистор по SCK был ни при чем.

Сообщение отредактировал _Pasha - Aug 25 2012, 18:57
Go to the top of the page
 
+Quote Post
Палыч
сообщение Aug 25 2012, 19:08
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(_Pasha @ Aug 25 2012, 22:55) *
....спасал самопальным параллельным программатором...
К моему счастью JTAG'у работающий генератор не нужен biggrin.gif
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Aug 25 2012, 20:27
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата
Тогда как у большенства людей стойкий стереотип: галка = единица.
Позвольте уж с Вами не согласиться - галка стойкий стереотип =программировать. А вот, что там запишется 0 или 1 мне лично по барабану. Эта разница ощутима для тех , кто создает программатор сам. И если после работы с тем или иным программатором МК "накрывается медным тазом" - прямая вина разработчика программатора.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Aug 25 2012, 21:09
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Палыч @ Aug 25 2012, 22:08) *
К моему счастью JTAG'у работающий генератор не нужен biggrin.gif

Вы уверены, что не нужен (для АВР)?
В тех нескольких случаях когда неправильно прошивались фузы (например, от External clock-а которого нет), приходилось припаивать RC-на соотв. вход, а после ставить фузы программатором.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Aug 26 2012, 05:14
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(_Артём_ @ Aug 26 2012, 01:09) *
Вы уверены, что не нужен (для АВР)?
Да. Другое дело - с ошибочной установкой источника тактирования ещё и JTAG отключить. Тогда - "ой"! Но, если JTAG используется для программирования, то с помощью JTAG изменить fuse JTAGEN - невозможно.
Go to the top of the page
 
+Quote Post
Roma12
сообщение Aug 26 2012, 18:05
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 1-08-12
Из: Харьков
Пользователь №: 72 978



Цитата(Xenia @ Aug 25 2012, 21:46) *
"Checked = unprogrammed!". Ну и глупо написано! Причем тут программирование, если фузы так и сяк программируются, только на разные значения?
Писать надо то, чему соответствует галочка (check) - нулику или единичке, т.е. как у таблиц в даташите!

Между прочим, в даташите по этому поводу под таблицей есть мелким шрифтом набранная фраза: "For all fuses ”1” means unprogrammed while ”0” means programmed". После стыковки этой фразы с пояснением к программатору наступает ... размягчение мозгов sm.gif, когда уже перестаешь понимать, ставить эту чертову галку или нет. Но насколько я представляю PonyProg, то галка у него соответствует нулику, т.е. "запрограммированному" состоянию. Вот вся эта катавасия и является той причиной, по которой PonyProg сгубила так много МК.

На самом деле суть здесь проста - все таблицы установки параметров в даташитах приведены в нуликах и единичках! И это есть именно то, что соответствует ВЫБРАННОМУ режиму (и CKSEL в том числе). И эти нулики и единички, как раз, и есть то, что требуется запрограммировать. Однако дебилизм понипроговского интерфейса заставляет сперва перевести единицы и нулики в слова "programmed" и "unprogrammed" по сноске под таблицей, а потом повторно перевести "programmed" и "unprogrammed" в "сhecked" и "unchecked". Причем оба раза вопреки здравому смыслу sm.gif.

Все у меня уже с этими ноликами и единичками едит крыша!!! laughing.gif короче пони буду менять иначе не видать мне просвета )) Хотя в принципе понятно, то что если галочку ставить на unprog то это противоположно prog! тоесть нолик меняется с единицей
Go to the top of the page
 
+Quote Post
izerg
сообщение Aug 27 2012, 05:36
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 531
Регистрация: 1-02-05
Из: Украина, Киев
Пользователь №: 2 342



Цитата(izerg @ Aug 25 2012, 13:41) *
Два способа победить проблему:
1 - выбросить коня, и взять что-либо нормальное.
2 - прочитать внимательно, что такое "галочки", и на что оно влияет.

Цитата(Roma12 @ Aug 26 2012, 21:05) *
Все у меня уже с этими ноликами и единичками едит крыша!!! (IMG:style_emoticons/default/laughing.gif) короче пони буду менять иначе не видать мне просвета )) Хотя в принципе понятно, то что если галочку ставить на unprog то это противоположно prog! тоесть нолик меняется с единицей


Два дня потеряно впустую.
Как показывает практика - "не осиливает" начинающий фьюзы. Хочется веть спаять 3 детальки, вшить прошивку и радоваться моргающему светодиоду, а тут еще разбираться с чем то... sm.gif

Go to the top of the page
 
+Quote Post
hd44780
сообщение Aug 27 2012, 06:09
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Меняйте пони, не меняйте - дело, конечно, Ваше, но вдуматься и понять фьюзы всё равно придётся. Иначе Вы далеко не уедете.

В пони галочка включена - бит programmed (==0), выключена - unprogrammed (==1). Это написано прямым текстом в том окне. И, кстати, на 100% соответствует терминологии атмеловских даташитов rolleyes.gif .
Поэтому, если Вам угодно ругаться, ругайтесь не на пони, а на атмеловцев, придумавших эту "инверсную" терминологию с вытекающим из неё туманом. Хотя и она отнюдь не взята с потолка, т.к. для любых флэшей и прочих ПЗУ чистая, незапрограммированная (unprogrammed) ячейка всегда содержит 0xFF. Такова технология. Привыкайте.
А пони губит только невнимательных людей, у которых руки голову обгоняют.

Я приложил пример для ATMega32. CKSEL= 0100 - внутренний генератор 8MHz, SUT=10 - Slow rising power, CKOPT=1 и т.д.

Единственный недостаток поника, на мой взгляд, - это отсутствие в схеме генератора. И генерить частоту портом он тоже не умеет.
Посему будьте осторожны с CKSEL=0000 (все 4 галки включены, это внешний генератор, а не кварц!!!!). Я один раз ошибся sad.gif , пришлось переделывать под AVReal кажется, т.к. он может генерить частоту на пине LPT порта.
Потом всё равно ушёл на пони. ИМХО, удобнее, чем писать какие-то командные строки или применять разношерстные самопальные GUI программы-надстройки над тем же avr-dude и родственными вещами. Но это уже дело вкуса и личных предпочтений - кому как sm.gif ....
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
izerg
сообщение Aug 28 2012, 07:14
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 531
Регистрация: 1-02-05
Из: Украина, Киев
Пользователь №: 2 342



Прикрепленное изображение

Оконо программирования AVR Студии.
Мне гораддо проще выставить настройки подписаные текстом, чем "выковыривать" их для каждого нового процессора из документации.
В студии все настройки для всех процессоров прописаны, с выходом нового камня не придется ждать, пока разработчики коня соизволят его добавить sm.gif

Единственное преимущество коня -его "универсальность". Для радиолюбителя, повтояющего чужие конструкции не нужно ставить кучу разных IDE разных производителей.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Aug 28 2012, 09:01
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(hd44780 @ Aug 27 2012, 09:09) *
Меняйте пони, не меняйте - дело, конечно, Ваше, но вдуматься и понять фьюзы всё равно придётся. Иначе Вы далеко не уедете.

В пони галочка включена - бит programmed (==0), выключена - unprogrammed (==1). Это написано прямым текстом в том окне. И, кстати, на 100% соответствует терминологии атмеловских даташитов

Согласен. Дело не в Пони. Дело в элементарной невнимательности.
P.S. Никак не пойму, почему AvReal до сих пор не обзавелся GUI ...
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 28 2012, 13:06
Сообщение #21


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(kovigor @ Aug 28 2012, 13:01) *
P.S. Никак не пойму, почему AvReal до сих пор не обзавелся GUI ...


GUI у AvReal не будет никогда! - Принципиальная позиция автора. sm.gif
Go to the top of the page
 
+Quote Post
ReAl
сообщение Aug 28 2012, 13:50
Сообщение #22


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



1111493779.gif Категорически заявляю, что я никому не запрещаю писать GUI оболочку к avreal !!! 1111493779.gif

Его и у avrdude нет, как я понимаю :-) К avrdude отдельным проектом есть.
К avreal тоже когда-то avrealshell был написан, но, насколько я понимаю, проект давно замер.

Мне, как я уже не раз писал, всегда хватало существующих TUI (DOS, редактор QEdit, по Alt-F9 при необходимости перекомпиляция и зашивка микроконтроллера) и GUI (MED, NetBeans, Code::Blocks, ...)
Выглядит это уже четырнадцать лет так:
В Makefile проекта
Код
...
MCU = atmega64
F_CPU=7372800
# fuses for avreal
FUSES = m103c=1,wdton=1,jtagen=1,cksel=F,ckopt=0,sut=1,boden=0,bodlevel=1
AVREAL_OPT=-n -az
...
...
common_makefiles=$(PROJ_SRCTOP)/makefiles
include $(common_makefiles)/gcc-avr.mak
include $(common_makefiles)/avreal.mak

avreal.mak
Код
ifndef AVREAL_PORT
AVREAL_PORT = 1
endif

ifndef AVREAL_ADAPTER
AVREAL_ADAPTER = b
endif

AVREAL := avreal "-a$(AVREAL_ADAPTER)" "-p$(AVREAL_PORT)" +$(MCU)

ifndef AVREAL_FREQ
ifdef F_CPU
AVREAL_FREQ  := $(F_CPU)
endif
endif

ifdef AVREAL_FREQ
AVREAL_FREQ_SW  := -o$(AVREAL_FREQ)hz
endif

.PHONY : program prg_final fuses verify lock erase reset
#
program : $(TRGPGM)
    $(AVREAL) $(AVREAL_OPT) $(AVREAL_FREQ_SW) -e -wp $^ -v
#
fuses:
    $(AVREAL) -o50 -wp -v -f$(FUSES)
#
ifdef FUSES
verify: $(TRGPGM)
    $(AVREAL) $(AVREAL_FREQ_SW) -v $^ -f$(FUSES)
else
verify: $(TRGPGM)
    $(AVREAL) $(AVREAL_FREQ_SW) -v $^
endif
#
lock:  $(TRGPGM)
    $(AVREAL) $(AVREAL_FREQ_SW) -v -l2 $^
#
erase:
    $(AVREAL) $(AVREAL_FREQ_SW) -e
#
reset:
    $(AVREAL)  $(AVREAL_FREQ_SW)

На домашнем компьютере
Код
$ echo $AVREAL_ADAPTER
FT2232H=avreal-f32ha_a.cfg
$ echo $AVREAL_PORT
d=Dual RS232-HS A
$
На работе что-то другое.

Тот же Code::Blocks настроен на работу с внешним Makefile и Tools:Program вызывает make program

Если мне кто-то объяснит, зачем мне GUI, если я в редакторе изменяю строку, жму «горячую клавишу» и зашиваю проект в кристалл, я еще подумаю (на самом деле, иногда подмывает на чём-то не сильно нужном освоить wxpy, чтобы при необходимости уже освоен был, но недосуг).

Е если кому-то нужно, так см.рис 1 первую строку. Я свою часть работы сделал :-)


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Sep 5 2012, 11:55
Сообщение #23


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Roma12 @ Aug 26 2012, 21:05) *
Все у меня уже с этими ноликами и единичками едит крыша!!! laughing.gif короче пони буду менять иначе не видать мне просвета )) Хотя в принципе понятно, то что если галочку ставить на unprog то это противоположно prog! тоесть нолик меняется с единицей

Я думаю, что за два дня можно было догадаться сначала прочесть (это в любом случае неразрушающая операция) понипрогом имеющиеся по умолчанию фузы, и тут же достичь просветления.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 12:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01613 секунд с 7
ELECTRONIX ©2004-2016