Страница 68 из 132

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пн ноя 15, 2010 18:20:42
максим-ка
DX168B писал(а):Не PCI плату случайно?
именно её ) за полтос)

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пн ноя 15, 2010 18:37:48
DX168B
Значит так, чтобы плата корректно работала с различными программаторами, нужно прошарить настройки BIOS компа. А именно проверить в биосе - нет ли там настройки, касающейся LPT порта и если есть, то его надо отключить полностью. (Часто бывает такое, что на материнке есть встроенный контроллер LPT, но гнездо отсутствует на ней[не припаяно]) этим действием мы освободим адрес 0х378 (888) для твоей платы.
Так же, перед тем, как лезть в БИОС, можно проверить параметры твоего порта с платы в диспетчере устройств. Параметры должны быть примерно такими как на моём скриншоте.
Изображение

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пн ноя 15, 2010 18:38:45
DiGiCat
В новой версии AVR Studio поддержку LPT-порта убрали..
DX168B писал(а):(Часто бывает такое, что на материнке есть встроенный контроллер LPT, но гнездо отсутствует на ней[не припаяно])
Тогда можно просто разъем вывести на корпус.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пн ноя 15, 2010 18:44:41
максим-ка
ну блин по этой части я нуб , но постараюсь.
а если все примерно так как на скрине будет (я ещё не устанавливал эту плату :)) )?
DX168B, может перейдём в аську ?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пн ноя 15, 2010 18:47:48
DX168B
Если есть отверстия для порта, то ещё повезло, а если только группы ножек для какого-то там неизвестного шлейфа, то придётся труднее. В документации к материнке, крайне редко указывают эти сведения. Приходится лопатить гугл и то нет надежды на что-нибудь подходящее.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 00:09:41
avreal
С кирилицей в путях и с номером LPT всё нормально, программатор запустился, увидел адаптер, засинхронизировался с микроконтроллером, так что все советы на эти темы мимо. А остальное сейчас пошагово разберём, чтобы в следуюший раз меньше рассказывать
qwert писал(а):avreal/WIN32 - AVR controllers programmer by Redchuk Alexandr
v1.28r5 (Oct 11 2010 20:02:13) http://real.kiev.ua/avreal
bug-reports, suggestions and so on mail to avreal@real.kiev.ua
Command:
-p1,9600 +90S2313 -o4000 -as -4 -n -w -c D:\AVR-projects\tutorial\output\hexfile.hex -%
warning: forced LPT cycle time will be ignored
Что за 9600 и откуда взялось?
Это же не COM-порт. В старых версих avreal без автоопределения скорости работы LPT под windows можно было задать время одного обращения в микросекундах, например
-p1,1.5
-p1,0.75
Это давно не нужно и avreal сообщил, что он проигнорировал данное чило (и очень хорошо, опираться в рассчётах на 9600 микросекунд обращения было бы весело).
% LPT write cycle 1.20us
% Atmel adapter for STK*00 found
% STK adapter mode
% MCU oscillator frequency = 4.0MHz
% setup 0.52us, hold 0.52us
% actual SCK frequency 277kHz
Adapter enabled
Замерянное время обращения к LPT 1.2мкс. Нормальный набортный LPT.
Адаптер найден, т.е. перемычки определения адаптера в наличии. Заявлено 4МГц тактирования микроконтроллера, что, с учётом 4-кратного снижения частоты SPI и небольшого запаса даёт требование не короче 0.52мкс от выставления сигнала на MOSI до перепада SCK и от перепада до новой смен данных на MOSI. Это дало бы немного меньше мегагерца SPI, но LPT наложил свои ограничения и вышло 277 кГц.
% Reset
% PgmOn reply FF FE 53 00
% Synchronised after 1 try
% GetID reply 00 30 00 00
% GetID reply 00 30 00 01
% GetID reply 00 30 00 02
% Read ID: 0x000102
Device connected, but not recognised, ID: 0x000102 (looks as protected)
Lock state unknown
Микроконтроллер с первой попытки распозна коанду входа в программирование, идентификатор считался как 000102.
Как я уже говорил, у залоченного 90s2313 именно так и должно быть. У более поздних контроллеров уже можно бло прочесть сигнатуру залоченного чипа.
А вот тут облом.
Can't read number of erases from unknown or locked chip
Number of erases forced to 1
Can't continue
В командной строке был ключ -n по которому avreal ведёт счётчик стираний контроллера. Было сделано ещё в те времена, когда флеш в AVR-ках по паспорту переписывался «всего» тысячу раз. По этому ключу avreal читает последние два байта из флеша, стирает кристалл, записывает увеличенное на 1 значение назад в старшие два байта флеша.
Само собой, из залоченного кристалла счётчик прочесть невозможно. Вот он и выругался.

Уберите -n из командной строки (или где там соответствующая галка в avrealshell).

Добавлено:
— А вот ключа -e там, кажется, не хватает.
— Я у себя в эксперименте и старой версией, 1.27r4, стирал залоченную 90s2313. И без -4. Но за питанием нужно следить, при слишком высоком 90s2313 не стирается.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 00:15:51
avreal
DX168B писал(а):его надо отключить полностью.
...
этим действием мы освободим адрес 0х378 (888) для твоей платы.
Ни разу с таким не сталкивался. В том смысле, что даже если LPT на мамке вообще нет, PCI-LPT плата, если она не сделана специально для посадки на старые стандартные адреса, садится на какие-то большие адреса, зависящие от того, чего и сколько в компе напихано. У меня дома сейчас она садится на E800, на работе на B800, бывало и другое.
avreal-у это отродясь не важно — нужно узнать адрес (вот как раз по приведенному скриншоту) и указать его в командной строке, например, -pE800.
А вот номер LPT для каких-то программ может и нужно освободить, но для них важна не занятость адреса 0x378, а занятость номера LPT1.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 00:32:35
DX168B
Ну, просто хотелось, чтобы было по стандартному, но если программатор позволяет указать конкретный адрес порта, то тогда извраты с изменением адреса на адрес по умолчанию можно считать лишними.
И конечно, не все контроллеры шин и чипсеты умеют перебрасывать большие диапазоны адресов с устройства на устройство. На своих компах я могу менять присвоенные устройствам адреса и линии прерываний. А вот у знакомого это дело ограничено. Главное уследить, чтобы небыло конфликтов с другими устройствами.
но для них важна не занятость адреса 0x378, а занятость номера LPT1.
Верно, если эти программы работают на основе WinAPI (CreateFile(); и т.д.), а не через посторонний драйвер.
Например DLLка inpout32.dll может спокойно вклиниваться в работу порта, даже если он занят другой программой и даже в WinXP.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 15:51:06
qwert

Код: Выделить всё

C:\Documents and Settings\Кирилл\Рабочий стол\Кирилл\avrealshell>avreal32.exe -p
1 +90S2313 -o10000 -as -% -e -w -c D:\AVR-projects\tutorial\output\hexfile.hex


avreal/WIN32  -  AVR controllers LPT programmer by Redchuk Alexandr
v1.25rev6 (Dec 30 2007 17:00:01)  http://www.ln.ua/~real/avreal
bug-reports, suggestions and so on mail to avreal@real.kiev.ua

Command:
 -p1 +90S2313 -o10000 -as -% -e -w -c D:\AVR-projects\tutorial\output\hexfile.he
x
        % LPT base port 0x378
        % assume that LPT data writes not faster then 1uS
        % Atmel adapter for STK*00 found
        % STK mode
        % osc = 10000kHz -> setup=1, hold=1,1
        % Reset
        % PgmOn reply  0xFFFE5300
        % Synchronised after 1 try
        % GetID reply  0x00300000
        % GetID reply  0x00300001
        % GetID reply  0x00300002
        % Read ID: 0x000102
Device connected, but not recognised, ID: 0x000102 (looks as protected)
Lock state unknown
        % Erase reply  0x00AC8000
Device erased
        % Reset
        % PgmOn reply  0x00AC5300
        % Synchronised after 1 try
        % GetID reply  0x00300000
        % GetID reply  0x00300001
        % GetID reply  0x00300002
        % Read ID: 0x000102
Device connected, but not recognised, ID: 0x000102 (looks as protected)
Can't continue
Reset pin released
Adapter disabled

C:\Documents and Settings\Кирилл\Рабочий стол\Кирилл\avrealshell>pause=null
Для продолжения нажмите любую клавишу . . .
что опять за фигня?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 16:12:31
AlexFisher
qwert писал(а): что опять за фигня?
А Вы именно 90S2313 пытаетесь шить? или attiny2313? В последнем случае строка +90S2313 неправильная. Ну или контроллер залочен напрочь и поможет только параллельный программатор.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 16:19:57
qwert
AlexFisher писал(а):поможет только параллельный программатор.
byte blaster подойдет?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 16:30:20
AlexFisher
Байт-бластер - последовательный программатор на параллельном порту!
Почитайте тему Параллельный программатор

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Вт ноя 16, 2010 18:35:54
avreal
AlexFisher писал(а):А Вы именно 90S2313 пытаетесь шить? или attiny2313? В последнем случае строка +90S2313 неправильная.
Ну или контроллер залочен напрочь и поможет только параллельный программатор.
Если бы там была tiny2313, то выдача была бы приблизительно такая:
...
% GetID reply 00 30 00 1E
% GetID reply 00 30 00 91
% GetID reply 00 30 00 0A
% Read ID: 0x1E910A
Device connected, tiny2313|tiny2313A detected
% Read Lock command 58 00 00 00, reply 00 58 00 FC
Chip locked - reading and programming disabled
Requested <90s2313>, detected <tiny2313|tiny2313A>
Can't continue
Залочить 90s2313 от последовательного прорамматора можно только фьюзом SPIEN, но
• он недоступен для последовательного программатора
• в случае такой залочки кристалл вообще не откликается, поэтому вместо
% Synchronised after 1 try
% GetID reply 0x00300000
% GetID reply 0x00300001
% GetID reply 0x00300002
% Read ID: 0x000102
было бы
Can't resync
В данном случае поведение полностью соответствует «обычной» залочке кристалла лок-битами
For the AT90S2313(1) they are:
1. $000: $1E (indicates manufactured by Atmel).
2. $001: $91 (indicates 2 Kb Flash memory).
3. $002: $01 (indicates AT90S2313 device when signature byte $001 is $91).
Note:
1. When both Lock bits are programmed (Lock mode 3), the signature bytes cannot be read in serial mode. Reading the signature bytes will return: $00, $01 and $02.
с учётом ошибки в микросхеме (пришлось компакт 2002 года откопать для цитаты).
4. Lock Bits at High VCC
On some devices, the lock bits will not erase at high VCC. In this situation, it will not be possible to reprogram the devices when the lock bits are set.
Problem Fix/Workaround
Lower VCC below 4.0V before performing a chip-erase. Then the device will unlock, and it will be possible to reprogram the device at any VCC.
Об той ошибке было упомяуто несколько страниц назад.

qwert, может, дело и не в этом, но данный случай очень похож на то, что когда-то попило кровушки, и в проверке несколько дней назад при питании 5.2 В 90s2313 вела себя точно так же, как и у Вас, а при питании 4.8 уже стиралась (в моей практике были пороги от 4,2 до 4,8В, при 5В не стиралась залочка ни у одной).
Опять прошу убедиться, что во время программирования напряжение питания не выше 4В. Учтите, что в момент программирования LPT может слегка подтянуть питание.

Re:

Добавлено: Чт ноя 18, 2010 06:29:38
ssvd
Sailanser писал(а):avr123.nm.ru
Как поглядел ты работал с Proteus в чем может быть глюк, делаю код в протеусе все работает как надо шью в микроконтроллер не работает не фига.
может фьюзы неправильно выставляешь?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Чт ноя 18, 2010 22:09:47
chezetmobile
собрал программатор по данным из обучалки, подключил, скомпилировал, при запуске prog.bat вылетает ошибка(скрин ниже)
поиск результатов не дал
Как быть далее?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Чт ноя 18, 2010 22:29:27
avreal
О, а что за драйвера стоят и под какой системой? Небось переименованные inpout32 под 64-битной?

Скачайте свежий avreal, он теперь при остутствии в библиотеке DLportIO.dll функции блочной записи в порт эмулирует такую функцию своим циклом побайтовой записи.

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Чт ноя 18, 2010 23:43:15
Сериг
кто нибудь подскажите плз,тини 2313 питалово 5 вольт программа cvavr вклюгчаю порт что б светик моргал , а он зараза на 1 четвертую яркости мигает в чем проблема то???транзюки не хочу ставить так как конструкция и так должна быть маленькой.... помогите плз кстати на атмеге 48 тоже самое .... плзь очень срочно нужно!благодарю!!! :cry: :cry: :cry:

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пт ноя 19, 2010 00:15:55
avreal
Сериг писал(а):кто нибудь подскажите плз,тини 2313 питалово 5 вольт программа cvavr вклюгчаю порт что б светик моргал , а он зараза на 1 четвертую яркости мигает в чем проблема то???
Порт на выход настроен?
Или светодиод pull-up-ом включается? (хотя тогда не 1/4 а 1/40 яркости будет).

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пт ноя 19, 2010 13:01:37
qwert
подскажите пожалуйста, можно ли ,не меняя прошивку, заменить attiny 2313 на at90s2313?

Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Добавлено: Пт ноя 19, 2010 13:08:59
chezetmobile
вновь ругается((( че опять я делаю не так?