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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> STM32F103xxx от ST, Контроллер на ядре Cortex-M3
zltigo
сообщение Oct 17 2007, 17:42
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Сегодня попал мне в руки
http://www.st.com/mcu/contentid-105-110-STM3210B_PRIMER.html
http://www.stm32circle.com/resources/stm32primer.php
в качестве демоборды, всвязи с этим ознакомился с STM32F103 стоящем у него в потрохах. Очень достойный контроллер на первый взгляд. 72MHz, питание начиная с 2V, достаточно скромные милиамперы. Набор прериферии джентельменский по 2-3 UART, SPI, I2C, Timer, CAN, RTC, USB. Куча PWM и ADC. Из необычного - встроенный термодатчик. Для любителей помахать ножками тоже не плохо - 18MHz. Продвинутый контроллер прерываний и 16! внешних источников прерываний (ох как я несколько раз выкручивался с 4 штуками у LPC21xx sad.gif ). Памяти, которой никогда много не бывает sad.gif, правда 128 FLASH и 20 RAM по максимуму. Но все это в ценовой категории 4-5-6 баксов!
Железяка несколько выходит за пределы моих нынешних интересов, но на заметке иметь буду, особенно если что-то батарейное на моем горизонте нарисуется. Найду свободное время, прицеплю внешние железки, натяну системку, посмотрю попугайчиков....


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 17 2007, 18:56
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



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

http://aly.projektas.lt/Tests/AllCPU/WhetsRes.htm#4


Как оказалось защита памяти расхваленная в Cortex-M3 тоже в большинстве реальных чипов не реализуется.

Но это так, ложка дегтя. laughing.gif

STM32 во всяком случае сильно переплюнул Luminary.


Цитата(zltigo @ Oct 17 2007, 21:12) *
Железяка несколько выходит за пределы моих нынешних интересов, но на заметке иметь буду, особенно если что-то батарейное на моем горизонте нарисуется. Найду свободное время, прицеплю внешние железки, натяну системку, посмотрю попугайчиков....
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 17 2007, 19:41
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AlexandrY @ Oct 17 2007, 21:56) *
Самое интересное, что каких-то выдающихся показателей по удельной производительности и плотности кода в STM32 обнаружить не удалось.

Думаю, что за пару недель найду время свое портировать и тестики погонять, тогда и доложусь, что получилось.
Цитата
STM32 во всяком случае сильно переплюнул Luminary.

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


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
PKM
сообщение Oct 18 2007, 03:32
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 35
Регистрация: 4-01-05
Пользователь №: 1 795



Тоже хотелось бы воткнуть STM32 в свой девайс, выполненный сейчас на LPC - хотя бы потому что потребление меньше и всяких обещанных защит от сбоев больше - взять хотя бы переход на внутренний генератор при сбое кварцевого осциллятора или "честный" WDT. Возможность калибровки RTC - тоже круто.
Если в плане помехоустойчивости STM32 будет хотя бы близок к PIC - однозначно перепрыгну на него.
Ну и ковыряться с первыми версиями кристаллов как-то не хочется: хоть STM и не NXP, но нет никаких гарантий, что в очередной еррате они не признаются, типа, "а проц может и не запуститься, пока вы не навесите на него это и то... или выкиньте купленную партию и юзайте след. версию кристалла".
Вобщем, очень интересны отзывы не только по производительности данного нового семейства армов (тут более-менее уже понятно), но и по остальным параметрам.
Go to the top of the page
 
+Quote Post
etoja
сообщение Oct 18 2007, 05:31
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Кто продаёт процессоры в Москве?
Go to the top of the page
 
+Quote Post
amw
сообщение Oct 18 2007, 07:56
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Кто продает их в Украине?

Судя по описаниям ядра - очень привлекательно.
Интересует также информация о применении GCC - есть/нет, версия.
А так-же плюсы и минусы THUMB2 на практике. А то THUMB расписан золотом а на практике IMHO проиграш скорости затмевает выиграш компактности.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 18 2007, 09:25
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(amw @ Oct 18 2007, 10:56) *
Интересует также информация о применении GCC - есть/нет, версия.

Есть. Пробовал 4.2.1
Цитата
А так-же плюсы и минусы THUMB2 на практике.

Да ерунда все эти нюансы по большому счету. Тем более для Cortex вариантов не предусмотрено smile.gif. В принципе явно не хуже THUMB, хотя-бы отсутствием дергания между ARM/THUMB и наличием 32bit кодов, там, где нужно.
Со скоростью из FLASH, конкретно у ST думаю ничего особо шустрого нет - скорее всего, предполагаю, максимум, что есть это выбор одновременно двух команд из 32 из FLASH порядка 70ns. Хотя, конечно, надо будет и почитать рекламу и попробовать....


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
klen
сообщение Oct 18 2007, 09:41
Сообщение #8


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(amw @ Oct 18 2007, 11:56) *
Интересует также информация о применении GCC - есть/нет, версия.

усЁ есть! поддерживается thumb2 в общем случае, в частном можно подтюнить ключиками под armv7-a/r/m/a8/r4/m3
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 18 2007, 17:45
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(amw @ Oct 18 2007, 10:56) *
А так-же плюсы и минусы THUMB2 на практике. А то THUMB расписан золотом а на практике IMHO проиграш скорости затмевает выиграш компактности.

Попробовал немножко кода скомпилить IAR-ом в THUMB2 - по компактности выигрыш почти 9% по сравнению с THUMB. На живое железо пока не вышел, посему о быстродействии ничего не скажу.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Axel
сообщение Nov 1 2007, 07:47
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 480
Регистрация: 21-11-04
Пользователь №: 1 188



Это из CrossWorks STM32F10x_Startup.s:

/*****************************************************************************
* Preprocessor Definitions
* ------------------------
*
* STARTUP_FROM_RESET
*
* If defined, the program will startup from power-on/reset. If not defined
* the program will just loop endlessly from power-on/reset.
*
* This definition is not defined by default on this target because the
* debugger is unable to reset this target and maintain control of it over the
* JTAG interface. The advantage of doing this is that it allows the debugger
* to reset the CPU and run programs from a known reset CPU state on each run.
* It also acts as a safety net if you accidently download a program in FLASH
* that crashes and prevents the debugger from taking control over JTAG
* rendering the target unusable over JTAG. The obvious disadvantage of doing
* this is that your application will not startup without the debugger.
*
* We advise that on this target you keep STARTUP_FROM_RESET undefined whilst
* you are developing and only define STARTUP_FROM_RESET when development is
* complete.
*
*****************************************************************************/

Чья проблема - Cortex или CrossWorks?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 1 2007, 09:06
Сообщение #11


Гуру
******

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



Цитата(Axel @ Nov 1 2007, 10:47) *
Чья проблема - Cortex или CrossWorks?
CW. Та же проблема у него с остальными ARM, хотя все другие отладчики останавливают ядро на лету без циклов. И опять же остается непонятность - ведь хоть и в цикле, но программа крутится, так чем же такой останов отличается от останова при выполнении другой части программы?


--------------------
На любой вопрос даю любой ответ
"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
Dron_Gus
сообщение Nov 2 2007, 11:46
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 9-01-05
Из: Санкт-Петербург
Пользователь №: 1 861



Цитата(Сергей Борщ @ Nov 1 2007, 12:06) *
так чем же такой останов отличается от останова при выполнении другой части программы?




Тут у человека в соседней ветке lpc "заклинило", потому что у него WatchDog включается раньше, чем отладчик успевает перехватить управление... Таких примеров много. Уж лучше так.


--------------------
Если сверху смотреть, то сбоку кажется, что снизу ничего не видно.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Nov 2 2007, 14:25
Сообщение #13


Гуру
******

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



Цитата(Dron_Gus @ Nov 2 2007, 13:46) *
Тут у человека в соседней ветке lpc "заклинило", потому что у него WatchDog включается раньше, чем отладчик успевает перехватить управление... Таких примеров много. Уж лучше так.
Спорный вопрос. Встречается рекомендация делать при старте задержку ~0.5c, а уже потом запускать такую критичную периферию. Мне тоже удавалось отключить JTAG записью в P2SEL - один раз записал, с загрузчиком через терминалку пообщался - запомнил надолго. Теперь эти биты в исходнике особо закомментированы. С собакой хорошо сделано у атмела - на время останова отладчиком собака тоже тормозится. И зачем при работе с ним весь этот геморрой с #define?


--------------------
На любой вопрос даю любой ответ
"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
Сергей Борщ
сообщение Nov 2 2007, 20:07
Сообщение #14


Гуру
******

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



Цитата(Dron_Gus @ Nov 2 2007, 13:46) *
Уж лучше так.
Да, вы правы - это заглушка от подобных неприятных последствий некоторых действий. Сегодня на сахаре проскочила ссылка, где в конце они пишут, что могут остановить проц на всем скаку в любой момент.


--------------------
На любой вопрос даю любой ответ
"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
Different
сообщение Nov 7 2007, 19:50
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 170
Регистрация: 7-03-07
Пользователь №: 25 965



Цитата(zltigo @ Oct 17 2007, 20:42) *
Но все это в ценовой категории 4-5-6 баксов!

Такие цены за бугром только. У нас умножаем на 1,5-3.
Go to the top of the page
 
+Quote Post

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

 


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


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