Страница 1 из 9
AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 21:28:40
ELcat
Надоело как-то возиться с AVRками, захотелось мощщи

решил освоить ARM7. Но к сожалению в просторах инета нету столь простых и подробных статей по старту, как, например, для AVR или PIC контроллеров. При попытках попытать счастья на форумах, местные "профессионалы" отсылают обычно на google.ru или предлагают изучить 600 страничные мануалы. Видя также, что в своих скитаниях я не одинок, вот и решил создать сию тему. Поэтому тема, в первую очередь, посвящается таким же "чайникам", как и я.
Всё началось более года назад, прикупил парочку AT91SAM7S32, но так и пылились они в заветной коробочке. Основные вопросы были куда включить, и чем и как шить. В принципе схема платы Olimex практически сразу попалась на глаза, а вот насчёт программатора дела обстяли гораздо хуже. Было бы достаточно юнитов, которые не жалко потратить, с радостью бы купил готовый. Но и вы скорее всего забрели сюда по той же причине. По рекомендациям многих источников начал гуглить заветное слово Wiggler. Нарыл кучу вариантов, как похожих, так и с серьёзными отличиями. Но ни один человек не посоветовал, мол "я шью именно ВОТ ЭТОЙ схемой", поэтому чтоб не маяться с выбором, и исходя из здравого смысла, набросал свою. Кроме того купил на днях AT91SAM7S256 в виду того, что у 32х нет USB, а значит и возможности загрузки с помощья SAM-BA USB, кроме того начинать всё таки хотелось не с базовой модели, а так чтоб "с перспективами развернуться". Наконец отважился попытаться изЛУТить плату под этого зверька, именно этот момент я ране считал невозможным для "наколенных" технологий. Но всё выЛУТилось достаточно удовлетворительно, паял обычным "совковым"развязанным 220/36В паяльником с термостатированием, жало обычное, сточенное на искосок, диаметром около 3,5мм, без особых напрягов, правда некоторое количество сноровки в этом деле имеется.
Вот, собственно, что у меня получилось. Также выкладываю SL5 файлы желающим пропустить этап разработки схемных и конструкторских решений. Обратите внимание, Wiggler я сделал с 20pin разъёмом для совместимости с большинством атмеловских отладочных плат, кроме того он также должен быть совместимым с семейством ARM9 камней.
Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 22:27:38
Сериг
а чем шьются такие заерьки?
Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 22:59:03
ELcat
Итак, чего эта штуковина уже умеет? Фабрично камень чист. С обратной стороны платы установлена перемычка между ногой TST и +3,3В. Замыкаем, подаём питание, ждём 10 секунд, отключаем питание, снимаем перемычку. Такими не хитрыми манипуляциями из встроенной ROM памяти во FLASH память камня записывается загрузчик (бутлоадер) SAM-BA. Моя плата может питаться как от внешнего адаптера постоянного тока напряжением от 7 до 12-15В, так и от порта USB. Отныне при подключении кабеля USB к компу винда перестаёт ругаться на неизвестное устройство, а обзывает его атмеловской отладочной платой и предлагает свои услуги по установке драйвера. Соглашаемся. Если до этого вы уже скачали с атмеловского сайта и установили SAM-BA для win2k/XP/Vista, то в ней теперь появляется опция USB и возможна загрузка вашей отлаженной программы во Flash память чипа. Собственно я это увидел, обрадовался и за не имением отлаженной программы ничего грузить не стал. Далее я установил IAR_EW_ARM_5.50.1 и попытался приконнектиться к чипу при помощи Wiggler`а, но не тут то было. Я не буду описывать какими правдами-неправдами я искал способ, просто сделайте так. Вам понадобится вот этот
драйвер. В директории установленной среды IAR находим файл \arm\bin\jtag_bb.dll и копируем его в папку \common\bin\ . Далее распаковываем выше приложенный архивчик, желательно в корневую папку IAR (чисто для удобства), запускаем .exe файл, указываем ему путь к .sys файлу из того же архива, далее жмём кнопки stop -> uninstal -> instal -> start -> exit (!!!ЗАПОМНИТЕ!!! этот драйвер придется вот так вот "вручную" стартовать перед каждым запуском IAR, если комп перезагружался), теперь можно запускать сам IAR. Открываем какой-нибудь пример из папки примеров arm/examples/Atmel/at91sam7s-ek/ и в свойствах проекта выбираем вкладку Debugger, в строке Driver вместо Simulator выбираем Macraigor, во вкладке Macraigor в строке OSD Interface Device выбираем Wiggler, проверяем строку Port, если у вас их несколько, жмём Ok. Теперь можно нажать справа самую крайнюю зелёную стрелочку на панели инструментов, что означает Download and Debug или же Project и в вываливающемся меню Download and Debug, или же просто Ctrl+D

Если у вас всё правильно подключено, есть питание и не помешает злой Ктулху, то далее пойдёт процесс загрузки в Flash память чипа посредством JTAG и перед вами появится область отладки, в которой можно пошагать, натыкать точек останова и прочие радости JTAG отладки. Жмём остановку отладки и отключаем плату - чип прошит. Мне лично понравился пример usb-device-massstorage-project.
Вот, в принципе, и всё. Надеюсь, совместными усилиями будем двигаться дальше

Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 22:59:19
stas00n
ELcat, да ты целый development board наЛУТил. Смотрится монументально. Вероятно, ты виртуоз утюга (чуть не сказал - "ножа и топора"

). Я сейчас резистом пытаюсь сделать плату под HVQFN33 - принтерный шаблон уже не канает, придется типографский заказывать. Ну и как, работает? Светодиодом уже поморгал? Что дальше будешь делать на нем? Камень то дюже мощный, под какую задачу его планируешь обтачивать?
Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 23:01:52
ELcat
To Сериг Сори, долго писал, смотри во вложении второго сообщения.
Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 23:04:54
ELcat
To stas00n Ещё не моргал, планирую совокупить с ls020, так как на AVRке надоело его мучить, уж больно медленная связка. Есть желание тоже на резист перейти, да ещё бы научиться металлизацию переходных отверстий делать.
Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 23:09:11
neonix
Старт с АРМами на коленке не так уж и сложно как может показаться на первый взгляд. Сам начал освоение с самодельной отладочной платы под AT91SAM7S64 и самодельного Jlink (кстати советую, на порядок лучше фиглера

) мощности после AVR казалось нереально много, но через время понял что ошибся - всё в SAM7s хорошо да только оперативки очень мало

, на задаче с использованием LCD,SSC и USB память жрёться феноменально быстро (её даже на экранный буфер фиг хватает). Сейчас захотелось чего то действительно мощного, теперь облизываюсь на ADI BlackFin там есть внешний контроллер SDRAM и нереальная мощь, жаль очень дорого

Re: AT91SAM7 старт с коленки
Добавлено: Вс окт 31, 2010 23:21:47
ELcat
Я тож зырю в сторону STM32, но пока планирую с этим разобраться. Кстати, поделись схемкой/прошивкой J-Link, только просьба теми, которые у тебя реально работают.
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 00:16:34
Сериг
Elcat спасибо!
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 00:45:00
neonix
ELcat писал(а):Я тож зырю в сторону STM32, но пока планирую с этим разобраться. Кстати, поделись схемкой/прошивкой J-Link, только просьба теми, которые у тебя реально работают.
Это надо перерисовывать с листка схемку, завтра постараюсь сделать ибо его найти надо еще

я просто не нашел нужных буферов и убрал их из схемы заменив резисторами по 100 ом (там с этим тоже не всё просто).
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 09:59:20
stas00n
ELcat писал(а):Я тож зырю в сторону STM32, но пока планирую с этим разобраться. Кстати, поделись схемкой/прошивкой J-Link, только просьба теми, которые у тебя реально работают.
Ну для STM32 самому паять отладку - это онанизм.
STM32-Discovery стоит порядка 400р. Грех не купить.
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 13:33:24
krolaka
ELcat, да вижу потрудились хорошо

я тоже уже имею платку но нету жтага но очень большая проблема с компилячтором гцц никак настроить не могу

а всякие иары и кейлы не привычны разобратся сложно

пока что софт заливал через SAM-BA но я две сутки сидел с кейлом чтобы замигать светодиодом и то не очень хорошо вышло ... что порекомендуете из компиляторов?

Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 14:22:07
neonix
Использую GCC не вижу никаких трудностей при работе с ним, используйте готовые makefile от различных примеров в сети, и всё будет получаться

Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 14:33:02
Arlleex
плата разведена ОЧЕНЬ коряво... Где фильтрующие конденсаторы около корпуса ИС?
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 19:49:15
ELcat
Всем привет! Блин, сдох инет на работе, отписую всем по очереди.
neonix Постарайся, пожалуйста, найти схемку. Там контроллер какой стоит, прошивать надо?
stas00n Да, я слыхал о ките за $9.90, там и USB-JTAG на борту сразу. Но у нас в Киеве я пока их не нашёл, а так купил бы без раздумий.
krolaka Извиняюсь, но ничего не могу посоветовать. Я сам знаком только с CodeVision AVR, но я решил работать в IAR, просто показалось, что эта среда более популярна в нете.
Stalker46 Да, согласен, х..ня полная, лучше не смотри! Эту плату я вообще-то не на конкурс делал, и выкладывал её здесь не ради вы..бона. Можешь лучше - пожалуйста. Есть толковая мысль - скажи, а флудить топал бы ты лучше в МЯУ...!
Тем не менее платка работает. Кстати, забыл сказать, Wiggler я подключаю через полутораметровый самодельный шлейф удлинитель LPT (25 жил соединяют одноименные пины двух разъёмов), скорость связи не снижал, работает нормально и так.
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 20:26:51
Arlleex
ELcat писал(а):Stalker46 Да, согласен, х..ня полная, лучше не смотри! Эту плату я вообще-то не на конкурс делал, и выкладывал её здесь не ради вы..бона. Можешь лучше - пожалуйста. Есть толковая мысль - скажи, а флудить топал бы ты лучше в МЯУ...!
Тем не менее платка работает. Кстати, забыл сказать, Wiggler я подключаю через полутораметровый самодельный шлейф удлинитель LPT (25 жил соединяют одноименные пины двух разъёмов), скорость связи не снижал, работает нормально и так.
Только потом от Ваших же уст будут возникать вопросы - "Сделал как надо - а не работает"
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 20:34:29
ELcat
Stalker46 Блин, ну сказано же, работает

Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 21:09:57
neonix
Контроллер там AT91SAM7S64, прошиваеться через SAMBA один раз, а дальше определяеться как Segger Jlink. Работает на скоростях до 12 мбит\сек, после виглера как пересесть с трехколесного велосипеда на сверхскоростной болид

Схема есть оригинальная с буферами, просто их хрен найдеш. Могу выложить её.
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 21:55:29
BCluster
Платка прелесть ) чудеса ЛУТа ) хотя сам уже давно не занимаюсь деланием плат, ужасно не люблю )
Тоже вот сейчас решил разобратсья с ARM, правда взял Cortex M3 от NXP. Завтра должна приехать отладочная платка и jlink с ебея
Кстати jlink штука дешевая и покупается у китайцев легко ) подумал что не буду мучаться с программатором пущай будет заводской (:
Re: AT91SAM7 старт с коленки
Добавлено: Пн ноя 01, 2010 22:37:25
kris95
Stalker46 писал(а):Только потом от Ваших же уст будут возникать вопросы - "Сделал как надо - а не работает"
Блин, идит в мяу флуди. Сам наверно нифига толком не можешь сделать, зато по3,14деть мастер.
Сделай свою платку - посмотрим, всё ли ты учтёшь, а кондёр не так уж и обящательно ставить, книжки надо не тупо читать, а вникать в смысл.