|
LPC vs STM32 cortex-M3 |
|
|
|
 |
Ответов
|
Oct 4 2011, 07:11
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(zuy @ Oct 1 2011, 08:07)  Знающие люди, подскажите такой момент. В каком корпусе с минимальным количеством ног доступен Cortex M3 от STM с контроллером внешней SRAM ? У NXP я нашел только 208 ногий, а что может предложить STM ? Я использую 144-ногий, но вроде бы в 100-ногом тоже можно. Цитата(Буратино @ Sep 29 2011, 10:12)  А еще вот говорят, что у STM32 либы есть для инициализации периферии. <...> Я уже спрашивал, может здесь кто объяснит - на фига они нужны? В чем глубокий смысл инициализировать структуру, а потому вызвать функцию, которая перепишет эту структуру в регистры? Почему сразу не инициализировать регистры?
|
|
|
|
|
Oct 4 2011, 08:20
|

Местный
  
Группа: Свой
Сообщений: 327
Регистрация: 24-06-06
Из: Томск
Пользователь №: 18 328

|
Цитата(777777 @ Oct 4 2011, 14:11)  Я уже спрашивал, может здесь кто объяснит - на фига они нужны? В чем глубокий смысл инициализировать структуру, а потому вызвать функцию, которая перепишет эту структуру в регистры? Почему сразу не инициализировать регистры? Потому что структура напрямую в регистры не ложится. Во многих случаях требуются промежуточные преобразования с нюансами. И вот чтобы а) не грузить голову этими нюансами; б) иметь более высокоуровненвую абстракцию; в) сократить время разработки; и пишут подобные либы. P.S. IMHO. Либа от ST кончно не верх изящества, но говорить, что она такая/сякая/вся кривая - это просто не профессионально.
|
|
|
|
|
Oct 4 2011, 15:29
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(shreck @ Oct 4 2011, 12:20)  Потому что структура напрямую в регистры не ложится. Может я чего-то упустил, но все, что я видел - ложатся. И в функциях помимо простого копирования из структуры в регистры были разве что какие-то ассерты. Цитата(shreck @ Oct 4 2011, 12:20)  И вот чтобы а) не грузить голову этими нюансами; б) иметь более высокоуровненвую абстракцию; в) сократить время разработки; Не дают библиотеки ничего из перечисленного. Все нюансы все равно требуется знать, никаких абстракций они не создают и следовательно время не экономят. Да и какие абстракции могут быть, например, при программировании таймеров? Как можно избежать нюансов? Цитата(topkin @ Oct 4 2011, 11:56)  Железо все больше и больше усложняется, и честно говоря у меня нет энтузиазма писать под каждую новую платформу свой HAL.<...> В идеале хотелось бы использовать общую RTOS под все платформы(те, которые использую я) и не читать даташиты по 2000 страниц Вот я только что организовал выдачу сигнала слложной формы - там DMA записывает в ЦАП значения из массива, а по окончании он подает запрос другому контроллеру DMA и он записывает в первый DMA адрес следующего массива, который тот должен передавать в ЦАП. Диаграмма формируется только периферией (2 таймера, 2 DMA, ЦАП), без участия процессора. Как вы себе представляете RTOS, которая бы предоставляла такую возможность? Боюсь, что без чтения 2000 страниц даташитов это невозможно. И вообще, любое универсальное (кроссплатформенное) средство будет непременно упрощенным, чтобы использовать только те возможности, которые есть во всех контроллерах, которые оно поддерживает. Следовательно самые интересные фичи, в которых изощряются производители и которыми контроллеры отличчаются друг от друга, не будут поддерживаться. И чтобы ими воспользоваться, придется прочитать даташит.
Сообщение отредактировал 777777 - Oct 4 2011, 15:32
|
|
|
|
|
Oct 5 2011, 01:56
|

Местный
  
Группа: Свой
Сообщений: 327
Регистрация: 24-06-06
Из: Томск
Пользователь №: 18 328

|
Цитата(777777 @ Oct 4 2011, 22:29)  Может я чего-то упустил, но все, что я видел - ложатся. И в функциях помимо простого копирования из структуры в регистры были разве что какие-то ассерты. Вот кусок функции инициализации АЦП, первое, что под руку попалось. Как видим, поля структуры ложатся в регистры совсем не напрямую. Код void ADC_Init(ADC_TypeDef* ADCx, ADC_InitTypeDef* ADC_InitStruct) { uint32_t tmpreg1 = 0; uint8_t tmpreg2 = 0; ... /*---------------------------- ADCx CR1 Configuration -----------------*/ tmpreg1 = ADCx->CR1; tmpreg1 &= CR1_CLEAR_Mask; tmpreg1 |= (uint32_t)(ADC_InitStruct->ADC_Mode | ((uint32_t)ADC_InitStruct->ADC_ScanConvMode << 8)); ADCx->CR1 = tmpreg1; ... } Цитата(777777 @ Oct 4 2011, 22:29)  Не дают библиотеки ничего из перечисленного. Все нюансы все равно требуется знать, никаких абстракций они не создают и следовательно время не экономят. Да и какие абстракции могут быть, например, при программировании таймеров? Как можно избежать нюансов? ??? Остается развести руками. Сказать нечего. P.S. Если вы не любите кошек, скорее всего вы не умеете их готовить.
|
|
|
|
Сообщений в этой теме
PraNkiSh LPC vs STM32 cortex-M3 Sep 24 2011, 18:19 Polaris Цитата(PraNkiSh @ Sep 24 2011, 21:19) под... Sep 24 2011, 18:48 zhevak Цитата(PraNkiSh @ Sep 25 2011, 00:19) кто... Sep 24 2011, 18:56 Буратино На сколько мне известно NXP позже ST лицензировал ... Sep 24 2011, 19:09 Юрий_СВ (DI HALT) ARM. Учебный Курс. Выбор контроллера Sep 24 2011, 19:26 Lotor Сам stm32 не использовал, но товарищ из соседнего ... Sep 26 2011, 05:01 KnightIgor Цитата(Lotor @ Sep 26 2011, 07:01) 1). Са... Sep 26 2011, 07:14  Lotor Цитата(KnightIgor @ Sep 26 2011, 11:14) Т... Sep 26 2011, 07:42 kovigor Цитата(PraNkiSh @ Sep 24 2011, 21:19) от ... Sep 26 2011, 07:28 IgorKossak Господа, хватит о личностях и личных измышлениях.
... Sep 26 2011, 08:05 Porty Использую LPC1768 только потому что были куплены н... Sep 26 2011, 10:12 scifi Сам LPC не использовал, но слышал, что там запись ... Sep 26 2011, 10:46 Polaris Цитата(scifi @ Sep 26 2011, 13:46) Сам LP... Sep 26 2011, 13:10  scifi Цитата(Polaris @ Sep 26 2011, 17:10) Все ... Sep 26 2011, 13:28   Polaris Цитата(scifi @ Sep 26 2011, 16:28) Вы что... Sep 26 2011, 14:21  HARMHARM Цитата(Polaris @ Sep 26 2011, 16:10) Ага,... Sep 27 2011, 18:15   Polaris Цитата(HARMHARM @ Sep 27 2011, 21:15) Оши... Sep 27 2011, 18:34 KRS LPC гораздо шустрее как и по максимальной частоте,... Sep 26 2011, 11:04 lebiga Цитата(KRS @ Sep 26 2011, 14:04) LPC гора... Sep 26 2011, 11:17 IgorKossak Цитата(KRS @ Sep 26 2011, 14:04) LPC гора... Sep 26 2011, 11:21  KRS Цитата(IgorKossak @ Sep 26 2011, 15:21) Б... Sep 26 2011, 11:34  topkin Цитата(IgorKossak @ Sep 26 2011, 15:21) Б... Sep 26 2011, 11:52 zhevak Цитата(KRS @ Sep 26 2011, 17:04) LPC гора... Sep 26 2011, 17:32  Polaris Цитата(zhevak @ Sep 26 2011, 20:32) Не-е,... Sep 26 2011, 18:51 Porty а и ещё вспомнил ньюансик про LPC - если какую либ... Sep 26 2011, 11:06 skripach ЦитатаПлюс еще появились STM32F4xx, официальные ди... Sep 26 2011, 11:59 КонстантинТ Цитата(skripach @ Sep 26 2011, 14:59) Dig... Sep 26 2011, 19:35  Dir Цитата(КонстантинТ @ Sep 26 2011, 22:35) ... Oct 2 2011, 20:33   КонстантинТ Цитата(Dir @ Oct 2 2011, 23:33) Кто сказа... Oct 3 2011, 09:27    Dir Цитата(КонстантинТ @ Oct 3 2011, 12:27) Г... Oct 3 2011, 20:05     topkin Цитата(Dir @ Oct 4 2011, 00:05) Странно, ... Oct 4 2011, 05:21      КонстантинТ Цитата(topkin @ Oct 4 2011, 08:21) Так ST... Oct 4 2011, 10:46       zhevak Цитата(КонстантинТ @ Oct 4 2011, 16:46) В... Oct 4 2011, 12:45 Буратино Я вообще еще не имел дела с АРМ ,но слухи уже соби... Sep 26 2011, 12:02 dac выбирал между ними по доступности, выбрал stm32, н... Sep 26 2011, 16:35 PraNkiSh холивар конечно везде можно устроить
все STM32 с... Sep 26 2011, 19:14 Lotor Цитата(PraNkiSh @ Sep 26 2011, 23:14) у L... Sep 27 2011, 04:23  lebiga Меня сильно подкупила DSP либа для LPC17x с ИАРА ... Sep 27 2011, 11:13 MALLOY2 ЦитатаМеня сильно подкупила DSP либа для LPC17x с ... Sep 27 2011, 15:14 Буратино Скажите, а у кого все же документация лучше (читаб... Sep 27 2011, 16:35 KRS да нормальные доки у обоих.
оформление разное. Но ... Sep 27 2011, 17:55 akorud Свои 2 копейки: используем LPC17xx. При прочих ра... Sep 27 2011, 20:41 theBMV Позарился на LPC1768, т.к. заманил своим 12-ти бит... Sep 28 2011, 05:18 =F8= Цитата(theBMV @ Sep 28 2011, 08:18) Позар... Sep 28 2011, 10:55  zksystem Свои пять копеек:
Использую STM32, так как NXP сч... Sep 28 2011, 11:26   Lotor Цитата(zksystem @ Sep 28 2011, 15:26) В S... Sep 28 2011, 12:10 Буратино А еще вот говорят, что у STM32 либы есть для иници... Sep 29 2011, 06:12 sysel Есть, CMSIS называется.
Но я предпочитаю по-старин... Sep 29 2011, 07:02  Буратино Цитата(sysel @ Sep 29 2011, 10:02) Но я п... Sep 29 2011, 07:31  Lotor Цитата(sysel @ Sep 29 2011, 11:02) Есть, ... Sep 29 2011, 07:48 aoreh Цитата(zuy @ Oct 1 2011, 07:07) Знающие л... Oct 1 2011, 06:56  zhevak Цитата(777777 @ Oct 4 2011, 13:11) Я уже ... Oct 4 2011, 07:39   topkin Цитата(zhevak @ Oct 4 2011, 11:39) ...
Вс... Oct 4 2011, 07:56    dac QUOTE (topkin @ Oct 4 2011, 13:56) Железо... Oct 4 2011, 10:02   Porty Цитата(shreck @ Oct 4 2011, 12:20) Потому... Oct 4 2011, 08:36    zhevak Да. Да. Да.
В программировании это носит свой терм... Oct 4 2011, 09:22     Lotor Цитата(zhevak @ Oct 4 2011, 13:22) кто не... Oct 4 2011, 09:29      zhevak Цитата(Lotor @ Oct 4 2011, 15:29) Только ... Oct 4 2011, 10:04      MrYuran Цитата(Lotor @ Oct 4 2011, 13:29) PS: Заб... Oct 4 2011, 10:07       zhevak Ну, а я о чем говорю -- уменьшает порог вхождения ... Oct 4 2011, 10:23    sysel В рамках оффтопа сделаю вброс ещё одного метода п... Oct 4 2011, 16:08     777777 Цитата(sysel @ Oct 4 2011, 20:08) В рамка... Oct 5 2011, 03:56 ukpyr ЦитатаCortex M3 от STM с контроллером внешней SRAM... Oct 1 2011, 10:25 Left Radio Правильно, контроллер памяти только в 100+ ног, а ... Oct 2 2011, 08:48 Flexz Цитата(777777 @ Oct 4 2011, 11:11) Я уже ... Oct 4 2011, 07:45 ukpyr ЦитатаПочему сразу не инициализировать регистры?ес... Oct 4 2011, 09:44 ukpyr ЦитатаВ идеале хотелось бы использовать общую RTOS... Oct 4 2011, 19:25 Flexz Цитата(777777 @ Oct 5 2011, 07:56) Понятн... Oct 5 2011, 07:16 topkin Народ, уже ушли в холивар чистый. Все равно все ос... Oct 5 2011, 07:31 IgorKossak На этом давайте закончим обсуждать библиотеки, тем... Oct 5 2011, 07:49 Porty Из STM32 или LPC в последнее время всё чаще выбира... Oct 6 2011, 06:08 MK2 ПЛИС хорошая штука стоит только дорого... ну очень... Oct 6 2011, 14:50 Аматер Без холиваров жизнь скучна.
Я года 3 назад выбрал... Oct 9 2011, 20:21 Axie Как раз нужно было что-то наподобие. Долго сравнив... Oct 10 2011, 09:40 ukpyr ЦитатаУ STM же напротив все более-менее культурноу... Oct 10 2011, 10:02 Altemir Ребят, а если посмотреть за горизонт LPC и STM32? ... Oct 10 2011, 10:40 dac QUOTE (Altemir @ Oct 10 2011, 16:40) Ребя... Oct 10 2011, 10:50 ubit Цитата(Altemir @ Oct 10 2011, 14:40) TI с... Oct 10 2011, 23:07 VslavX Работали с SAM7S/SE/X, LPC21/23/17, сейчас делаем ... Oct 22 2011, 13:37 VslavX Добавлю еще 5 копеек - у STM очень странный роутин... Nov 2 2011, 09:03  scifi Цитата(VslavX @ Nov 2 2011, 13:03) наприм... Nov 2 2011, 10:23   VslavX Цитата(scifi @ Nov 2 2011, 12:23) ... что... Nov 2 2011, 11:23  =F8= Цитата(VslavX @ Nov 2 2011, 12:03) Добавл... Nov 2 2011, 16:28 VslavX Очередные 5 копеек.
ИМХО, DMA у STM32F1xx реально... Nov 2 2011, 17:49 topkin Господа, вы уточняйте в каком из семейств STM32 ва... Nov 2 2011, 17:42 Kostos хмм, собирался на "супердешевые" киты с ... Nov 2 2011, 20:25 VslavX Цитата(Kostos @ Nov 2 2011, 22:25) хмм, с... Nov 3 2011, 05:36  VslavX Сейчас разбираюсь с Low-Power Modes у STM32F100. М... Nov 3 2011, 20:33   ZiB Цитата(VslavX @ Nov 4 2011, 03:33) Сейчас... Nov 6 2011, 05:54    VslavX Цитата(ZiB @ Nov 6 2011, 07:54) Не подойд... Nov 6 2011, 09:10   AHTOXA Цитата(VslavX @ Nov 4 2011, 02:33) - выхо... Nov 7 2011, 20:39    VslavX Цитата(AHTOXA @ Nov 7 2011, 22:39) Разве ... Nov 7 2011, 21:51 svl Контроллеры Kinetis от Freescale пробовали? Рекоме... Nov 5 2011, 19:15 topkin Цитата(svl @ Nov 5 2011, 23:15) Контролле... Nov 7 2011, 06:29  aT-DeviLru Цитата(topkin @ Nov 7 2011, 10:29) Дык Ki... Nov 7 2011, 14:44
2 страниц
1 2 >
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|