Busel Roman 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба А вы попробуйте не только стереть, но и записать, и именно вближе к концу какую-нибудь часть флеши - это можно даже из оболочки AVR32Studio сделать. Из AVR32Studio пробовал писать, ошибку ту же выводит, только диапазон адресов соответствующий (например, Failed to erase flash sectors from 0x00400000 to 0x0040ffff.). Кстати, надеюсь, перед стиранием сектора с помощью доп.AVR предварительно подавали команду Sector Unlock? Конечно, Datasheet изучил вдоль и поперек, уже почти наизусть знаю. Перед тем, как на форум написал, неделю вдвоем с напарником отмучились. Ещё в списке команд есть Program Suspend/Resume, Program ID Entry/Exit... Возможно флешь при программировании вошла в какой-нибудь из режимов защиты. При выключении/включении питания Flash, все эти режимы сбрасываются, память переходит в режим Read: п.3.1 "The device powers on in the read mode..." Если верить складу ... ЭФО, то есть. Звонил туда - срок поставки 3-4 недели, стоит 5,53 у.е. А вообще, идею воткнуть в PCI платку с AVR можно развить - можно добавить туда новую микросхему флеши (а то и две или даже четыре)... Все было бы хорошо, если бы на этот самый PCI вывели A16...A21 от этой Flash. avr32program -v3 program -Fbin -O0x20000 -v -e -fcfi@0 filename.bin Попробовал. Начальный адрес менял - по всему адресному пространству. Размер файла менял. Содержимое файла менял. Ошибка та же: Failed to erase flash sectors from 0x... to 0x... Target execution timed out. Если можно, дайте пожалуйста ссылочку, где можно подробно почитать про команды avr32program, расшифровку всех возможных префиксов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Master 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба Из AVR32Studio пробовал писать, ошибку ту же выводит, только диапазон адресов соответствующий (например, Failed to erase flash sectors from 0x00400000 to 0x0040ffff.). Конечно, Datasheet изучил вдоль и поперек, уже почти наизусть знаю. Перед тем, как на форум написал, неделю вдвоем с напарником отмучились. Ну раз вдвоём, тогда я пас :laughing: Все было бы хорошо, если бы на этот самый PCI вывели A16...A21 от этой Flash.Вот я сейчас тупо смотрю на лист 2 из 18 - Top Level 2 (Document Number T0241, Rev. B1). Если я ничего не путаю, PCI - это тот самый разъём, и на него выведена вся внешняя шина, в том числе и адреса 0..25 (EBI_A[0:25]). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба ... PCI - это тот самый разъём, и на него выведена вся внешняя шина, в том числе и адреса 0..25 (EBI_A[0:25]). А теперь внимательно отыщите линии EBI_A[16...21, 23, 24]. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба Если можно, дайте пожалуйста ссылочку, где можно подробно почитать про команды avr32program, расшифровку всех возможных префиксов.Дык, >avr32program -h <- список опций >avr32program help commands <- список команд >avr32program help CMD <- сисок опций команды CMD Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба To 'singlskv' Точно, благодарю! Но хотелось бы все это иметь в отдельном файле, чтобы распечатать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Master 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба А теперь внимательно отыщите линии EBI_A[16...21, 23, 24]. Строго говоря, A16 и A17 присутствуют в виде EBI_B0 и EBI_B1, а вот остальных похоже нет :( Вот засада! :crying: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба Строго говоря, A16 и A17 присутствуют в виде EBI_B0 и EBI_B1 Что-то я Вас не понимаю. EBI_B0 и EBI_B1 используются вроде только для управления SDRAM и явно не соединены с линиями EBI_A16 и EBI_A17. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба To 'singlskv' Точно, благодарю! Но хотелось бы все это иметь в отдельном файле, чтобы распечатать. Да вобщем то, не за что. Ну а в один файл скинуть просто: >avr32program -h >avr32prog.txt >avr32program help commands >>avr32prog.txt >avr32program help program >>avr32prog.txt >avr32program help verify >>avr32prog.txt ну и так далее для всех комад З.Ы. На Вашем месте я бы поступил след образом: 1. проверил что при помощи avr32program можно записать данные в SRAM 2. Если с 1 все ок, написал бы маленькую прогу для стирания флеш которая запускается из SRAM. 3. собственно записать ее в SRAM и запустить. 4. индикацию работы проги светодиодами З.З.Ы. А вы кстати перед всеми манипуляциями с флеш не пробовали дать команду halt ? ИМХО, это вобще первое что нужно попробовать!!! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба На Вашем месте я бы поступил след образом: 1. проверил что при помощи avr32program можно записать данные в SRAM 2. Если с 1 все ок, написал бы маленькую прогу для стирания флеш которая запускается из SRAM. 3. собственно записать ее в SRAM и запустить. 4. индикацию работы проги светодиодами Идея хорошая, буду пробовать, а то может и SRAM дохлая. А вы кстати перед всеми манипуляциями с флеш не пробовали дать команду halt ? Пробовал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 12 сентября, 2007 Опубликовано 12 сентября, 2007 · Жалоба Идея хорошая, буду пробовать, а то может и SRAM дохлая.SRAM это та которая внутри MCU, она дохлой быть не может! (маловероятно) просто по пункту 1 вы сможете проверить что у Вас работает вся цепочка общения MKII - CPU. А SDRAM еще инитить нужно. Кстати, еще один тестик, пишите маленькую прогу которая инитит SDRAM, шьете ее в SRAM и запускаете, далее, с помощью avr32program пытаетесь прошить чего-нить в SDRAM. Этим Вы протестируете всю работу EBI. Удачи. P.S. Раскажите о результатах P.P.S Если у Вас есть ByteBlaster то можно просто попробовать шить им. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 13 сентября, 2007 Опубликовано 13 сентября, 2007 · Жалоба Думал про внешнюю SDRAM, по ошибке написал SRAM. Не совсем понимаю, 1) как нужно инициализировать SDRAM? 2) как можно прошить SDRAM через avr32program? В IAR в режиме DEBUG запустил программку из стандвртных примеров для STK1000. Бегущий огонь "бежит" нормально. P.S. ByteBlaster не имею. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Master 0 13 сентября, 2007 Опубликовано 13 сентября, 2007 · Жалоба Что-то я Вас не понимаю. EBI_B0 и EBI_B1 используются вроде только для управления SDRAM и явно не соединены с линиями EBI_A16 и EBI_A17.Данные линии, судя по всему, разделяются контроллером. Посмотрите описание на процессор, глава 16, рисунок 16-1: вверху справа будут ноги A16/BA0 и A17/BA1. Потом посмотрите схему Dautherboard AT32STK1002: стр.4, слева внизу, контакты разъёма J2A 187, 188. Можете просто мультиметр взять и прозвонить ноги на флешке и контакты разъёма PCI-like. Но всё это ведь - лишь припарки. Имея 18 адресных линий можно адресовать всего 256кБайт. Если очень нужна будет вся адресная шина, наверное придётся остальные отсутствующие линии тянуть проводом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 13 сентября, 2007 Опубликовано 13 сентября, 2007 · Жалоба Думал про внешнюю SDRAM, по ошибке написал SRAM. Не совсем понимаю, 1) как нужно инициализировать SDRAM? Aplication Note AVR32102 2) как можно прошить SDRAM через avr32program?точно так же как и в любую другую, просто запись по нужным адресам В IAR в режиме DEBUG запустил программку из стандвртных примеров для STK1000. Бегущий огонь "бежит" нормально.Значит IAR за вас все уже сделал :) По программированию/стиранию флеш есть пример в BSP, называется flash-upgrade Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 13 сентября, 2007 Опубликовано 13 сентября, 2007 · Жалоба Можете просто мультиметр взять и прозвонить ноги на флешке и контакты разъёма PCI-like. Действительно, если в STK1000 вставлена плата STK1002, то данные адресные линии соединяются между собой именно через STK1002. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Busel Roman 0 20 сентября, 2007 Опубликовано 20 сентября, 2007 · Жалоба По программированию/стиранию флеш есть пример в BSP, называется flash-upgrade Если можно, поподробнее, как запустить данный "пример" без оболочки Линукса. Мне кажется, что это не совсем пример - это больше похоже на патч функций работы с Flash под Линуксом. P.S. У Вас есть в наличии комплект STK1000? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться