Страница 1 из 2
SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 18:02:38
uwrtey
Я умею немного писать на ассемблере для AVR.
В принципе ни чего сложного.
Внимательно читаю датащит, настраиваю периферию, затем пишу код в блокнотике и компилирую в AVR-Studio.
И вот решил я взяться за ARM.
ВитГо подогнал мне плату
STM32F4Discovery.
Я скачал кокос и остальное..
Начал я искать информацию для самообразования, но так че-то ничего толком не нашел.
Нашел только несколько примеров написания программ...
Ни где не могу найти информацию о том как нужно настраивать периферию.
Знаю что ее возможно настроить с помощью
CMSIS, и с помощью SPL
Попытался разобрать примеры с
CMSIS - тут все понятно ( я же уже имею небольшой опыт с AVR ассемблером )
Но ни один пример не заработал на моей отладочной плате... ( А это значит, что есть какие-то нюансы, которые я не знаю )
Но МК STM32F4 создан для больших и серьезных проектов.
И использовать CMSIS это то-же самое что писать на ассемблере для этого МК.
С одной стороны - это упрощает машинный код, а с другой стороны усложняет написание... ( Давайте не будем вдаваться в рассуждения )
Короче, я выбрал
СИ и решил, что буду использовать
SPL
Только вот незадача. Я ни где не могу найти информацию о настройке периферии.
Нет ни какой информации об использовании SPL ( CMSIS то-же не особо много )
Что то эти ARM как-то сильно заморочены...
Я скачал датащит на МК STM32F4, а так же Справочное Руководство ( RM0090 Reference manual )
Там ни чего про настройку периферии я не нашел.
Уважаемые, подскажите пожалуйста, что еще нужно скачать ???
Меня интересует как использовать SPL.... ( CMSIS - то-же интересует - надо-же немного знать архитектуру )
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 18:45:07
oleg110592
по SPL информации достаточно, имхо
примеры: STM32F4xx_DSP_StdPeriph_Lib_V1.3.0\Project\
хэлп: STM32F4xx_DSP_StdPeriph_Lib_V1.3.0\stm32f4xx_dsp_stdperiph_lib_um.chm
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 19:25:28
ut1wpr
uwrtey писал(а):Только вот незадача. Я ни где не могу найти информацию о настройке периферии.
Нет ни какой информации об использовании SPL ( CMSIS то-же не особо много )
Что то эти ARM как-то сильно заморочены...
Я скачал датащит на МК STM32F4, а так же Справочное Руководство ( RM0090 Reference manual )
Там ни чего про настройку периферии я не нашел.
Уважаемые, подскажите пожалуйста, что еще нужно скачать ???
Меня интересует как использовать SPL.... ( CMSIS - то-же интересует - надо-же немного знать архитектуру )
Вполне достаточно. Хватит скачивать. Пора приступать к:
1. Чтению.
2. Восприятию.
3. Пониманию.
Задача усложняется еще и тем, что:
Короче, я выбрал СИ и решил, что буду использовать SPL
А вот уровня знания собственно Си не озвучено. Есть подозрение, что здесь будут трудности.
Впрочем, как знать. Наличие стремления, упорства, желания и Дискаверей могут помочь.

Поиск "Гуру ведущего" скорее всего ни к чему не приведет. Определенные этапы придется проходить самому.
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 21:18:20
kisssko
Возможно, я слишком категоричен, но... Как мне показалось, глядя на SPL, она годна только для того,
чтобы посмотреть, как сделано там, и сделать по нормальному. Тобишь, для обучения.
А так и CMSIS за глаза хватит, чтоб периферию настроить. Крупный проект всяко будет содержать
больше прикладного кода, чисто для железа много писать не придётся.
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 22:05:13
uwrtey
ut1wpr писал(а):А вот уровня знания собственно Си не озвучено. Есть подозрение, что здесь будут трудности.
Так и есть, Си я пока не знаю...
ut1wpr писал(а):Поиск "Гуру ведущего" скорее всего ни к чему не приведет. Определенные этапы придется проходить самому.
По AVR-ам меня натаскал
ВитГо, за что я ему очень благодарен.
для
oleg110592:
stm32f4xx_dsp_stdperiph_lib_um.chm пытался читать.... Уфф - ни черта не понятно...
примеры увы для КЕЙЛа... - Я поставил себе КоКос...
Спасибо, Мужики!
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 23:11:44
ut1wpr
uwrtey писал(а):ut1wpr писал(а):А вот уровня знания собственно Си не озвучено. Есть подозрение, что здесь будут трудности.
Так и есть, Си я пока не знаю...
ut1wpr писал(а):Поиск "Гуру ведущего" скорее всего ни к чему не приведет. Определенные этапы придется проходить самому.
По AVR-ам меня натаскал
ВитГо, за что я ему очень благодарен.
для
oleg110592:
stm32f4xx_dsp_stdperiph_lib_um.chm пытался читать.... Уфф - ни черта не понятно...
примеры увы для КЕЙЛа... - Я поставил себе КоКос...
Спасибо, Мужики!
Дык пока и не за что. Начинать надо вообще-то не с этого камня. Пока нет понимания базовых принципов (отличий от AVR) с этим камнем можно с головой попрощаться. Рекомендаций "с чего начать" не даю, их много в инете. Чаще всего порождают холивары.
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 23:17:20
HHIMERA
Начинать нужно с основ СИ... и простых примеров... иначе вынос мозга будет обеспечен...
Re: SPL в STM32F4Discovery
Добавлено: Вс мар 09, 2014 23:49:21
oleg110592
uwrtey писал(а):
примеры увы для КЕЙЛа... - Я поставил себе КоКос...
Release Notes for STM32F4xx DSP and Standard Peripherals Library:
Development Toolchains and Compilers
IAR Embedded Workbench for ARM (EWARM) toolchain V6.70.1 + ST-Link
RealView Microcontroller Development Kit (MDK-ARM) toolchain V4.73 + ST-Link
STM32 TrueSTUDIO software (TrueSTUDIO) toolchain V4.2.0 + ST-Link
Raisonance RIDE7 software (RIDE) toolchain RIDE7 IDE:7.48, RKitARM for RIDE7:1.52 + ST-Link
"КоКос" вроде тот же SPL использует
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 00:24:34
uwrtey
ut1wpr писал(а):с этим камнем можно с головой попрощаться
я видимо с ней уже попрощался - вот и взялся за него..
HHIMERA писал(а):Начинать нужно с основ СИ... и простых примеров... иначе вынос мозга будет обеспечен...
Учебник уже качнул - читаю...
Можно и на том-же авр потренироваться....
oleg110592 писал(а):"КоКос" вроде тот же SPL использует
А я и не спорю. Просто мне кажется, что для того что-бы открыть пример нужно установить кейл..
если не прав, то поправьте...
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 01:28:54
BCluster
kisssko писал(а):Возможно, я слишком категоричен, но... Как мне показалось, глядя на SPL, она годна только для того,
чтобы посмотреть, как сделано там, и сделать по нормальному. Тобишь, для обучения.
тут была большая холиварная тема насчет того, нужно испльзовать SPL или нет.
Могу сказать только, что сейчас получили некий специализированный мк от ST с весьма жирным проектом-примером, с ОС и проч... Вся работа с периферией через SPL. Т.е. это
рекомендуемо производителем
Если нет понятий о Си - рекомендую начать с него. Можно на компе и без МК

Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 07:28:18
uwrtey
BCluster писал(а):рекомендуемо производителем
Рекомендуемо?
ИМХО: Мне кажется, что это не рекомендуемо... Скорее всего производитель хвастается, что на их камнях можно применять SPL - типа это современно, практично и технологично...
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 09:15:23
dosikus
uwrtey, SPL для недалеких коммерсантов ,тем кому изучать ни камень ни даташит некогда. Быстрей сляпать абы как и продать.
Если решил все таки для себя - только Keil и даташит , кактусы и недолибы идут лесом.
Гы... прикольно когда противопоставляют CMSIS и SPL ...

Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 11:59:00
BCluster
uwrtey писал(а):
Рекомендуемо?
ИМХО: Мне кажется, что это не рекомендуемо... Скорее всего производитель хвастается, что на их камнях можно применять SPL - типа это современно, практично и технологично...
Ну как сказать. Если они сами его разработали (поправьте если я не прав), вполне логично, что они будут его пихать везде. Вопрос в том, приживется он или нет.
Насчет практично и технологично - тут дело вкуса. По крайней мере, на камнях такого класса вполне
допустимо применять такие библиотеки.
dosikus писал(а):SPL для недалеких коммерсантов ,тем кому изучать ни камень ни даташит некогда
не обобщайте. В любых целях, кроме любительских-исследовательских, есть два фактора, влияющих на выбор чего бы то ни было. Качество и скорость разработки. Если качество, в итоге, тоже самое, то смысла тратить больше времени на разработку нет.
Другое дело, если страдает качество. Если это так, попрошу Вас привести пример. Я в самом деле сейчас начинаю разработку на cortex m4f, и хотел бы не ошибиться в базовых вопросах, ибо опыта работы с stm32 нет. Спасибо
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:31:44
dosikus
BCluster писал(а): Если это так, попрошу Вас привести пример.
Отсюда и далее
http://kazus.ru/forums/showpost.php?p=6 ... stcount=22
И здесь немного
http://kazus.ru/forums/showthread.php?t=107360
BCluster писал(а):
на cortex m4f
Может все таки Cortex M4 ? И конкретно STM32F4xx ?

Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:37:59
BCluster
Спасибо, почитаю. Нет, таки M4F

Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:45:18
dosikus
BCluster писал(а):Спасибо, почитаю. Нет, таки M4F

Ткните носом .

Ибо Cortex M4F видел только у Ti-
Stellaris® ARM® Cortex™-M4F
Может что пропустил ?
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:45:50
HHIMERA
BCluster писал(а):Другое дело, если страдает качество. Если это так, попрошу Вас привести пример.
Навскидку...
SPI при работе с TFT и FAT...
при работе с TFT без FSMC...
работа с вязанием таймеров между собой и DMA...
В целом - при активной работе с железом МК...
Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:46:25
BCluster
dosikus писал(а):
Может что пропустил ?
в личку кинул

Re: SPL в STM32F4Discovery
Добавлено: Пн мар 10, 2014 12:47:58
dosikus
BCluster писал(а): 
Угу ...
Re: SPL в STM32F4Discovery
Добавлено: Ср мар 12, 2014 22:21:16
uwrtey
У меня появился еще один вопрос:
Как я должен узнать какой регистр за что отвечает?
В справочном руководстве что-то не шибко расписано.
Например мне нужно включить тактирование порта D.
Включается оно через регистр AHB1ENR.
Открываем справочное руководство на странице 178. // 6.3.10 RCC AHB1 peripheral clock register (RCC_AHB1ENR)
( и еще эта же информация есть на странице 238. // 7.3.10 RCC AHB1 peripheral clock enable register (RCC_AHB1ENR) - в чем разница - не понял )
Тут мы видим таблицу.
вот примечание к ней -
Bit 3 GPIODEN: IO port D clock enable
This bit is set and cleared by software.
0: IO port D clock disabled
1: IO port D clock enabled
И все - больше ни слова! Хочется побольше про все это узнать.... ( например, как я должен был узнать, что тактирование в обще нужно включать? )