|
На что бы перейти..., В плане платформы |
|
|
|
Mar 22 2018, 16:13
|

Местный
  
Группа: Участник
Сообщений: 492
Регистрация: 12-11-11
Пользователь №: 68 264

|
С практикой работы с STM32 у меня пополняется чаша больше ненависти к этим камням, нежели положительных эмоций. Вот элементарно - есть АЦП внешний, управляется через SPI, CS-ом дергать обязательно. В STM32 CS не дергается аппаратно при транзакциях SPI, не понимаю, почему эти говноразработчики из STMicroelectronics не могут сделать это уже в какой реализации своих линеек микроконтроллеров? Из-за такого намеренного "косяка", который они вроде как и не пытаются исправить, невозможно запустить DMA на этот SPI, приходится запускать чертов таймер, дергать лапой в прерывании и там же запускать транзакцию (одиночную), потом снова выжидать нужное время и поднимать CS обратно, формируя нужные длительности между CS и первым/последним клоком SCLK... Помню в AT91SAM7X512 (и младших по памяти моделях) была возможность не то что аппаратно лапкой CS дергать, так даже время задавалось в количествах тактов вот этих самых задержек. А тут фигу. С ходу даже не придумал как аппаратным таймером ножку аппаратно дергать так, чтобы еще после опускания CS выжидалось время небольшое и затем осуществлялась транзакция по SPI без прерываний, по DMA , например. И, чувствую, такой возможности тупо нет. Хотя, казалось бы, банальная вещь - что сложного было реализовать полностью аппаратный CS? Урезали половину функциональности DMA<->SPI... И вот знаете, косяков все больше и больше обнаруживается с каждым детальным разбором. Какие камни наиболее гибкие в этом плане? ПЛИС не в расчет, знаю что там проще сделать такое и т.д. но интересует возня именно с Cortex-M профиля. Раньше немного работал с ARM7TDMI, но это уже устаревший камень, Cortex-ы для меня более привлекательны, хотелось бы что-то действительно с хорошей периферией. Прокомментируйте, пожалуйста.
|
|
|
|
|
 |
Ответов
|
Mar 22 2018, 16:55
|

Местный
  
Группа: Участник
Сообщений: 492
Регистрация: 12-11-11
Пользователь №: 68 264

|
Цитата(_pv @ Mar 22 2018, 19:30)  а таймер разве не может дёргать по совпадению и CS вверх вниз когда нужно и ДМА?
ну возьмите тот же кортекс от любого другого производителя, с нормальной периферией. NXP вон умеет CSом дергать. в lpc8 во всяком случае, вряд ли в других сериях по другому. и SCTimer там тоже это можно заставить делать как угодно.
да и атмел скорее всего тоже умеет. Атмел точно умеет - проверял лично. Но камешки некоторые (на которых и проверял, собственно) морально устарели. Цитата(jcxz @ Mar 22 2018, 19:46)  Стенания из рязряда "мыши кололись, плакали, но продолжали жрать кактус..." Кто-ж Вас заставляет? МК разных полно на любой вкус и цвет - выбирай что более удобно. Нет таких. Для одной задачи - один, для другой - другой. МК нужно выбирать под конкретную задачу. Или точнее - наиболее подходящий под конкретную задачу. С учётом множества требований. Идеального камня, под любую возможную задачу, не существует. Никто не заставляет, на самом деле  Просто было закуплено на лабораторию ведра STM32 разных калибров для как раз задач широкого применения, не требующих внушительной производительности. Когда задача описана словами "надо дискретизировать сигнал 5000 выборок/сек и передать отсчеты наружу...", невольно понимаешь, что STM32 тут за глаза. И вот лишь когда начинаешь детальнее входить в архитектуру программы, понимаешь, что программа будет сущий костыль... Видимо, этот CS у SPI не дает мне покоя  Цитата Возможность задания в тактах разных времянок (CS->data, межсловный интервал и т.п.) это есть в XMC4xxx. Пожалуй, нужно будет ознакомиться, благодарю.
Сообщение отредактировал Arlleex - Mar 22 2018, 16:58
|
|
|
|
|
Mar 22 2018, 19:27
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(Arlleex @ Mar 22 2018, 22:55)  Атмел точно умеет - проверял лично. Но камешки некоторые (на которых и проверял, собственно) морально устарели. я собственно под атмел имел ввиду их новые кортексы, ATSAMC/D/E/... Цитата(jcxz @ Mar 22 2018, 22:52)  Возможность задания в тактах разных времянок (CS->data, межсловный интервал и т.п.) это есть в XMC4xxx. LPC800 так тоже умеют.
|
|
|
|
Сообщений в этой теме
Arlleex На что бы перейти... Mar 22 2018, 16:13 _pv а таймер разве не может дёргать по совпадению и CS... Mar 22 2018, 16:30 jcxz Цитата(Arlleex @ Mar 22 2018, 18:13) Вот ... Mar 22 2018, 16:52 jcxz Цитата(Arlleex @ Mar 22 2018, 18:55) Пожа... Mar 22 2018, 17:03 twix Цитата(Arlleex @ Mar 22 2018, 17:55) Види... Mar 22 2018, 18:00 Arlleex jcxz, как раз листаю референс на XMC4800. Общее вп... Mar 22 2018, 17:23 inventor Цитата(Arlleex @ Mar 22 2018, 20:23) jcxz... Apr 7 2018, 14:55 yes > В STM32 CS не дергается аппаратно при транзак... Mar 22 2018, 18:35 technik-1017 Как альтернативу STM32 рассматриваю чипы SmartFusi... Mar 22 2018, 19:17 skripach LPC54 CSами умеет дергать невероятно, с настраивае... Mar 23 2018, 01:51 Arlleex Цитата(twix @ Mar 22 2018, 21:00) Вы може... Mar 23 2018, 13:54 jcxz Цитата(Arlleex @ Mar 23 2018, 15:54) 10МБ... Mar 23 2018, 15:49 adnega Цитата(Arlleex @ Mar 22 2018, 19:13) нево... Mar 24 2018, 07:21 dac QUOTE (adnega @ Mar 24 2018, 13:21) 2. В ... Mar 24 2018, 07:52  adnega Цитата(dac @ Mar 24 2018, 10:52) приходит... Mar 24 2018, 08:11   dac QUOTE (adnega @ Mar 24 2018, 14:11) 1мкс ... Mar 24 2018, 08:54  _pv Цитата(dac @ Mar 24 2018, 14:52) а еще из... Mar 24 2018, 08:34  jcxz Цитата(dac @ Mar 24 2018, 09:52) а еще из... Mar 24 2018, 10:21   adnega Цитата(jcxz @ Mar 24 2018, 13:21) на STM3... Mar 24 2018, 13:25 Arlleex Да вот элементарный пример, решение которого полно... Mar 24 2018, 17:02 adnega Цитата(Arlleex @ Mar 24 2018, 20:02) DMA ... Mar 24 2018, 17:16 Andrew Su Добрый день.
На отладочнике STM32L476-disco провер... Mar 25 2018, 11:36 backa TI "TM4C1294" - дорого и сердито - SPI р... Apr 24 2018, 20:31 k155la3 Цитата(backa @ Apr 24 2018, 23:31) TI ... Apr 26 2018, 13:38  backa Цитата(k155la3 @ Apr 26 2018, 17:38) Нечт... Apr 26 2018, 23:16   k155la3 Цитата(backa @ Apr 27 2018, 02:16) . . . ... Apr 27 2018, 16:09    jcxz Цитата(k155la3 @ Apr 27 2018, 19:09) IAR,... Apr 28 2018, 05:45     k155la3 Цитата(jcxz @ Apr 28 2018, 08:45) О каких... Apr 28 2018, 13:09 AlexandrY Цитата(Arlleex @ Mar 22 2018, 19:13) Каки... Apr 28 2018, 07:58 ViKo Цитата(AlexandrY @ Apr 28 2018, 10:58) Во... Apr 28 2018, 08:55  jcxz Цитата(ViKo @ Apr 28 2018, 11:55) Без флэ... Apr 28 2018, 09:52  AlexandrY Цитата(ViKo @ Apr 28 2018, 11:55) Без флэ... Apr 28 2018, 10:48 segment А что за "Wireless connectivity interface for... Apr 28 2018, 12:00 AlexandrY Цитата(segment @ Apr 28 2018, 15:00) А чт... Apr 28 2018, 14:02  k155la3 Цитата(AlexandrY @ Apr 28 2018, 17:02) . ... Apr 28 2018, 18:04   adnega Цитата(k155la3 @ Apr 28 2018, 21:04) У ST... Apr 28 2018, 18:59    k155la3 Цитата(adnega @ Apr 28 2018, 21:59) Может... Apr 28 2018, 19:23     adnega Цитата(k155la3 @ Apr 28 2018, 22:23) А ес... Apr 29 2018, 05:45      k155la3 Цитата(adnega @ Apr 29 2018, 08:45) Т.е. ... Apr 29 2018, 10:46 Arlleex За документацию с кучей перекрестных ссылок можно ... May 6 2018, 08:20 AlexandrY Цитата(Arlleex @ May 6 2018, 11:20) За до... May 6 2018, 12:05  jcxz Цитата(AlexandrY @ May 6 2018, 15:05) Сек... May 6 2018, 15:39 Arlleex Тогда действительно что-то с ним точно не так
Ко... May 6 2018, 15:06 Arlleex ЦитатаНу "в каком-то из STM32" максимум ... May 6 2018, 16:29 jcxz Цитата(Arlleex @ May 6 2018, 19:29) 3. В ... May 6 2018, 17:04 Arlleex ЦитатаВы внимательнее прочитайте, что я написал: п... May 6 2018, 17:34 jcxz Цитата(Arlleex @ May 6 2018, 20:34) Между... May 6 2018, 20:16 Arlleex Да уж, я думал я один изворачиваюсь с периферией к... May 6 2018, 21:09 Arlleex Итак, ради интереса сделал тест.
Использую аппарат... May 7 2018, 19:56 jcxz Цитата(Arlleex @ May 7 2018, 22:56) 7. Вк... May 9 2018, 05:06 COMA Я для себя определил два варианта для перехода:
се... May 9 2018, 05:58 Arlleex ЦитатаТолько зачем было делать столько телодвижени... May 9 2018, 13:03 Arlleex Итак, выложу сюда две растактовки из экспериментов... May 9 2018, 15:26 jcxz Цитата(Arlleex @ May 9 2018, 18:26) Итак,... May 9 2018, 15:48 Arlleex Никакого абсолютно. У меня в проектах он всегда вк... May 9 2018, 15:54 Arlleex Подниму свою же тему.
1. Программировал платку с X... Jul 6 2018, 05:17 jcxz Цитата(Arlleex @ Jul 6 2018, 08:17) 1. Пр... Jul 6 2018, 08:05  Arlleex Цитата(jcxz @ Jul 6 2018, 12:05) PS: Ну и... Jul 6 2018, 08:25   jcxz Цитата(Arlleex @ Jul 6 2018, 11:25) А впе... Jul 6 2018, 08:30    Arlleex Цитата(jcxz @ Jul 6 2018, 12:30) Да, чере... Jul 6 2018, 08:35     jcxz Цитата(Arlleex @ Jul 6 2018, 11:35) Вы ис... Jul 6 2018, 08:36 Arlleex Боюсь мне начальство не выделит времени на такие п... Jul 6 2018, 09:07 jcxz Цитата(Arlleex @ Jul 6 2018, 12:07) Боюсь... Jul 6 2018, 09:50  Arlleex Цитата(jcxz @ Jul 6 2018, 13:50) Начальст... Jul 6 2018, 10:04
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|