Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту


 
Опции темы

Изучаем STM32 Cortex M3

Непрочитано 03.02.2011, 23:52  
DanilinSA
Почётный гражданин KAZUS.RUN
 
Регистрация: 25.11.2010
Адрес: г. Дзержинск Нижегородская обл.
Сообщений: 1,801
Сказал спасибо: 133
Сказали Спасибо 1,152 раз(а) в 549 сообщении(ях)
DanilinSA на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от skrynia Посмотреть сообщение
Как думаете, стоит ST-Link покупать, чтобы с STM32 работать или LPT-шный JTAG собрать лучше?
Смотри сам. Если в смысле универсальности- собери нормальный JTAG. А если применительно к данным чипам - ST-Link рулит.

Достоинства ST-Link:
1) Требует меньше выводов у кристалла. Достаточно выделить 2 вывода. JTAG требует 5 ног. А ног вечно не хватает ...
2) Количество аппаратных точек остановки. JTAG - 2 точки, ST-Link - 5 точек
3) Полный контроль кристалла во время перехода чипа энергосберегающий режим. JTAG в таком режиме дает только общую отладочную информацию и не имеет возможностей обновления в реальном времени . ST-Lin имеет полный набор функционала.
4) Таймеры STM32 могут останавливаться одновременно с остановкой ЦПУ. Благодаря этому, появляется возможность пошагового выполнения программы и поддержания таймеров в синхронизме с выполнением инструкций ЦПУ Cortex. Нет такой ситуации, что таймеры и софт идут "кто в лес -кто по дрова"

Короче - для Cortex-M3 лучше ST-Link. Но и JTAG под рукой не помешает для остальных чипов.
Реклама:
DanilinSA вне форума  
Сказали "Спасибо" DanilinSA
skrynia (04.02.2011)
Непрочитано 04.02.2011, 01:17  
akimych
Прописка
 
Регистрация: 02.01.2011
Сообщений: 159
Сказал спасибо: 8
Сказали Спасибо 32 раз(а) в 28 сообщении(ях)
akimych на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Цитата:
Достоинства ST-Link:
Ну ведь это же не достоинства ст-линка, а достоинства ядра Cortex-M3 (или STM32).
1) SWD, поддерживается не только ст-линком и не только у STM32
2) опять же относится к ядру
3) аналогично, еще хочу заметить, что тот же ст-линк у меня на дискавери не смог подключиться к мк в sleep-е, если не сконфигурить предварительно DBGMCU. Про отдельный ст-линк не знаю.
4) опять же не имеет отношения к отладчику

Из плюсов я бы отметил интересную реализацию для работы по УСБ, ст-линк прикидывается флешкой, не нужно никаких дров ставить. Плюс нет всякой фигни с лицензиями, в отличие от того же j-link. Только что в соседней ветке спрашивали. Да и мне чтоб мт-линк свой запустить пришлось его перешивать + всякий гемор с лицензиями.

А вот из минусов именно ст-линка: не очень хорошая поддержка со стороны софта, гнутый софт вообще его не знает (хотя есть атоллик). Кейлом с ним подглючивает, настроек нет.
Я лично отлаживаю плату на стм32 с помощью мт-линка, по сравнению с ст-линком он как-то по серьёзней выглядит. Во всяком случае не глючит и нормально работает прошить + запустить.

Так что лично мое мнение - ст-линк нифига не рулит,
akimych вне форума  
Непрочитано 04.02.2011, 08:58  
PlainUser
Прописка
 
Регистрация: 09.12.2003
Сообщений: 116
Сказал спасибо: 5
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
PlainUser на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от akimych Посмотреть сообщение
Может переименовать тему "FAQ по STM8" в "FAQ по STM8 и STM32"? Или вообще их разделить. Хотя и оба камная от ST, но отличаются уж очень, имхо. И софт для разработки разный.
А то так и будут одни и те же вопросы на счет симулятора, багофич стлинка и т.д.
Хотя тут сам не знаешь, по стм это будет faq или по глюкам кейла.
И вообще "подарок" не от STM, а от доблесного Кейла (от иара тоже было). Блин, я поражаюсь, ведь комерческий софт, а до чего глюкавый. Если бы не симулятор, послан бы он был уже давно. Плюс еще поддержка ст-линка держит.
Особенно удивляет, что последние версии стали какие-то лагучие. Зачем раскраску закладок сделали. Помню осенью пользовался Ride 7, раздражала она меня тормознутостью, особенно при работе жтага. Иногда, когда запускал кейл 4.11, удивлялся на сколько он "легче". Но после установки 4.13 это ощущение как-то пропало. В частности огорчает отсутсвие такой в общем-то привычный фичи в редакторе, как автозавершение.
Меня вот еще такой глюк задолбал с ст-линком, если прекратить отладку не остановив программу, то кейл вылетает с ошибкой. Причем не всегда, вроде бы в случае, если так сделать 2 раза подряд.

Очень интересуют глюки кейла .

В любых местах кроме

симулятора (это для студентов или сложных случаев которых у меня не бывает)

и загрузчика (обычно использую свой с которым прибор и будет в дальнейшем работать и апдейтится).
Ни тем ни другим никогда не пользовался и не планирую.

А вот доказанные глюки компилятора интересуют более чем...
PlainUser вне форума  
Непрочитано 04.02.2011, 09:04  
OKO
Прохожий
 
Регистрация: 07.03.2005
Сообщений: 1
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
OKO на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

А в какой мере надо знать язык С, что бы программировать STM 32? В институте увы писали небольшие програмки для пиков и AVR на низком уровне, а ранее там же изучали на примитивном уровне Delphi.
OKO вне форума  
Непрочитано 04.02.2011, 09:25  
Left Radio
Частый гость
 
Аватар для Left Radio
 
Регистрация: 20.09.2009
Сообщений: 40
Сказал спасибо: 17
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
Left Radio на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от OKO Посмотреть сообщение
А в какой мере надо знать язык С, что бы программировать STM 32?
Можно вообще не знать , а если серьезно, то для начала достаточно базового знания языка, ну и естественно базового знания контроллера
__________________
Left Radio вне форума  
Сказали "Спасибо" Left Radio
OKO (04.02.2011)
Непрочитано 04.02.2011, 09:30  
PlainUser
Прописка
 
Регистрация: 09.12.2003
Сообщений: 116
Сказал спасибо: 5
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
PlainUser на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от OKO Посмотреть сообщение
А в какой мере надо знать язык С, что бы программировать STM 32? В институте увы писали небольшие програмки для пиков и AVR на низком уровне, а ранее там же изучали на примитивном уровне Delphi.
На уровне - Богатырев "С для полных идиотов" достаточно за глаза.
Суть не в этом.
Суть в отличном знании типов данных signed unsigned char int float.
эти магические слова надо выучить наизусть а так-же то что за ними стоит.
И самое муторное знание переиферии.Не скажу отличное потому-как не встречал люде знающих ее более чем на 3 с плюсом.
Скажем так , нужно представлять возможности периферии и знать где че искать когда конкретно понадобится.Описание и главное ПРИМЕРЫ.
Выучить нереально ,через полгода напрочь забываются все регистры и биты.
Описания периферии составляют ммм.. ну не идиоты но почти.Любая (почти) строчка по периферии в даташите допускает двоякое толкование.
Примеры с комментариями это то что нужно.

Полезно уяснить работу с указателями, хотя совершенно не обязательно пока не столкнетесь с доработкой чужого говнокода.
У меня на стене висит бумажка на которой нарисован пример как из 4байтного инта извлечь 4 чара при помощи указателей.Уже лет дцать висит.

Для совсем корректного написания кода рекомендую почитать правила MISRA , о многом заставляют задуматься.Сам в процессе многолетних попыток создания надежно работающих устройств пришел к таким-же.Ну маленько в меньшем объеме.
Особенно греет душу правило N60 "каждый if должен завершаться else".
Давно так поступаю хотя профессиональные говнокодеры смеются.Вот оказалось я таки прав.


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

Последний раз редактировалось PlainUser; 04.02.2011 в 09:43.
PlainUser вне форума  
Эти 2 пользователя(ей) сказали Спасибо PlainUser за это сообщение:
Highlander (06.02.2011), OKO (04.02.2011)
Непрочитано 04.02.2011, 12:30  
skrynia
Прописка
 
Аватар для skrynia
 
Регистрация: 07.03.2009
Адрес: MN
Сообщений: 168
Сказал спасибо: 6
Сказали Спасибо 31 раз(а) в 21 сообщении(ях)
skrynia на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от akimych Посмотреть сообщение
LPT-шный жтаг собрать ведь ничего не мешает
Собрать-то я соберу, только от LPT до стола смущает приличное расстояние, да и материнку менять уже пора, а там, глядишь, и порта может не оказаться.
__________________
  • Квадрат - это тоже прямоугольник, только более квадратный и не такой вытянутый
  • Двуугольник - это треугольник, только поломанный
  • Одноугольника не видел
skrynia вне форума  
Непрочитано 04.02.2011, 12:46  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от OKO Посмотреть сообщение
А в какой мере надо знать язык С, что бы программировать STM 32?
Уровня свободного программирования PIC или AVR вполне хватит.
В большей мере желательно иметь крепкие нервы, свободное время и желание разбираться в хитросплетениях док и архитектуры.
st_1 вне форума  
Сказали "Спасибо" st_1
OKO (04.02.2011)
Непрочитано 04.02.2011, 16:33  
gromovi
Заблокирован
 
Регистрация: 12.09.2009
Сообщений: 420
Сказал спасибо: 148
Сказали Спасибо 166 раз(а) в 118 сообщении(ях)
gromovi на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от st_1 Посмотреть сообщение
желательно иметь крепкие нервы, свободное время и желание разбираться в хитросплетениях док и архитектуры.
+1000 много при много времени.
gromovi вне форума  
Непрочитано 04.02.2011, 17:24  
akimych
Прописка
 
Регистрация: 02.01.2011
Сообщений: 159
Сказал спасибо: 8
Сказали Спасибо 32 раз(а) в 28 сообщении(ях)
akimych на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Цитата:
А вот доказанные глюки компилятора интересуют более чем...
Да, глюки менно компилятора действительно инетерсуют. Пока что больше заметны и обсуждаются глюки отладчика.

Вот буквально вчера стокнулся с... даже не знаю, глюк это, особенность или так и должно быть.
Примерный код:
uint16_t a;
uint16_t get_b() { ... }
if(a != ~get_b()) { ... }

Выражение в if всегда истина. Начал выполнять по шагам (по инструкциям), так кейл генерит код для инверсии регистра, но регистр-то 32 разрядный! В результате в старших разрядах FFFF. А далее сравниваются 2 32бит регистра, которые ест-но не равны. ^ 0xFFFF работает правильно. Включена оптимизация -Ospace
Я много где в программе использовал uint16_t и uint8_t, рассчитывая, что они будут обрабатываться соответсвующим образом.
akimych вне форума  
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


Часовой пояс GMT +4, время: 05:25.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.