Сколько не искал, ни где не нашёл полной инструкции по прошивке через SAM-BA , от и до.
Поэтому пишу подробно здесь. Думаю кому-нибудь будет полезно.
Делал на компьютере в windows XP и на ноутбуке в windows 7. Действия везде одинаковые, и ошибки при неправельных действиях то
же одинаковые.
1) Что есть :
1.1 Keil
1.2 Плата с таким функционалом:
At91SAM7S64
Кварц 18.432МГц(с другим работать не будет)
RC ячейчка на ноге PLL , такая же как в документации на отладочную плату LDM-SAM7S(без неё работать не будет)
USB pull-up резистор подключен к +питания (хотя в документации на процессор сказано, что должен быть подключен к PA16)
Джамперы на ногах ERASE , TST , которми можно подтянуть ноги к +питания
2) Генерация файла BIN
В KEIL в опциях проекта вкладка User , строка Run User Program After Build , Run #1 пишу
C:\Keil\ARM\BIN40\fromelf.exe --bin -o "keil2.bin" "keil2.axf"
кде keil2 - название проекта, соответственно keil2.axf название файла, котрый после компиляции
появляется в папке проекта и из которого fromelf.exe делает keil2.bin
Левее строчки нужно почтавить галочку.
3) Установка SAM_BA
Взял SAM-BA 2.11 for Windows с сайта Атмела
http://www.atmel.com/tools/SAM7S-EK.aspx4) Запуск загрузчика в процессоре
Включаю питание процессора
Жду >10c
Замыкаю джампер ERASE
Жду >10c
Размыкаю джампер ERASE
Жду>10c
Отключаю питание
жду >10c
Включаю питание
Жду>10c
Замыкаю джампер TST
Жду >10c
Размыкаю джампер TST
Жду >10c
Отключаю питание
жду >10c
Включаю питание
Жду>10c
Втыкаю разъём в USB . Компьютер находит новое устройство.
5) Установка драйвера
Драйвер нужно выбрать вручную. Он в той папке, куда установился SAM-BA
C:\Program Files\ATMEL Corporation\sam-ba_2.11\drv
6)Програмирование
6.1 Повторяю действия П4) . Их нужно повторить перед каждым новым запуском SAM-BA, даже если устройсто есть в списке устройств и как
будто работает.
(как правило достаточно только сбросить питание и передёрнуть USB разъём)
У меня на компьютере работает только если подключать к usb контроллеру, а если к тем usb разъёмам что на материнской плате
то нет.
6.2 Жму CTRL+ALT+DEL
В диспетчере задач ищу sam-ba.exe . Если нахожу- закрываю.
Почему-то sam-ba.exe иногда остаётся в списке задач после предыдущего программирования и закрытия.
И если она там осталась, новая попытка программирование не удастся. При нажатии connect вылезет ошибка Error in Startup Scriph
Наблюдаю это и в XP на компьютере и в 7 на ноутбуке.
6.3 Запускаю SAM-BA
В появившемся маленьком окне выбираю AT91SAM7S64 , USBserial/com и жму connect
6.4 В открывшемся большом окне, в двух одинаковых местах указываю
Adress 0x100000
Size 0x10000
Левее кнопки Sent file выбираю свой бинарник, и жму Sent file .
6.5 Во время прошивки вылезает два сообщения, в обеих жму ОК
После прошивки жму Compare send file with memory
Если сообщений об ошибке не вылезло-прошивка удалась.