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

 
 
> SAM926, простые программы
TigerSHARC
сообщение Jul 29 2010, 19:45
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Может кто нибудь знает ссылку где разжёвываются простые программы (мигаем светодиодом, "Hello World") или может сам пример приведёт (простите за наглость).

Изучаю сей контроллер в IAR. Интересует работы с внешними линиями ввода-вывода. Какие заголовочники включать, как обзываются регистры при написании программы на C, и т.д.

Просто как я вижу AVRовские фишки типа:

" #include "iom16.h"
.
.
.
PORTB = 0; // регистр ножек порта
.
.
.
"
для мигания светодиодами не прокатывают.
Здаётся мне всё намного сложнее.



Сообщение отредактировал TigerSHARC - Jul 29 2010, 19:59
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Drozd2
сообщение Oct 26 2010, 20:19
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 97
Регистрация: 19-11-09
Пользователь №: 53 743



Цитата
bootstrap проинициализировал всю необходимую перифирию, тогда какие модули и дефайны должно содержать приложение, если нужно например посредством printf вывестив DBGU-порт строку?

Ответ на этот вопрос довольно многоярусный.
bootstrap хорош для изучения своим небольшим размером. Чтобы им вывести строку с помощью printf, несложно найти в исходнике функцию DBGU(). Только радость от нее будет недолгая. Раз уж Вы взялись за 9260, то с инициализацией памяти придется разобраться.
При старте запускается программа из ROM процессора. Она умеет инициализировать DataFlash, EEPROM и NANDFlash. Если она их находит, читает вектор номер 6 из таблицы векторов прерываний, могу ошибиться в номере, в качестве размера, грузит программу того самого размера из первой найденной памяти во ВНУТРЕННЮЮ SRAM процессора и передает ей управление. Если в памяти чисто, или перемычка с ChipSelect снята, то ничего не находит, и выдает то самое >.
Та самая программа, загруженная в SRAM, уже может делать все, что захочет программист (но не всегда, что попросит (точнее, наоборот, шутка)). Для этого Atmel и сделал bootstrap.
bootstrap предлагается Atmelом как раз для упрощения жизни. Он имеет тот размер, который помещается во внутреннюю SRAM процессора, умеет инициализировать загрузочную память любого типа и прост в исходниках, что позволяет перенаправить его загружать приложение из любой доступной памяти по желанию. Размер загружаемого приложения теперь ограничен только размером ОЗУ. В дефайнах bootstrapа определяется участок памяти, в который грузится приложение, ну и, естественно, адрес запуска загруженного приложения.
Теперь погрустнее. Загруженное приложение должно повторно проинициализировать, как минимум, оперативную память. bootstrapовые функции остались уже недоступны. Но его исходный код можно использовать повторно. Что обычно и делается.
Теперь становится доступным все адресное пространство процессора. Можно брать пример с упоминавшегося выше диска, компилировать этот пример с опцией sdram и запускать. На этой стадии уже становятся актуальными sprintf.
Дальше, как вариант, можно запустить U-Boot и Linux.
И немного про геометрию размещения. Скажем, при существующей DataFlash и bootstrap, и приложение будут находиться в ней. Они, естественно, не должны пересекаться по адресам. При перепрошивке нужно зашивать их обоих. SAM-BA это умеет, но лучше для начала разнести их по адресам подальше. На размер одного-двух секторов памяти. Тогда можно будет править только приложение.

Сообщение отредактировал Drozd2 - Oct 26 2010, 20:29
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- TigerSHARC   SAM926   Jul 29 2010, 19:45
- - dimka76   Цитата(TigerSHARC @ Jul 29 2010, 23:45) М...   Jul 30 2010, 03:21
- - Drozd2   AVRовские фишки для моргания светодиодом прокатыва...   Jul 30 2010, 19:28
|- - TigerSHARC   Цитата(Drozd2 @ Jul 30 2010, 23:28) AVRов...   Oct 21 2010, 09:14
- - TigerSHARC   Спасибо за советы! Но вот вопрос: на плате, к...   Jul 31 2010, 10:43
|- - aaarrr   Цитата(TigerSHARC @ Jul 31 2010, 14:43) У...   Jul 31 2010, 11:56
- - TigerSHARC   to aaarrr - большущее спасибо. дела обстоят так:...   Aug 1 2010, 18:54
|- - aaarrr   Цитата(TigerSHARC @ Aug 1 2010, 22:54) вс...   Aug 1 2010, 21:09
- - TigerSHARC   Выполнил перед очисткой DataFlash "Enable Da...   Aug 1 2010, 21:48
|- - aaarrr   Цитата(TigerSHARC @ Aug 2 2010, 01:48) (S...   Aug 1 2010, 22:10
- - TigerSHARC   Почему же без MT-Link вижу что не грузиться ОС, а ...   Aug 6 2010, 19:45
- - Student Pupkin   TigerSHARC, как там успехи у Вас? А то читаю Ваши ...   Oct 22 2010, 18:43
|- - TigerSHARC   Цитата(Student Pupkin @ Oct 22 2010, 22:4...   Oct 22 2010, 20:21
|- - Student Pupkin   Цитата(TigerSHARC @ Oct 23 2010, 00:21) П...   Oct 22 2010, 20:43
|- - TigerSHARC   Цитата(Student Pupkin @ Oct 23 2010, 00:4...   Oct 23 2010, 08:03
- - TigerSHARC   Спасибо! не могли бы вы пояснить что означает ...   Nov 12 2010, 07:10
- - SII   Вы документацию по архитектуре ARM вообще и по кон...   Nov 18 2010, 14:58
- - DpInRock   Где-нибудь в начале стартапа напишите вот так. ...   Nov 18 2010, 17:38


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

 


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


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