Например TDA7294

Форум РадиоКот • Просмотр темы - STM32 новичку в ARM что к чему
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Сб сен 26, 2020 09:55:53

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 6426 ]     ... , , , 315, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вт сен 15, 2020 16:51:17 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
В Cortex®-M3 programming manual он описан.


Нет. ))) Мне нравится когда вы мне помогаете! :)))

Добавлено after 50 minutes 9 seconds:
Исправил и запустил старый проект с часиками (секундами). ) Запустил RTC. Уже доволен. Но осталась кучка вопросов... Если сам не допетрю, то выложу код и спрошу здесь.
Спасибо, что помогаете. )

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 17:42:25 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Правильно ли я перевел, МК всегда запускается по умолчанию на внутренней HSI 8 МГц? Или его тоже надо запускать... А то я как-то настроил RTC, и работает, но сводится к тому, что он весь тактируется от этого RTC.

Добавлено after 25 minutes 41 second:
А... ну логично. Как же он мне тогда настраивать RTC, если тактирования не будет... Т.е. Я могу тупо оставить как есть? Или мне все же надо пропускать (настраивать) через деление на 2 HSI для того, чтобы PLL использовать? Или у меня МК просто по умолчанию на 8 МГц работает?

Добавлено after 1 minute 6 seconds:
Все. туплю. Посмотрел картинку. ТАм можно PLL не использовать. По умолчанию сразу такты идут на шины. Трапецией на схеме мультиплексор обозначен?

Добавлено after 38 minutes 12 seconds:
Прошу прощение за тупые вопросы.. Но вот тут нашел:
7.2.6 System clock (SYSCLK) selection
After a system reset, the HSI oscillator is selected as system clock. When a clock source is
used directly or through the PLL as system clock, it is not possible to stop it.

После сброса системы, внутренний высокочастотный генератор выбран как системный (тактирование). Когда источник тактов выбран напрямую или через ФАПЧ как системные часы, то его больше невозможно остановить.

Так если он выбран по умолчанию, как же тогда настройки происходят, если его невозможно остановить (изменить). Или я что-то не то понимаю?

Или он все же не выбран, а только флеш тактирует для программирования? А в качестве системного его еще включить надо? :dont_know: :facepalm:

_________________
Станислав


Вернуться наверх
 
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 17:45:34 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 1176
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 6701
Откуда: 845-й км.
Рейтинг сообщения: 3
Медали: 1
Получил миской по аватаре (1)
Его нельзя остановить, пока он используется (не важно, прямо или через PLL). Переключитесь на кварцевый генератор - тогда сможете его выключить.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Шестое юбилейное мероприятие в процессе
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 17:49:52 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
а.. вот так понятнее. )) Т.е. нельзя остановить, если нет никакого другого. Вот так надо было и писать по-английски...

Добавлено after 1 minute 40 seconds:
Правильно ли я понимаю по схеме 8 в РМ, что он подается на мультиплексор и по умолчанию выбран для тактирования всего? Или этот мультипрексор тоже надо включить? там есть сверху такая аббревиатура как SW.

_________________
Станислав


Вернуться наверх
 
Драйверы MOSFET/IGBT Infineon – силой нужно управлять!

Специалисты Infineon усовершенствовали традиционные кремниевые MOSFET и IGBT и выпустили компоненты на базе принципиально иных материалов – нитрида галлия и карбида кремния. Мы создали подборку полезных материалов, чтобы вы разобрались во всех тонкостях и стали экспертом по управлению силовыми приборами нового поколения CoolMOS, CoolGaN, CoolSiC!

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 18:12:15 
Грызет канифоль
Аватар пользователя

Карма: 10
Рейтинг сообщений: 36
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 285
Рейтинг сообщения: 3
Очевидно, что изначально все нужное уже включено для тактирования от внутреннего генератора, если какая-нибудь "мигалка" зашитая в МК успешно дергает ногами без всяких настроек RTC.

Кстати, аварийный переход на тактирование от внутреннего генератора вроде бы тоже включен по умолчанию. Сейчас вот прямо выдергиваю кварц 4 МГц из макетки, и подключенный к МК светодиод тут же начинает моргать с удвоенной частотой. Втыкаю кварц обратно, снова переходит на тактирование от кварцевого осциллятора. В STM8 так не было, там после аварийного переключения на внутренний генератор нужно было сбросить МК, чтобы заставить его снова работать с кварцем.

_________________
Астролябия-сама меряет, было бы что мерять!!!


Последний раз редактировалось Asmodey Ср сен 16, 2020 18:17:06, всего редактировалось 1 раз.

Вернуться наверх
 
Снижена цена на DC/DC и AC/DC преобразователи Mornsun в Компэл!

Хорошие новости для покупателей источников питания! Компэл снизил цены на всю продукцию Mornsun. В ассортименте – как широко известные и популярные позиции, так и новинки. Доступны AC/DC, неизолированные DC/DC-преобразователи или импульсные стабилизаторы (семейство K78/R3), изолированные DC/DC, и новейшее поколение R4.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 18:17:01 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Ну... у меня как раз RTC полностью настроены. А вот HSI и HSE абсолютно нет. ))) Может поэтому такие глупые вопросы получаются.

Добавлено after 57 seconds:
Это на каком МК?

_________________
Станислав


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 18:17:39 
Грызет канифоль
Аватар пользователя

Карма: 10
Рейтинг сообщений: 36
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 285
Рейтинг сообщения: 0
F303CB

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 18:18:54 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
На блюпилл не смогу проверить. Там кварц припаяный. )))

_________________
Станислав


Вернуться наверх
 
Бытовой пирометр АКИП-9312 – просто удобно!

Диапазон 35 °С ...42°С (температура тела) погрешность 0,3 °С
Диапазон 0 °С ...100°С (бытовая сфера) погрешность 1,0 °С
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 18:21:59 
Грызет канифоль
Аватар пользователя

Карма: 10
Рейтинг сообщений: 36
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 285
Рейтинг сообщения: 3
Для STM32F103 смотрите в даташите описание регистра Clock configuration register (RCC_CFGR), биты 1:0, это и должно быть то самое SW коммутирующее источники тактового сигнала.

Я как раз этот регистр ковыряю для F303, пытаюсь изменить коэффициенты умножения PLL. Пока не получается.

На блюпилл не смогу проверить. Там кварц припаяный. )))

Палец послюнявить и ткнуть им в выводы кварца. Кварцевый генератор заглохнет.

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Ср сен 16, 2020 19:14:13 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
О! спасибо!

Добавлено after 49 minutes 13 seconds:
Докапался до
7.3.2 Clock configuration register (RCC_CFGR)

Написано, что :

Bits 1:0 SW: System clock switch
Set and cleared by software to select SYSCLK source.
Set by hardware to force HSI selection when leaving Stop and Standby mode or in case of
failure of the HSE oscillator used directly or indirectly as system clock (if the Clock Security
System is enabled).
00: HSI selected as system clock
01: HSE selected as system clock
10: PLL selected as system clock
11: not allowed

Как я понимаю, сам автоматом выбирает HSI если выходит из различных режимов энергосбережения, либо сбоя HSE (если был включен CSS).
Но не написано, что он по умолчанию при включении МК выбирается. Или я опять чего-то недопонимаю. Или при сбросе МК.

З.Ы. я даже законспектировал все биты этого регистра, впрочем, как и других, которые мне нужны для настройки тактирования.

Добавлено after 58 seconds:
АААА! Там же в самом начале его значение при сбросе!!!! Дошло!

Добавлено after 26 seconds:
Reset value: 0x0000 0000 :music: :write:

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Чт сен 17, 2020 08:30:08 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
И я понял, что в качестве системных тактов может быть выбран только HSI, HSE или PLL. Никакие вторичные LSE, LSI не могут быть системными тактами, а только для независимого вотчдога, RTC или для выхода из режима сна. Да и на схеме это нарисовано.

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: HAL SPI
СообщениеДобавлено: Пт сен 18, 2020 11:57:33 
Друг Кота

Карма: 20
Рейтинг сообщений: 218
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6314
Рейтинг сообщения: 0
Объясните, кто знает, плс, почему в неблокирующую функцию
Код:
HAL_StatusTypeDef HAL_SPI_Receive_DMA(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size)

указатель на буфер pData передается без модификатора volatile ? Чет это на какой-то зашквар смахивает.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пт сен 18, 2020 12:58:01 
Собутыльник Кота
Аватар пользователя

Карма: 7
Рейтинг сообщений: 124
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 2987
Рейтинг сообщения: 0
Зачем здесь volatile?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пт сен 18, 2020 13:11:35 
Друг Кота

Карма: 20
Рейтинг сообщений: 218
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6314
Рейтинг сообщения: 0
Затем, что буфер модифицируется извне исполняемого кода.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пт сен 18, 2020 14:40:34 
Сверлит текстолит когтями
Аватар пользователя

Карма: 10
Рейтинг сообщений: 176
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 1183
Рейтинг сообщения: 0
И чего? Функции HAL_SPI_Receive_DMA на это начхать. Ей дали адрес, она туда положит (или возьмёт). Что по этому адресу ей фиолетово.

volatile должен быть буфер, адрес которого передаётся в функцию.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пт сен 18, 2020 21:03:31 
Встал на лапы
Аватар пользователя

Карма: 1
Рейтинг сообщений: 27
Зарегистрирован: Вс мар 03, 2019 08:18:34
Сообщений: 95
Откуда: Волгоград
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Собрал себе копию Stlink только сам разводил ну и по максимуму вывел все порты! у кого-то подсмотрел что выводят A2 и A3 RX и TX ну и я тоже вывел! ну как говорится про запас! запустил прошил все работает все гуд! но при обновление обратил внимание что прошивка stm8+10! Вопрос такой для чего нужен rx tx и наверно нужна какая-то другая прошивка... не-знаю не сталкивался!
качество монтажа не судите строго трясущимися руками пока лучше не могу да это первое устройство на smd.
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пт сен 18, 2020 22:28:51 
Друг Кота

Карма: 20
Рейтинг сообщений: 218
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6314
Рейтинг сообщения: 1
И чего? Функции HAL_SPI_Receive_DMA на это начхать.

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

Цитата:
volatile должен быть буфер, адрес которого передаётся в функцию.

В том виде, как функция нынче объявлена в хале, никто никому ничего не должен. Компилятор нигде не единым варнингом не пискнет, если какой горе-программер под буфер простой массив определит. И все бы поменялось, случись правильно определить параметры функции. Но нет. Любители хала обязаны страдать. И это правильно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Сб сен 19, 2020 06:39:28 
Сверлит текстолит когтями
Аватар пользователя

Карма: 10
Рейтинг сообщений: 176
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 1183
Рейтинг сообщения: 0
По большому счёту, действительно, никто никому ничего не должен. Задача функции передать в контроллер DMA адрес буфера и размер принимаемых данных. Ну и пнуть DMA, наверное. Она успешно делает это без всяких volatile. Где я взял адрес буфера (с генератора случайных чисел, тригонометрическими вычислениями, шифровкой с Нибиру или взял динамически в куче в конце концов) функцию волновать не должно. Как не должно волновать что я с этим буфером делал до, после и даже во время приёма. /dev/null у меня там.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Сб сен 19, 2020 13:45:54 
Друг Кота

Карма: 20
Рейтинг сообщений: 218
Зарегистрирован: Пт сен 13, 2013 13:11:31
Сообщений: 6314
Рейтинг сообщения: 0
По большому счёту, действительно, никто никому ничего не должен. Задача функции передать в контроллер DMA адрес буфера и размер принимаемых данных. Ну и пнуть DMA, наверное. Она успешно делает это без всяких volatile. Где я взял адрес буфера (с генератора случайных чисел, тригонометрическими вычислениями, шифровкой с Нибиру или взял динамически в куче в конце концов) функцию волновать не должно. Как не должно волновать что я с этим буфером делал до, после и даже во время приёма. /dev/null у меня там.

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

Ставим мысленный эксперимент. Keil, clang 6.14, все варнинги включены:

Изображение

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

Изображение

Итого имеем: передача правильного буфера вызывает возражения компиля, в то время, как передача горбухи проходит на ура. Вы за это? И реверс ситуации простым добавлением volatile к параметру функции вас категорически не устраивает? Хм. Я конечно понимаю, что квалификация порой навязывает танцору довольно специфичные взгляды на жизнь, но зачем же выпячивать?


Вложения:
2020-09-19_133528.jpg [38.37 KiB]
Скачиваний: 531
2020-09-19_132828.jpg [21.03 KiB]
Скачиваний: 213
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Сб сен 19, 2020 15:12:36 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 130
Рейтинг сообщений: 737
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4758
Откуда: Иркутск
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
Я понимаю, что я тупой. Переведите на русский язык пожалуйста эту строку

while ((RCC->BDCR & RCC_BDCR_LSERDY) != RCC_BDCR_LSERDY)

Понятно, что ждет установки флага готовности низкочастотного резонатора, но с позиции Си плохо ее понимаю. Плоховасто доходят до меня структуры, хотя уже много где про них читал...

_________________
Станислав


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6426 ]     ... , , , 315, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y