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

 
 
> Вразумите по SAM7S
MSprut
сообщение Nov 21 2007, 07:45
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 225
Регистрация: 25-04-06
Из: Украина, Луганск
Пользователь №: 16 476



Долгое время работал с АТ90 и Atmega AVR, но вот пришел день, когда появилась необходимость ставить ARM. В проекте есть ЖКИ 320х240 с тач-панелью и кусок автоматики. Если делать на меге, то придется ставить 2 проца - один на ЖКИ, один на автоматику и вот я решил поставить SAM7S256, но... Начитавшись всяких описаний и форумов увидел что не все так сказочно. Много новых, непонятных для моего мозга наворотов, типа ремапа, регистров, которые туда-сюда между режимами бродят и прочего бутора. Использовать планировал компилятор IAR, но загрузив пару примеров не смог провести для себя параллель между Atmega и ARM-ом. Мозг пытается найти привычные вещи, а что-то их нету. Я бы эту тему не поднимал, если бы не сжатые сроки для проекта - до января нужно чтобы он хоть как-то начал жить, и всю обвеску, кроме проца, уже наваял, готовлюсь плату развести, а с самим процем в ступоре. И Мегу ставить не хочется, потому что для ЖКИ не смогу ничего путнего в неё впихнуть и не знаю сколько мне понадобится для освоения SAM7S256. Короче в голове полная каша. Не могу понять что нужно делать, а что не нужно чтобы все это сразу заработало, как на меге, т.е. создал проект, подключил заголовичники, создал пару функций и чтобы это сразу завелось. Куда что ремапить нужно или не нужно и т.д. Может кто из уважаемых форумчан растолкует мне чего я не могу понять в ARM-е, хотя бы для того чтобы определится ставить этот проц или забить на все и ставить две меги с внешней памятью и т.д, потому что не реально за 1 месяц заставить ARM как-то работать? Буду очень признателен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zhevak
сообщение Nov 21 2007, 10:43
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065



Наверно я ретроград.

Будь я на Вашем месте, я бы все-таки выбрал реализацию на том, что знаешь хорошо. И вот почему.

Постулат №1. Вашему заказчику (т.е. тому, кто платит Вам деньги), на сколько я понял из вашего сообщения, без разницы на чем будет построен девайс -- на АРМе-ли, на АВРке-ли. Ему нужен конечный результат. Заказчик платит за конечный результат.

Постулат № 2. Ваша цель -- заработать деньги. Ну так и зарабатывайте! Ничто Вам не мешает.

Нехватает "прыгучести" АВР-ки, возьмите две, три штуки, назначьте им конкретные задачи и свяжите их по какой-нибудь шине. Выиграете и по времени разработки, и по скорости работы устройства в целом.

Что АВР-ки, что АРМ-ы -- стоят сейчас копейки, соизмерьте их стоимость со стоимостью своего рабочего часа. А времени, как я понял, у Вас -- месяц. Ну и на чем вы сэкономите? На паре микросхем? Помните, старые туфли ноги не трут, а Вам предстоит ответственный забег за деньгами. Что Вы выберите?

Если Вам не важен результат, на деньги Вы не повязаны, тогда смело выбирайте АРМ. Освоите новый камень.

И еще. Не надо смотреть на мир АРМов глазами АВР/i51/i8080/i86. Это абсолютно другой мир. Разница между мирами даже не в разрядности и тактовой частоте, а совсем в друом. Пока Вы сами не поработаете с той и с другой архитектурой, пока не познаете ту и другую философию, Вы не будете в состоянии сделать правильный выбор.

Искренне желаю удачи Вам!

Сообщение отредактировал zhevak - Nov 21 2007, 10:55


--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 21 2007, 12:21
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(zhevak @ Nov 21 2007, 12:43) *
Будь я на Вашем месте, я бы все-таки выбрал реализацию на том, что знаешь хорошо. И вот почему.
Категорически не согласен. Если человек имеет достаточно опыта, чтобы реализовать описанный проект хотя бы на меге - освоение ARMа на уровне, достаточном для написания того же займет пару дней - неделю. Надо только не лениться читать документацию. А возможности системы на ARMе будут гораздо выше. Плюс человек получит мощный инструмент в своем арсенале. Пока не нужен загрузчик - не нужно заморачиваться о всяких ремапах, стартапах - в библиотеках компилятора уже все сделано.
Про переменные меньшей, чем 32 бита длины: Во-первых система команд поддерживает работу с 8- и 16-битными данными. В С просто объявляете uint8_t, uint16_t, uint32_t или unsigned char, unsigned short, unsigned long и получаете данные нужной длины. По запись байта в порт - у портов SAM7 есть набор регистров OWER, OWDR, OWSR, в которых вы можете указать, какие именно биты будут писаться в порт при записи в ODSR. Вы можете указать необходимые 8 бит и писаться в порт будут именно они.
Резюме - не так страшен черт.

Цитата(IV_K @ Nov 21 2007, 13:27) *
при использовании переменных меньшей длины отдельно - каждая будет занимать 32 бита,
Где вы такое вычитали? Каждая переменная будет занимать столько места, каков ее размер. Другое дело, что начальные адреса переменных выравниваются - 4-байтных на 4 байта, 2-байтных на 2 байта. Поэтому long, char, char, short и long, char, short, char займут 8 и 9 байт, а не 16 как следует из вашего утверждения.

С остальным соглаcен.
Цитата(IV_K @ Nov 21 2007, 13:27) *
p.s. за меся КАК-ТО работать сам7 заставить можно, но написать с нуля целевую программу нереально
Задача формулировалась несколько иначе - "до января нужно чтобы он хоть как-то начал жить", а это, на мой взгляд, вполне реально.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- MSprut   Вразумите по SAM7S   Nov 21 2007, 07:45
- - xelax   Возможно я подзабыл, но разве IAR сам не цепляет к...   Nov 21 2007, 08:05
- - MSprut   За IAR для ARM ничего не могу сказать, в стартапе ...   Nov 21 2007, 08:22
- - anpilog   По собственному опыту скажу. В принципе для не све...   Nov 21 2007, 08:56
- - MSprut   Ну нужно будет работать с АЦП, с таймером, SPI и п...   Nov 21 2007, 09:56
- - IV_K   в арме главное мышление на 32 бита перевести =) ос...   Nov 21 2007, 10:11
- - MSprut   Ну с 32-х битными регистрами понятно, и с переменн...   Nov 21 2007, 10:36
|- - IV_K   Цитата(Сергей Борщ @ Nov 21 2007, 15:21) ...   Nov 21 2007, 12:56
- - MSprut   Спасибо, доходчивая мотивация. Тут как раз вариант...   Nov 21 2007, 11:12
- - IV_K   при использовании переменных меньшей длины отдельн...   Nov 21 2007, 11:27
- - zltigo   Цитата(MSprut @ Nov 21 2007, 09:45) ... н...   Nov 21 2007, 12:05
- - MSprut   Убедили, всем большое спасибо. Закладываю АРМ...   Nov 21 2007, 13:09


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

 


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


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