Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 25

Тема: переход с AVR на ARM

  1. #1
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN

    переход с AVR на ARM

    Некоторое время назад столкнулся с микроконтроллерами на ядре ARM - и понял, что это то, что надо!
    Не, конечно отсутствие моделей в DIP корпусах немного пугает, но при наличии переходника вполне "съедобно".
    Далее - про процессор, с которым я игрался (Atmel AT91SAM7S64).
    Итак - 32-х разрядный процессор, без разделения адресных пространств на код и данные, тактовая частота - под 50 МГц (простые команды выполняются за два такта). Питание - 3.3 вольта. В аналогичных условиях по питанию от ATmega можно только 8 МГц получить.
    У упомянутой мною модели 64K ПЗУ и 16K ОЗУ - у других моделей в этом корпусе есть больше, у модели в 48-ногом корпусе (как у AD9951) - 32KB ОЗУ и 8KB ПЗУ.

    Объём кода, полученного для ATMega и ARM компиляторами на основе GCC (WinAVR и YAGARTO соответственно) с точностью до 5% одинаковый.

    Управляющая программа приемника (транссивера), обсуждаемого вот тут, стала тратить на обсчёт очередного шага где-то в пять раз меньше времени (субъективно). Поскольку в этом применении на ATMega ничего из специфической периферии не использовалось - кроме контроллера прерываний и таймера - перенос "ножкодрыгательн ой" программы на новый процессор занял около полудня. Этому предшествовали два дня разбирательств с программатором и модфикация start-up кода из примеров. И, естественно, изучение инициализации периферии данной модели процессора. Ядро ARM оно, конечно, одинаковое - но периферию каждая из фирм-производителей делает свою.

    Минимальный набор внешних элементов - кварц (без конденсаторов!), блокирующие конденсаторы, разъм программатора и четрые подтягивающих резистора. Программатор я использовал обычный LPT STK200.
    ... Я там глубину сам промерял!


  2. #2
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN

    Использование STK200 как JTAG програмамтора

    Решил поделиться опытом и картинкой с настройкам.

    Сделав по одной из схем wiggler и получив надежную работу в компании с программой программатора H-JTAG, решил воспользоваться возможностями произвольного конфигурирования назначения выводов LPT порта и прикрутить адаптер STK200 (один из его клонов со слегка расширенной функциональностью - с добавленной линией передачи тактового сигнала на программируемый процессор через вывод 5 десятиконтактного разъёма.

    Среди приаттаченных файлов скриншот с p-cad - решил такой вариант разводки делать на платах с AT91SAM7Sxxx для заливки прошивки. В общем-то мне большего от j-tag не надо, возможности отладки не проверял. Вид всех разъемов (10-ти и 20-ти контактных) - со стороны выводов.

    Да, работоспособность этого варианта зависит от того, что держит H-JTAG на неупомянутой в конфигурации ножке - у STK200 сигнал D3 (вывод 5 на DB-25) единицей переводит выходы в третье состояние.

    Надо бы предложить автору H-JTAG это вариант ввести в свою программу как предопределенный...
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	j_tag_lite_pinout_205.png 
Просмотров:	474 
Размер:	9.2 Кб 
ID:	37635   Нажмите на изображение для увеличения. 

Название:	h_jtag_with_stk200_buffer_ce_safety_115.png 
Просмотров:	367 
Размер:	11.4 Кб 
ID:	37636   Нажмите на изображение для увеличения. 

Название:	h_jtag_with_stk200_142.png 
Просмотров:	295 
Размер:	11.5 Кб 
ID:	37637  

    Нажмите на изображение для увеличения. 

Название:	h_jtag_with_wiggler_default_197.png 
Просмотров:	302 
Размер:	11.5 Кб 
ID:	37638  
    Вложения Вложения
    ... Я там глубину сам промерял!

  3. #3
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN

    Проект приемника с AT91SAM7S64 как контроллер

    Для примера - как я включил процессор

    Вид первого макета c процессором AT91SAM7S32 - в аттачменте.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	DSCN2575_SMALL.JPG 
Просмотров:	1152 
Размер:	217.4 Кб 
ID:	60972  
    Последний раз редактировалось Genadi Zawidowski; 18.08.2010 в 12:07.
    ... Я там глубину сам промерял!

  4. #4
    Genadi Zawidowski
    У профи переход на АРМ произошел где то года полтора- два назад. GCC немного неудобен, поэтому пользуются или KEIL или IAR компиляторами. Для каждого компилятора есть большая библиотека примеров для каждого семейства АРМ. Кто-то любит AT91, кто то LPC2000 или STM32, некоторые свободно работают со всеми, используя условную компиляцию. JTAG можно использовать Вигглер, но давно скопирован и J-link.
    А вот про ногодрыжество лучше забывать- набор переферии у современных АРМов огромен, аппаратные SPI-SSP-I2C-I2S-USART есть во всех сериях, а ногодрыжество сильно тормозит или иногда надо добавлять пустые такты.
    Александр

  5. #5
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN
    Цитата Сообщение от khach
    А вот про ногодрыжество лучше забывать- набор переферии у современных АРМов огромен, аппаратные SPI-SSP-I2C-I2S-USART есть во всех сериях, а ногодрыжество сильно тормозит или иногда надо добавлять пустые такты.
    Интересно, как обойтись без "ногодрыжества" в случае упраления HD44780... а на данный момент именно этот стиль позволил бвстро стартовать с новым процессором.

    Ничгего неудобного пока у gcc не заметил, дебаггером не пользуюсь.
    Цитата Сообщение от khach
    У профи переход на АРМ произошел где то года полтора- два назад
    Года четыре назад при слове ARM всё больше попадались какие-то монстры со внешней памятью - такого, чтобы "всё внутри чипа" не попалось - потому начал с атмегой работать. сейчас прошедбшее время с ней кажется зря потраченным... вернее - понимаю - раньше надо было поближе познакомиться с ними. Но - четыре года назад - у меня и емкостная трехточка работала не всегда...
    ... Я там глубину сам промерял!

  6. #6
    Цитата Сообщение от Genadi Zawidowski
    Интересно, как обойтись без "ногодрыжества" в случае упраления HD44780...
    Ну например так как на схеме ниже. Хотя некоторые графические LCD от сотовиков садятся на последовательную шину АРМ напрямую. У мелких АРМов ножек всегда нехватает, поэтому приходиться извращаться. Я только хочу предупредить про специфическию особенность применнения АРМов для радиочастотной аппаратуры- у них внутри несколько синтезаторов тактовой частоты на ФАПЧ, довольно шумных. В результате, если плата неправильно спроектированна, есть много пораженных частот. Необходимо применять меры по фильтрованию питаний, сепараций сигналов управления ВЧ частью, правильной разводке печатки и экранированию. Знаю нескольких разработчиков, которые вначале плевались на АРМы из=за этой шумности, но потом привыкли, выработали работоспособные топологии.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	avr2lcd_195.jpg 
Просмотров:	1072 
Размер:	45.3 Кб 
ID:	37653  
    Александр

  7. #7
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN
    Цитата Сообщение от khach
    Ну например так как на схеме ниже
    Готовность индикатора не проверяется... на spi 595-х регистров у меня четыре штуки напаяно и все микросхемы SPI) - рассматривался и такой вариант (в начале хотел применить AT91SAM7S32 - по объёмам озу и пзу вполне влезало - но не хватило ног).
    Когда запущу первый вариант нового приемника в работу - буду рассказывать про помехи. как запасной вариант всегда можно отключить умножение с ФАПЧ и оставить только кварц - скорости хварит. Все выводы процессора проходят через 300 ом резисторы, выходы дешфраторов (138-е) подают индивидуально CLK/DATA на каждую микросхему на плате - со своими гасящими резисторами. Для того я схему и выкладывал - если есть комментарии по ней - с удовольствием приму. А обще советы они не очень помогают. Вот, например - что за неудобства у gcc, о которых Вы упомянули?
    ... Я там глубину сам промерял!

  8. #8
    Цитата Сообщение от Genadi Zawidowski
    Для того я схему и выкладывал - если есть комментарии по ней - с удовольствием приму. А обще советы они не очень помогают. Вот, например - что за неудобства у gcc, о которых Вы упомянули?
    Схему смотрел, явных косяков невидно. А чтобы сказать конкретно, надо делать полную копию, тыкать ее осциллографом и анализатором спектра.
    Основное неудобство GCC- необходимость перелапачивания фирменных библиотек, которые потом почему- то неработают :-). Конечно, пока АРМ занимается только настройкой синтезаторов, оно не сильно и надо. Но как только начинаем использовать USB или Ethernet, запускаем звуковой поток в риалтайме по I2S c DMA, над всем этим появляется RTOS... приходиться активно использовать библиотеки.
    Спросите, зачем все эти навороты? Хотим иметь звуковой поток в компьютере для цифровой обработки. Вот сейчас ваяем на базе STM32F103 SDR который видится компьютером как звуковая карта. Но не можем решить проблем с помехами от обединения земель компьютера и приемника через ЮСБ. Прийдется наверно отвязывать АЦП и радиочасть гальванически от процессора. Да и полосы USB нехватает для полного 24 битного потока- приходиться в процессоре понижать разрядность до 16 бит и только их гнать по USB в компьютер.
    А на подходе STM32F107 с эзернетом- попробуем на нем сделать нечто похожее на QSSDR server c автономной реализацией без компьютера.
    Александр

  9. #9
    Аватар для RA9YTJ
    Регистрация
    16.03.2007
    Адрес
    Рубцовск
    Сообщений
    986
    Позывной
    RA9YTJ
    Genadi Zawidowski
    Интересно, а ARM LPC21xx это как в нынешней обстановке? Просто они есть в Proteus. И есть где-нибудь русскоязычный сайт типа известного авр123 по этим чипам. Ну вобщем с чего стартовать?


  10. #10
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,098
    Записей в дневнике
    20
    Позывной
    UA1ARN
    AT91SAM7x vs. LPC21xx - смотрите на набор внутренней периферии, на различия в USB если оно есть и интересует. На мой взгляд одного класса изделия. На доставаемость смотрите...

    начинать (в контексте тему переходить с AVR на ARM) - скачиваете упомянутый мною программатор h-jtag, скачиваете YAGARTO ARM Toolchain, скачиваете мой проект. В каталоге AT91SAM7S запускаете make - проверяете, что всё компилируется и появляется .HEX файл.
    Ищите в проекте функцию main. в её начало вставляете свой код, используя имеющиеся в проекте куски инициализации.

    Припаиваете к 10-ногому разъёму и процессору шесть проводочков, подсоединяете программатор. Питание.
    Блокировочные конденсаторы не забыть.
    Начинанте мигать светодиодом.

    Русскоязычные сайты с переводом документации мне не помогали, больше всего информации я почерпнул просматривая темы форума electronix, посвященные ARM.

    Я за один вечер научился светодиодиком моргать.
    ... Я там глубину сам промерял!

Страница 1 из 3 123 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. MJ 600+ переход на другие каналы
    от Yuriy_S в разделе Для начинающих
    Ответов: 3
    Последнее сообщение: 24.07.2008, 11:05
  2. Переход N-F не могу найти
    от RV9CX в разделе Антенны
    Ответов: 11
    Последнее сообщение: 11.11.2007, 22:02
  3. Переход на стандарт разъёмов СР50-...
    от PERESVET в разделе Антенны
    Ответов: 43
    Последнее сообщение: 19.07.2007, 09:21
  4. переход с AT90s1200 на AT90s2313
    от baschmin в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 19
    Последнее сообщение: 22.09.2006, 22:36

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •