Em::blocks IDE (EmBitz)

Кто любит RISC в жизни, заходим, не стесняемся.
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

scorpi_0n писал(а):Ой! А что это?
Ну у вас же всё наперекосяк.
Отправляем байт в DR ждём TXE=1 ждём BSY=0. Поднимаем CS если нужно. Это передача одного байта.
Отправляем байт в DR ждём TXE=1 отправляем следующий байт ждём TXE=1 отправляем следующий байт и т. д. ждём TXE=1 ждём BSY=0. Поднимаем CS если нужно. Это передача нескольких байт.
В RM же всё разрисовано. Купите логический анализатор и такие вопросы не будут возникать.


Ну-ну, анализатор в ЛНР :))) :cry:

А в чем собственно разница?
При первой передаче TXE=1 и BSY=0, поэтому алгоритм сразу перейдёт к отправлению байта. При повторном вызове функции, если передача не закончилась, то будет ждать BSY=0 и TXE=1. Если же передача закончилась, то сразу переходим к отсылке следующего байта.
Те же яйца, только в профиль :)
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Andrew Martin писал(а):Ну-ну, анализатор в ЛНР :))) :cry:

Понимаю. Но STM32 вы же где-то брали? Они же тоже на грядках не растут.
Протэус СТМ32 не поддерживает. Симулятор отсутствует. Без анализатора изучение СТМ32 это очень надолго.
А в чем собственно разница?

Что у всех работает а у вас нет.
Те же яйца, только в профиль :)

А откуда вам знать? Не работает. А почему? Без анализатора вы причину сами найти не можете и визуально описать её для других не в состоянии.
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

scorpi_0n писал(а):Понимаю. Но STM32 вы же где-то брали? Они же тоже на грядках не растут.


Да нихрена вы не понимаете. :evil:
Это запас 2-х летней давности, привезенный из Харькова.

scorpi_0n писал(а): Без анализатора изучение СТМ32 это очень надолго.


А я никуда не спешу. МК для меня хобби, а не работа.
Уже сделал вольтметр-амперметр на STM32F0F4P6, имея только переходник на уарт, и могу точно сказать что АЦП и таймеры общего назначения в данном МК соответствуют описанию в RM. А SPI увы не соответствует :(

scorpi_0n писал(а): Что у всех работает а у вас нет.


Очередная демагогия.
Я видел здесь только одного человека, который реально запускал SPI на STM32F030 (это dosikus), остальные только теоретизировали на тему как ДОЛЖЕН работать SPI (как написано в RM я и сам знаю), и не смогли дать НИ ОДНОГО толкового примера.
Потому что баловаться с SPL - это одно дело, а знать тонкости периферии в конкретной линейке - другое.
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Andrew Martin писал(а):Я видел здесь только одного человека, который реально запускал SPI на STM32F030 (это dosikus), остальные только теоретизировали на тему как ДОЛЖЕН работать SPI (как написано в RM я и сам знаю), и не смогли дать НИ ОДНОГО толкового примера.
Потому что баловаться с SPL - это одно дело, а знать тонкости периферии в конкретной линейке - другое.

Вы это серьёзно? Или как? До 030 были ещё 050 и 051. С них то и начиналась собственно линейка F0XX. А также были F3ХХ. Не говоря о нынешних 038 042 048 071 072 091 и пр.
Так вот. Скажу вам по секрету. У них всех SPI абсолютно одинаков. И ничем SPI 030-го не отличается от остальных. Ничем. Сможете запомнить?
У меня на столе сейчас прикручена STM32F050 (по новому - STM32F031) и всё работает. Что 8 бит что 16 что 9. Все биты отрабатываются правильно. SPL не пользуюсь. Поэтому мне просто не понятно что вы там не смогли. Тем более что вы даже не удосужились уточнить что именно у вас не работает. Нет клока нет данных лишние данные данные обрываются 16 бит вместо 8 и т.д.
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: Em::blocks IDE (EmBitz)

Сообщение a5021 »

Andrew Martin писал(а):Очередная демагогия.
Я видел здесь только одного человека, который реально запускал SPI на STM32F030 (это dosikus), остальные только теоретизировали на тему как ДОЛЖЕН работать SPI (как написано в RM я и сам знаю), и не смогли дать НИ ОДНОГО толкового примера.
Потому что баловаться с SPL - это одно дело, а знать тонкости периферии в конкретной линейке - другое.

Хоть демагогия, хоть размагогия. Я тут намедни взялся покурить датчик давления, т.ч. на столе макетка с этим самым STM32F030K6 оказалась как раз кстати. Сейчас специально подоткнул индикатор на двух HC595 через SPI. Работает без вопросов. В чем нечеловеческий подвиг запуска SPI на STM32, никак в толк взять не могу.

Изображение

Изображение
Вложения
IMG_4722.JPG
(136.21 КБ) 1681 скачивание
IMG_4724.JPG
(117.54 КБ) 1693 скачивания
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

scorpi_0n писал(а):У меня на столе сейчас прикручена STM32F050 (по новому - STM32F031) и всё работает. Что 8 бит что 16 что 9. Все биты отрабатываются правильно. SPL не пользуюсь.


Ещё скажите что на 051 и на 030 один и тот же RM :)))

И опять тонны пустопорожнего трёпа. Где код? Инициализацию и передачу в студию.
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

a5021 писал(а): Я тут намедни взялся покурить датчик давления, т.ч. на столе макетка с этим самым STM32F030K6 оказалась как раз кстати. Сейчас специально подоткнул индикатор на двух HC595 через SPI. Работает без вопросов. В чем нечеловеческий подвиг запуска SPI на STM32, никак в толк взять не могу.


Ну и на кой нужна ваша фотосессия? Пайкой и макетками хвастаетесь? :)))
Код предъявите.
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: Em::blocks IDE (EmBitz)

Сообщение a5021 »

Andrew Martin писал(а):Ну и на кой нужна ваша фотосессия? Пайкой и макетками хвастаетесь?

Этим, оказывается, можно хвастаться? Буду знать. А так, что было на столе, то и заснял. Иллюстрация была на тему, что запустить передачу по SPI никаких мегаскиллов не требует.

Код предъявите.

Да какой там, нафиг, код вам нужен? Это код что-ли? Это два оператора присвоения:

Код: Выделить всё

  SPI1->CR2 = SPI_CR2_DS_0 | SPI_CR2_DS_1 | SPI_CR2_DS_2 | SPI_CR2_DS_3;
  SPI1->CR1 = SPI_CR1_MSTR | SPI_CR1_SPE   | SPI_CR1_SSI | SPI_CR1_SSM;


Все! Теперь, если что-то будет положено в DR, то оно немедленно вылетит в линию.
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Andrew Martin писал(а):Ещё скажите что на 051 и на 030 один и тот же RM :)))

Смех без причины... А так вам было бы полезно заглянуть и сравнить эти два RM. Для общего развития и понимания сущности.
Где код? Инициализацию и передачу в студию.

Да хоть в том же RM0091 под 051.
A.17 SPI code example
A.17.1 SPI master configuration code example
/* (1) Master selection, BR: Fpclk/256 (due to C27 on the board, SPI_CLK is
set to the minimum) CPOL and CPHA at zero (rising first edge) */
/* (2) Slave select output enabled, RXNE IT, 8-bit Rx fifo */
/* (3) Enable SPI1 */
SPI1->CR1 = SPI_CR1_MSTR | SPI_CR1_BR; /* (1) */
SPI1->CR2 = SPI_CR2_SSOE | SPI_CR2_RXNEIE | SPI_CR2_FRXTH
| SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0; /* (2) */
SPI1->CR1 |= SPI_CR1_SPE; /* (3) */

A.17.3 SPI full duplex communication code example
if ((SPI1->SR & SPI_SR_TXE) == SPI_SR_TXE) /* Test Tx empty */
{
/* Will inititiate 8-bit transmission if TXE */
*(uint8_t *)&(SPI1->DR) = SPI1_DATA;
}
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

RM я и без вас читал.
Ваша указка на сниппеты (где рабочий, но ПОЛНОДУПЛЕКСНЫЙ пример) бесполезна, а сопоставление вот этого

scorpi_0n писал(а):A.17.3 SPI full duplex communication code example
if ((SPI1->SR & SPI_SR_TXE) == SPI_SR_TXE) /* Test Tx empty */
{
/* Will inititiate 8-bit transmission if TXE */
*(uint8_t *)&(SPI1->DR) = SPI1_DATA;
}


и вот этого

scorpi_0n писал(а):Отправляем байт в DR ждём TXE=1 ждём BSY=0. Поднимаем CS если нужно. Это передача одного байта.
В RM же всё разрисовано.


лишний раз доказывает мою правоту - сначала проверка флагов, затем передача.

Ваш алгоритм не соответствует мануалу и как вы голословно утверждаете, он работает, мой - соответствует, но не работает как положено. Алгоритм досикуса не соответствует мануалу, но работает как положено.
Из чего можно сделать вывод - вы теоретик :)
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Andrew Martin писал(а):RM я и без вас читал.

По вашим постам не видно.
Ваша указка на сниппеты (где рабочий, но ПОЛНОДУПЛЕКСНЫЙ пример) бесполезна

Это я уже понял. Вам хоть что всё бесполезно. У вас своё видение суслика даже если его там нет.
а сопоставление

лишний раз доказывает мою правоту - сначала проверка флагов, затем передача.

Вашей правотой там и не пахнет. Но вы можете неистово продолжать это доказывать. Главное не прерывать удовольствие от этого. Ведь все знают что только товарищ прапорщик шагает в ногу.
Ваш алгоритм не соответствует мануалу и как вы голословно утверждаете, он работает, мой - соответствует, но не работает как положено. Алгоритм досикуса не соответствует мануалу, но работает как положено.

Пока здесь никто кроме вас ничего голословно не утверждал. Только вы голословно утверждаете что что-то там не написано и что-то там не работает не указывая что именно. Вот когда разберётесь с тремя соснами флагами тогда может быть и у вас всё заработает как и у остальных.
Из чего можно сделать вывод - вы теоретик :)

И не просто теоретик а хороший теоретик. А ещё я этим очень горжусь! :wink:
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

scorpi_0n писал(а):И не просто теоретик а хороший теоретик. А ещё я этим очень горжусь! :wink:


Всё с вами понятно - своих наработок кода для F030 у вас нет, раз копипастите RM.
Так бы и сразу сказали, а то получился долгий разговор ни о чём :)))
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Andrew Martin писал(а):Всё с вами понятно - своих наработок кода для F030 у вас нет

Это уже не столь существенно. Все уже знают что у вас никакие наработки не работают. Даже из RM.
Но у вас ещё есть шанс. Типа последний довод королей. Пожалуйтесь на официальном сайте СТМ на их горбатые RM и SPI. Если они не онемеют от этого то обязательно вам что-то ответят.
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Em::blocks IDE (EmBitz)

Сообщение Andrew Martin »

scorpi_0n писал(а):Это уже не столь существенно. Все уже знают что у вас никакие наработки не работают. Даже из RM.


Почему же никакие не работают? Наработки dosikus у меня как раз работают как часы, в отличие от кода из RM.
О том и речь, что RM и сниппеты многое не договаривают, а именно особенности работы мастера в однонаправленном режиме.
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

А не должны и не обязаны. Разобраться во всём этом и есть ваша задача.
Pnjom-Penb
Мучитель микросхем
Сообщения: 469
Зарегистрирован: Вс авг 30, 2015 03:52:59

Re: Em::blocks IDE (EmBitz)

Сообщение Pnjom-Penb »

Andrew Martin: Только он Вам в ней не поможет, его задача - не в этом. :))) Гляньте сюда и избавьтесь от иллюзий.
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

Вместо чтения RM предлагаете увеличить стек? :)))
И в скольких случаях сие помогает?
Pnjom-Penb писал(а):Только он Вам в ней не поможет, его задача - не в этом. :)))

Вы правы. Подсказать могу а думать за кого-то - не моя задача.
Pnjom-Penb
Мучитель микросхем
Сообщения: 469
Зарегистрирован: Вс авг 30, 2015 03:52:59

Re: Em::blocks IDE (EmBitz)

Сообщение Pnjom-Penb »

Вы абсолютно не в курсе того, что я предложил. В чем нетрудно убедиться, пройдя по ссылке.
И похоже, дело отнюдь не в невнимательности. :dont_know:
Аватара пользователя
scorpi_0n
Вымогатель припоя
Сообщения: 616
Зарегистрирован: Вс ноя 01, 2015 13:13:49

Re: Em::blocks IDE (EmBitz)

Сообщение scorpi_0n »

А в вашем неумелом троллинге. Это я понял. Если вы в теме то и объясните Andrew Martin в чём его ошибка. Всё остальное сказанное вами будет расцениваться как пустой трёп.
Ответить

Вернуться в «ARM»