Часовой пояс: UTC + 3 часа




Куратор(ы):   zauropod   



Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 399 • Страница 13 из 20<  1 ... 10  11  12  13  14  15  16 ... 20  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
Первое знакомство с микроконтроллерами Atmel, STM и другими.

Первый рассказ
Предэксплуатационный ремонт отладчика Atmel AVR Dragon
Цветное изображение на монохромном LCD
Конвертер растровой графики для монохромного LCD (128х64)
Дизеринг для монохромных LCD и конвертер растровых изображений
ZP-STM32 и беспроводной последовательный порт
Куда уходят миллисекунды? Способ повышения FPS
Open Logic Sniffer в действии
AVR XMEGA – разгон, вольтмод и производительность SDRAM


Последний раз редактировалось zauropod 15.12.2010 0:33, всего редактировалось 6 раз(а).


Партнер
 

Member
Статус: Не в сети
Регистрация: 20.07.2005
Откуда: Днепропетровск
zauropod писал(а):
Предэксплуатационный ремонт отладчика Atmel AVR Dragon

http://web.archive.org/web/20100710140055/http://people.overclockers.ru/zauropod/record32
и т.п.
http://web.archive.org/
Сорри за офф, но статьи надо забэкапить, пока они живы ;)

То, что в ветке мало кто пишет, это не значит, что вас не читают ;) Прогресс, конечно, потрясает :beer:

_________________
Hallowed be Thy Name, Iron Maiden!


 

Member
Статус: Не в сети
Регистрация: 23.05.2010
zauropod
Ваши сообщения пропитаны энергией увлеченного человека, занимающегося своим любимым делом. Это ощущения не может не передаваться читателю. :-) Кроме того в глубине души наверное каждый хотел бы делать то, что ему нравится, но не у всех хватает сил, решительности, воли противостоять жизненным обстоятельством и собственной лени. Поэтом ваши записки это как своего рода жизнеутверждающий роман о преодолении себя и росте над собой.
Желаю вам скорейшим образом найти утерянное ощущение уютного места. ;)

acm_fan писал(а):
Сорри за офф, но статьи надо забэкапить, пока они живы
:shock: Не зря кто-то говорил, что рукописи не горят. :beer:


 

Junior
Статус: Не в сети
Регистрация: 01.01.2012
zauropod.

Интересная плата, насыщенная. Какой, примерно, размер получается? И что за чип STM32F4? 144-ножка?


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
neo333

Корпус LQFP-176, размер платы пока примерно 195х125, монтаж с двух сторон. Вот как она сейчас выглядит:

#77

QVGA дисплей стационарно на борту. LCD RGB панели будут цепляться через переходник (расширение справа в центре, две двойных гребенки), так как у каждого свой разъем и напряжение подсветки.
Еще не решил, какой GPS модуль ставить - Fastrax 430 со встроенной антенной или симкомовский маленький с внешней. Пока склоняюсь ко второму варианту, так как модуль (11х11 мм) легко влезет в верхний правый угол. Но это будет зависеть от цены, который даст локальный дилер симкома, а на EBay он стоит меньше $20. Или ставить сразу SIM908, но голосовой GSM мне не очень нужен. Вот голос по Zigbee и полтора километра беспроводная RS232 связь по SIM18 интересны гораздо больше.
Ethernet тоже поставил, но он как-то меня совсем мало волнует.

Также пока под вопросом батарейное питание (сетевое будет, естественно) - делать под литиевые аккумуляторы или под Ni-Cd тоже, поэтому пока силовой ввод не разведен. Под вопросом и наличие двух динамиков, пока поставил один NDT-03, может, выберу что-то поменьше и тогда пару от каких мобильников куплю.

Ну и с радио пока не определился - ставить Sil405/6 c RDS или старый вариант с Airoha 1010.

Все остальное готово. Сначала хотел два STM32F4 ставить, второй 100-ногий, но потом решил, что это можно будет добавить на плату расширения (это в центре, снизу двойная гребенка 2х25, сверху 1х25, шаг 1.27), постаить там два 8-разрядных буфера и закольцевать оба по FSMC одного -> DCMI другого, для работы 100 ногого как сопроцессора. Хотя проще для двухъядерности тогда было бы взять один NXP 43xx, но мы легких путей не ищем.

С финальной комплектацией определюсь дня за три, еще три дня на доводку - и вперед, с песней!

Кстати, я с ебэя тоже пригнал себе камеру, пока 2MP, как большую плату отдам на изготовление, подключу. Как там твои "глаза"?


 

Junior
Статус: Не в сети
Регистрация: 01.01.2012
У Вас плата - просто загляденье! Все ручной трассировкой сделали? Пробовал на freerouting.net разводить, но как-то не очень результат. Сейчас в Eagle в свободной версии делаю, но там ограничение на размер платы, надо что-то еще искать... Может Кикад?

zauropod писал(а):
Как там твои "глаза"?

Отпуск кончился, но дело движется, хотя и медленно.
Оказалась, нужна визуализация процесса обработки стерео-картинки. Теперь рисую схему подключения к F407VG внешней SRAM. Вторым контроллером с чередованием доступа буду выводить картинку. В теории все казалось простым, но уже начинаю жалеть, что специализированным видео-контроллером не воспользовался. Схема организации прозрачного доступа 2-х контроллеров к SRAM вылилась в 14 микросхем 74 логики. Умел бы работать с ПЛИС - лучше б на ней сделал. К тому же 100-ножка сложно с памятью работает - мультиплексированны адрес и данные. Отдельные решения проверял - работает, теперь пытаюсь на 2-х слойке под ЛУТ развести все на 1-2 платах.
Так и паять научусь - вчера TSOP припаял с шагом 0,5 мм - был просто потрясен :) , на сколько легко оказалось... Зря боялся.

Добавлено спустя 1 час 9 минут 50 секунд:
Интересную программу для STM32 нашел: MicroXplorer, графический конфигуратор - вся периферия по пинам представлена. STM32F4 есть.
http://www.st.com/internet/evalboard/pr ... croxplorer


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
neo333 писал(а):
Все ручной трассировкой сделали?

Я отношусь к автотрассировке как к автоматическим переводчикам. Шаг в сторону - и все неправильно. Поэтому все вручную.
Впрочем, вероятно, дорогие системы CAD как-то справляются в авторежиме (к примеру, поддержка импеданса, одинаковое к-во переходов на определенных шинах, оптимизация EMI и взаимовлияния etc), у меня нет опыта работы с ними. К тому же это двухслойка, а надо бы 4 или лучше 6 слоев. Но тут FSMC всего 60МГц, а до 100МГц можно достаточно вольно трассировать (разумеется это не относится к HS USB и некоторым другим вещам).

neo333 писал(а):
надо что-то еще искать...

Попробуй Sprint Layout.

neo333 писал(а):
К тому же 100-ножка сложно с памятью работает - мультиплексированны адрес и данные

Так у 100-ногого всего 8 адресных линий. FSMC у него предназначена для NAND и устройств типа LCD. Сколько внешней памяти ты к нему подключаешь? Тогда нужна дополнительная логика с защелками, но это геморрой и куча времени.
Может, проще тогда набрать нужный объем по SPI - недавно Everspin выпустила 40МГц SPI MRAM 512Kx8, они уже есть на маузере, я на свою плату буду ставить для попробовать.

neo333 писал(а):
MicroXplorer, графический конфигуратор

Мне такие вещи не нравятся. Я по даташиту работаю, меня устраивает.

***

Про Atmel AVR Studio : для ARM можно использовать и отладчик SEGGER JLink EDU, который стоит менее $50, я пробовал и с ним, и с SAM ICE. Насчет старших моделей JLink сказать ничего не могу.


 

Junior
Статус: Не в сети
Регистрация: 14.03.2012
Не могу прочесть ваши статьи, переходя по ссылкам с топика http://people.overclockers.ru/zauropod/13957/Moya_borba http://people.overclockers.ru/zauropod/13957/Moya_borba написано обсуждение отключено и все, текста под катом нет :fingal:


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
sonyk
Зайдите по ссылке первого поста от acm_fan на ЭТОЙ странице, откроется архивная запись статьи, вверху в строке меню жмете на "Список" и выбираете нужную.

PS. Я выше очепятался - RF для 1.5 км беспроводного RS232 от SIMCOM это SIM20, a SIM18 - это GPS.


 

Junior
Статус: Не в сети
Регистрация: 01.01.2012
zauropod писал(а):
Сколько внешней памяти ты к нему подключаешь?

1 Мегабайт - два 4 Мбитных чипа (256К х 16). Ориентировался на 800 х 600 х 16 бит.
Можно 2 МБ поставить, если чипы заменить на более емкие, но 8 Мбитных в магазине не было.

Спаял простой DAC на резисторах - VGA картинка нормальная. Синхроимпульсы таймерами не получилось сделать, сделал на задержках - попробовать можно, а для постоянного использования буду разбираться с таймерами: STM32 сложный чип, еще много изучать надо.

Купил 7" LCD 800х480, еще не подключал. Судя по даташиту, работать с ним проще, можно обойтись без V-Sync и H-Sync.
Хотел спросить, а для чего по шине данных линии земли через две-три линии данных идут? С помехами борятся? А как? Может и мне надо в схеме такое чередование применять?


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
neo333
Так как полный адрес для своего мегабайта формируешь на 407VG? GPIO и защелки?

neo333 писал(а):
Спаял простой DAC на резисторах - VGA картинка нормальная

Молодец. Так с незапамятных времен делается с самых первых МК, но я предпочел лазерную точность подбора, обеспечивающую более правильную цветопередачу, т.е специализированный DAC, который дает и нормальный синхросигнал в зеленый канал. А чтобы с таймингами не заморачиваться - поставил видеоконтроллер :)

neo333 писал(а):
Купил 7" LCD 800х480, еще не подключал

Ты его хочешь подключать без видеоконтроллера? Как говорится, флаг и ассемблер в руки! Готовь на кителе дырку под орден :)

neo333 писал(а):
Судя по даташиту, работать с ним проще, можно обойтись без V-Sync и H-Sync

Ему можно обойтись. Но формировать DE как собираешься?

neo333 писал(а):
для чего по шине данных линии земли через две-три линии данных идут?

Чем выше частота изменения сигнала на шине, тем круче становятся (должны становиться для нормальной работы) фронты импульсов. Идеальный прямоугольный импульс (которого не бывает) означает бесконечный спектр гармоник. Соответствующее излучаемое переменное электромагнитное поле наводит в близлежащих проводниках электрический ток. Даже на VGA D-Sub уже предусмотрены экраны для отдельных сигнальных линий.
Применять или нет - зависит от рабочих частот компонентов и топологии разводки, к-ва слоев платы и т.д. На шине данных STМ это не оправдано.


 

Junior
Статус: Не в сети
Регистрация: 01.01.2012
Спасибо за ликбез по сигналам. Так по крупицам знания собираю. Целенаправленно засесть за учебники не представляется возможным, а устройства делать хочется.

Собственно, сейчас разберусь с работой логических схем, дальше ПЛИС осваивать в планах. Заманчиво, например, недорогую ПЛИС как контроллер DDR2 памяти использовать с STM32 и, заодно, выводом изображения ее нагрузить. От видео-контроллера отказался в образовательных целях, так сказать.

Цитата:
Но формировать DE как собираешься?

DE на этом дисплее от 30 МГц и выше позволяет работать. Можно порт дергать, можно (могу ошибаться в названии) OSC_OUT использовать или еще какой-то выход, выдающий такты от таймера... можно даже SPI использовать - у STM32F4 частоты приличные. Но это теория, на практике еще предстоит на грабли по-наступать.


Цитата:
Готовь на кителе дырку под орден

:D
Ассемблер обожаю, но только для не сильно больших процедур. Если что путнее выйдет, кодом обязательно похвастаюсь :)


Еще вопрос такой. Купил новый паяльник, а у него проводок заземления с прищепкой есть. Куда лучше цеплять во время пайки? Радиаторов отопления в доме нет. За корпус компа может? Комп в розетку с землей подключен. Или отдельную линию заземления оборудовать надо? Боюсь микросхемы статикой спалить.

Добавлено спустя 8 минут 28 секунд:
Код:
GPIO и защелки?

Да. 74LVTH16374 - защелка. По положительному фронту защелкивается. Надо FSMC_NL сигнал использовать, тогда FSMC заработает. По диаграммам должно работать, но еще проверять нужно - не успел плату сделать, мелкое все, на проводочках по-быстрому не подвесишь.

С SRAM через GPIO полностью программно работает медленно.


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
neo333 писал(а):
на практике еще предстоит на грабли по-наступать.

Сдается мне, ты хочешь работать с RGB панелью как-то не так, как нужно.

Так как панель не имеет видеопамяти, то, чтобы картинка не мерцала и не плавала, нужно без перерыва подавать dotclock (pixclock), частота которого привязана к fps LCD (около 60Гц) и разрешению экрана, что связывает этот параметр с HS и VS. Для формирования DE потребуется сигнал HS и счетчик или прецизионный таймер.
При dotclock в три десятка мегагерц у тебя всего 30нс для вывода в порт нужного пиксела. Т.е. пять однотактных ассемблерных команд. Если рассчитываешь на DMA, то зря. Конечно, если стоит цель вывода на небольшую часть экрана, то получиться может, тогда будет медаль третьей степени. Но орден дается именно за фуллскрин (и не за картинку типа российского триколора).


 

Junior
Статус: Не в сети
Регистрация: 14.03.2012
Попробовал зайти на http://web.archive.org/web/20100710140055 но безрезультатно. так же на связку адресов web.­archive.­org/­web/­20100710140055ht­tp:­/­/­people.­overclockers.­ru/­zauropod/­record32 непонятную ). Наверное что-то недопонимаю...


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
sonyk
Да, сейчас и у меня не получается. Может, временная проблема с тем сайтом.

Технически я могу перенести все на свой хостинг, но как подумаешь, сколько снова нужно перечитывать и дорабатывать, вставлять картинки, так желание сразу отпадает.
Будем надеяться, что скоро работы на этом форуме по переезду ПС на новый формат (черт бы его побрал) успешно завершатся и все станет доступно.


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
sonyk
Тот архивный сайт уже поднялся, сейчас через него всю мою писанину можно просмотреть.

neo333
Проведение аналогий - дело неблагодарное. Думаешь, чего это я все выяснял, как ты формируешь адрес?
У Atmel SAM3U4 100 ногие имеют восьмиразрядную шину адреса, там никаких сигналов для мультиплексированной шины, как в STM, нет. Поэтому я и считал, что тут тоже так, а мануал STM в этом месте читать не стал, так как на плате 176-ногий, а там защелки и не нужны. Даже для верности еще раз просмотрел мануал по SAM3U, нет там мультиплексирования (ну или я в упор не вижу). Вообще помнится, что Atmel только у XMega128A1 применила мультиплексирование, SAM3S 100-ногие имеют 24-битный адрес при 8-битной шине. Как там у совсем новых, пока не смотрел.


 

Member
Статус: Не в сети
Регистрация: 26.01.2011
zauropod писал(а):
Чем выше частота изменения сигнала на шине, тем круче становятся

Да позабыв когдато полученные знания по РЭА, сильно поначалу удивился увиденной
синусоиде синхроимпульсов LS020 на 16 MHz.
Сильно грызут сомнения, подскажи с какой максимальной частотой можно дергать ногой STM32F4,
не переферийными блоками, а процем?
На XMega, как я понял, 32MHz последовательным кодом (тупо чередование SBI и CBI) и 16 MHz в цикле.

Заказал ATxmega256A3BU на http://www.electronshik.ru/ обещали через две недели притаранить за
630 в Москву. С DISCOVERY подожду до осени (глядишь повкусней чонибудь выйдет). Весна блин.

zauropod писал(а):
Попробуй Sprint Layout.

Так красиво на нем рисуешь? Как получу xmegу тож порисую.

zauropod писал(а):
Ты его хочешь подключать без видеоконтроллера? Как говорится, флаг и ассемблер в руки! Готовь на кителе дырку под орден

Согласен, если изучать так OMOLED панели.
neo333 писал(а):
Купил новый паяльник, а у него проводок заземления с прищепкой есть

Лучше в некуда. Самое главное чтоб статики на руках не было, подбирай при пайке соответствующую
одежду в быту и хлопок пойдет. И пояльник чтоб не со слюдой а с керамикой. И вообще современную
РЭА так просто не выжечь супервизеры или как их там на входа ставят. Так что заволить терминатора так просто не получется.


 

Junior
Статус: Не в сети
Регистрация: 01.01.2012
zauropod
Все верно, 144 и 176-ногие работают с внешней памятью по-человечески. Я хотел упростить себе жизнь, взяв готовую Discovery на F407VG. Почти ничего не зная о STM32, глянул - в обзоре написано, что STM32F407VG с внешней памятью работает, ну и хорошо, думаю. Оказалось, у 100-ногих работа с SRAM не предусмотрена. Однако на одном из форумов человек писал, что спокойно подключается SRAM к STM32F103V через внешнюю защелку, даже в коммерческом проекте это решение использовал.
Надо адаптировать работу FSMC, которая работает как бы с NAND памятью или FRAM. Сигналы схожие, только NL-сигнал на защелку направить надо и тайминги подобрать. Но самое главное - не успел еще запустить, все в полусобранном виде и полу-написанный код... По работе сейчас зверски загружен - с 8-00 до 24-00, как этот срочный проект сдам, запущу плату и, заодно, проверю, смогу ли нормально с LCD работать силами STM-ки.

Почему-то работа стала мешать увлечению, а раньше работал с удовольствием... надо, наверно, сферу деятельности менять :)


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
max0000000 писал(а):
с какой максимальной частотой можно дергать ногой STM32F4

По мануалу - 84MHz (программная установка порта 100Mhz из выбора 2,10,50,100MHz).

max0000000 писал(а):
На XMega, как я понял, 32MHz последовательным кодом (тупо чередование SBI и CBI) и 16 MHz в цикле.

однотактная ассемблерные команды дают возможность последовательно менять логический уровень с частотой процессора /2. На неразогнанном, естественно, 16MHz. Можно и подразогнать на 50%.

Про цикл вопрос поставлен неправильно.
Там все зависит от соотношения времени всех команд в цикле к сумме ( времени всех команд в теле цикла + время исполнения команд, обслуживающих цикл). При увеличении последовательности команд переключения в теле цикла макс частота смены уровней будет стремиться к частоте процессора/2. Я уже много раз в теме рассуждал о развернутых циклах, которые нивелируют влияние команд, обслуживающих цикл.

Только всегда лучше использовать саециализированный скоростной интерфейс.


Вообще какая-то странная картина вырисовывается. У Atmel для своих MK (avr и кортексов), частота процессора не дотягивает до конкурентов, хотя FSMC шустрые а периферийные таймеры очень шустрые. A у STM процессоры побыстрее, но быстрых таймеров нет и FMSC помедленнее.

max0000000 писал(а):
за 630 в Москву

Дорого.

neo333 писал(а):
Оказалось, у 100-ногих работа с SRAM не предусмотрена. Однако на одном из форумов человек писал

Так все в документации написано. Я выше и говорил, что провел неправильную аналогию по 100-ногому корпусу с SAM3U и не прочитал сначала мануал, так как на Discovery не планировал возиться с FSMC, и только после твоих постов прочитал доку STM32F4 про мультиплекс A/D.

***
Вроде со всем набором периферии определился. Еще стоял выбор по сенсорному датчику для кнопок, остановился на SX8660, так как их приобрел еще полгода назад и они не требуют никаких пассивных элементов на сенсоры. И еще будет "мышка наоборот" - аваговский оптический сенсор для пальца, рядом поставлю механическую кнопку для типа ЛКМ.


Последний раз редактировалось zauropod 17.03.2012 12:23, всего редактировалось 1 раз.

 

Member
Статус: Не в сети
Регистрация: 26.01.2011
zauropod писал(а):
Дорого.

Согласен для 8битника даже очень, но AVR мной хорошо изучен, а дешевле негде не нашел.
zauropod писал(а):
однотактная ассемблерные команды дают возможность последовательно менять логический уровень с частотой процессора

Если такие (побитовые) у STM32F4 и как они работают на шине доступа к FLASHу STM32F4 (128-битная и применяется кэширование с предсказанием)?


 

Куратор темы
Статус: Не в сети
Регистрация: 16.11.2006
Откуда: Всегда!
max0000000 писал(а):
Если такие (побитовые) у STM32F4 и как они работают на шине доступа к FLASHу STM32F4 (128-битная и применяется кэширование с предсказанием)?


Чего это такое "шина доступа к FLASHу", на которой битовые поля проверяются?
Команды битового доступа применяются к данным в оперативной памяти, на аврках - к регистрам.

На ARM Cortex-M доступ к битовым полям памяти осуществляется через специальный диапазон адресного пространства, однозначно привязанный к адресному пространству под RAM. Так как процессор 32-битный, то каждому биту 32-битного слова ставится в соответствие адрес 32-битного слова в этом специальном диапазоне. Такая техника называется в оригинале bit-banding. Запись 0 или 1 в 32 битное связанное слово означает установку соответствующего бита в памяти в 0 или 1, аналогично чтение связанного слова возвращает 0 или 1 как состояние соответствующего бита.
Для 1 MB адресов памяти требуется 32 MB адресов для bit-banding, это предусмотрено для диапазонов встроенной и внешней RAM, у периферийных регистров такой фичи нет.

Чего это ты сюда приплел кэширование? У STM32F4 64 линии по 128 бит на кэш инструкций, 8 линий по 128 бит на кэш данных. К битовым операциям никаким боком не относится.


Последний раз редактировалось zauropod 17.03.2012 12:24, всего редактировалось 1 раз.

Показать сообщения за:  Поле сортировки  
Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 399 • Страница 13 из 20<  1 ... 10  11  12  13  14  15  16 ... 20  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 110


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

Перейти:  

Лаборатория














Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan