STM32 новичку в ARM что к чему

Кто любит RISC в жизни, заходим, не стесняемся.
Аватара пользователя
Oxford
Опытный кот
Сообщения: 819
Зарегистрирован: Вт окт 23, 2012 13:17:25
Откуда: Прокопьевск
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Oxford »

Схем для паяльников полно готовых берите решение и юзайте.
Инженер R@D

Telegram чат: https://t.me/radiowolf или в поиске приложения @radiowolf. Личка:@cncoxford
Реклама
Аватара пользователя
Asmodey
Друг Кота
Сообщения: 6458
Зарегистрирован: Сб янв 28, 2006 22:47:24

Re: STM32 новичку в ARM что к чему

Сообщение Asmodey »

[uquote="do-vitas",url="/forum/viewtopic.php?p=3994363#p3994363"]Eddy_Em, у меня терморезистор 50ом[/uquote]
Мостовая схема включения терморезистора и дифусилитель. Либо измерение напряжений на плечах моста двумя каналами АЦП, с вычислением разности. После усиления усилителями постоянного тока, разумеется.
Астролябия-сама меряет, было бы что мерять!!!
Реклама
a797945
Мучитель микросхем
Сообщения: 446
Зарегистрирован: Вс ноя 01, 2015 09:15:16
Откуда: 69.Ржев

Re: STM32 новичку в ARM что к чему

Сообщение a797945 »

Loyso Pondohva, между ОУ и МК R и C стоят? (оговариваются в AN2834), если спешить не куда - поставьте максимально "длинное" преобразование (в SMPRх ).
Loyso Pondohva
Прорезались зубы
Сообщения: 213
Зарегистрирован: Пт июл 03, 2020 22:09:02

Re: STM32 новичку в ARM что к чему

Сообщение Loyso Pondohva »

[uquote="a797945",url="/forum/viewtopic.php?p=3994525#p3994525"]Loyso Pondohva, между ОУ и МК R и C стоят? (оговариваются в AN2834).[/uquote]

Нет. Не стоят. Этот вход вообще я сделал чтобы "не пропадал" второй ОУ в LM358. А первый используется после AD8307 (логарифмический детектор ВЧ) и там стоят - после детектора и до ОУ.

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

Или сделаю от 5 в до 3 в линейный стабилизатор на LM317т. Правда - это 2 в на пределе LM - ки и я не знаю нормально ли 3в (а не 3.3) для всего. Но скорее всего - так даже лучше. Самый большой ток потребляет подсветка дисплея, а так еще можно все запитать от 3.3 v blue pill - не помню сходу сколько там можно брать, но на AD9850 и MCP4922 хватит.

Вообще посмотрю сколько тока нужно на критичные по стабильности узлы и исходя из этого пойму как схему запитывать. Пока собрал только прикидочно - чтобы убедиться, что все как-нибудь работает и весь софт написать. Еще ОУ для ВЧ - AD 8009 не пришел...
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
do-vitas
Потрогал лапой паяльник
Сообщения: 363
Зарегистрирован: Вс мар 03, 2019 08:18:34
Откуда: Волгоград

Re: STM32 новичку в ARM что к чему

Сообщение do-vitas »

do-vitas писал(а):проблема в том что устройство стартует только после нажатия ресета!
Решил однако кандер 105 допаял параллельно тому что ресет на массу подтягивает! может кому пригодится... :))
Реклама
a797945
Мучитель микросхем
Сообщения: 446
Зарегистрирован: Вс ноя 01, 2015 09:15:16
Откуда: 69.Ржев

Re: STM32 новичку в ARM что к чему

Сообщение a797945 »

документ не торопясь посмотрите - не надо будет делать лишних движений ;)
Реклама
Loyso Pondohva
Прорезались зубы
Сообщения: 213
Зарегистрирован: Пт июл 03, 2020 22:09:02

Re: STM32 новичку в ARM что к чему

Сообщение Loyso Pondohva »

Смотрю AN2834. Ох, самое трудное - не делать а читать по делу... да. Спасибо :)
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Zhuk72 »

Приветствую, котоварищи.
Разбираюсь с L031, в частности с его USART2.

При отправке символа с компа МК входит в прерывание, а далее (смотрите картинку) программа должна зайти в обработку приема.
Изображение
Но в момент чтения регистра USART2->ISR бит RXNE сбрасывается. Соответственно чтения не происходит.
Кто-то может объяснить причину такого поведения?
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Reflector
Поставщик валерьянки для Кота
Сообщения: 2089
Зарегистрирован: Вс июн 19, 2016 09:32:03

Re: STM32 новичку в ARM что к чему

Сообщение Reflector »

[uquote="Zhuk72",url="/forum/viewtopic.php?p=3995045#p3995045"]Кто-то может объяснить причину такого поведения?[/uquote]
Уверен, что отладчик прочитал только ISR, а не все регистры включая DR?
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Zhuk72 »

Действительно :)
Но в терминале эхо не появилось, хотя по всем шагам прошелся как положено.
Со скоростью напортачил или с конфигом пина ТХ - вот в чем вопрос!
Спасибо!
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Аватара пользователя
Eddy_Em
Собутыльник Кота
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Eddy_Em »

Вожусь со светодиодной матрицей (поочередно соединены четыре матрицы 8х га MAX7219. И в мануале на STM32F103 вообще не вижу прерывания SPI по окончанию передачи данных! Есть по TXE, но в это время передача еще идет. Данные передаю при помощи DMA, а MAX7219 требует сразу после последнего тактового импульса поднять ногу CS, чтобы захватить данные из буфера.
А еще у меня почему-то все данные, приходящие на вход, идут на выход, хотя последние 16 бит должны захватываться!

Как с этим бороться нормальным способом? Чтобы не по-абдурински, используя блокирующие вызовы, а с помощью DMA и конечных автоматов?
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: STM32 новичку в ARM что к чему

Сообщение uldemir »

Не знаю нюансов про MAX, но если это тот самый сигнал CS, то почему не использовать аппаратный, который должен нормальный SPI уметь генерить? В STшной документации, вроде его зовут NSS.

disclaimer: я сейчас сижу под MSP432 и EFM32 и занимаюсь именно SPI - там всё это происходит именно так и без проблем.
Аватара пользователя
Eddy_Em
Собутыльник Кота
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Eddy_Em »

uldemir, спасибо, попробую. Правда, пока вообще ничего не выходит: как только активировал аппаратный NSS, даже данные перестали полностью передаваться (передается только три бита, а CS вообще в нуле сидит и на 1 не "выпрыгивает")…
На форумах пишут, что NSS управляется исключительно ногодрыгом! И действительно: аппаратный NSS не работает так, как нужно! Он постоянно держит ногу CS в нуле, не поднимая ее в 1 после окончания передачи данных...
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Reflector
Поставщик валерьянки для Кота
Сообщения: 2089
Зарегистрирован: Вс июн 19, 2016 09:32:03

Re: STM32 новичку в ARM что к чему

Сообщение Reflector »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3996566#p3996566"]а CS вообще в нуле сидит и на 1 не "выпрыгивает"…[/uquote]
Только узнал, что у ST проблемный SPI? :) По документации NSS в нуле пока включен SPI, но даже если его выключить NSS будет просто болтаться в воздухе и можно разве что подтяжку включить... Более новые версии SPI умеют дергать NSS между байтами, но F1 так не умеет. А если нужно отправить серию байт и поднять NSS в самом конце, то нужен еще более новый SPI, как у H7, хотя писали, что такие будут у большинства мк выпущенных с этого года.
Последний раз редактировалось Reflector Сб мар 13, 2021 13:54:22, всего редактировалось 1 раз.
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: STM32 новичку в ARM что к чему

Сообщение uldemir »

есть: 25.5.2 SPI control register 2 (SPI_CR2)
Bit 2 SSOE: SS output enable
0: SS output is disabled in master mode and the cell can work in multimaster configuration
1: SS output is enabled in master mode and when the cell is enabled. The cell cannot work
in a multimaster environment.
NSS ни в коем случае не должен дёргаться между байтами. Иначе будет невозможно общение с SPI EEPROM - там тоже надо опустить CS, передать данные, поднять CS. Так вот, пока есть данные на передачу CS остаётся в нуле. Если делать это по опросу (и даже по прерываниям, если случится задержка) - может возникнуть пауза и CS снимется (перейдёт в лог.1), но если кормить через DMA - такой проблемы нет.
Аватара пользователя
Eddy_Em
Собутыльник Кота
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Eddy_Em »

uldemir, нет. Как только я включаю SPI, если у меня NSS настроен аппаратно, то он сразу падает в нуль. И после окончания передачи в нуле так и остается. В мануале по поводу SSOE, кстати, так и говорится, что "SS output is enabled in master mode and when the cell is enabled" (а не "when transmission is in process", что нужно мне).
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: STM32 новичку в ARM что к чему

Сообщение uldemir »

Хмм. не ожидал такого от ST... Тогда План Б. А обязательно ли делать фронт импульса после передачи? В одной конструкции я делал динамическое отображение через сдвиговый регистр MAX6312. Там задвигал данные через SPI, а по окончании дёрнуть строб параллельной загрузки. Я изменил порядок. Сначала дёргаю строб, чтобы записалось то, что было перед этим залито, а затем заливал следующую порцию для следующего фрейма.

Всё это делалось на таймере. Один канал сравнения формировал строб записи, а другой канал создавал event, который запускал DMA, который заливал данные в SPI и SPI заливал данные в сдвиговый регистр MAX-имки. Период таймера задавал интервал с какой частотой переключались разряды. Как-то так, и это всё работало аппаратно без всяких опросов, прерываний итп.

О, посмотрел старый исходник - там еще этот таймер формировал PWM для сигнала Blank - регулировка яркости.
Аватара пользователя
Eddy_Em
Собутыльник Кота
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01
Контактная информация:

Re: STM32 новичку в ARM что к чему

Сообщение Eddy_Em »

В общем, оказалось, что строгих требований к CS у MAX7219 таки нет. И данные поперли. Бьюсь сейчас с инициализацией всех пикселей (почему-то пока только нулевая строка светится).

UPD: все завелось, всем спасибо!
https://github.com/eddyem/stm32samples/ ... 219_screen
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
avtoneru
Родился
Сообщения: 13
Зарегистрирован: Вт май 25, 2021 18:41:53

Re: STM32 новичку в ARM что к чему

Сообщение avtoneru »

Вопрос.
А пользуется кто-либо для работы с STM32 PlatformIO?
Поддерживается работа с фреймворками:
Arduino
Cmsis
Spl
Stm32Cube
Mbed
Libopencm3
Zephyr

Мне очень "зашло"... порог вхождения - на уровне ардуино.
Аватара пользователя
Asmodey
Друг Кота
Сообщения: 6458
Зарегистрирован: Сб янв 28, 2006 22:47:24

Re: STM32 новичку в ARM что к чему

Сообщение Asmodey »

[uquote="avtoneru",url="/forum/viewtopic.php?p=4037274#p4037274"]Поддерживается работа[/uquote]
Ага, поддерживается. Через командную строку и правку файла конфигурации? Как в каменном веке.
Кому как, а мне этого платформио хватило по самое нехочу с ESP32...
Астролябия-сама меряет, было бы что мерять!!!
Ответить

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