Easyelectronics.ru

Электроника для всех
Текущее время: 25 фев 2021, 07:34

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



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 3524 ]  На страницу Пред.  1 ... 131, 132, 133, 134, 135, 136, 137 ... 141  След.
Автор Сообщение
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 июл 2020, 00:32 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 1417
axill писал(а):
Код:
EXTI->PR |= EXTI->PR;

Код:
EXTI->PR = 0xFFFF'FFFF;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 июл 2020, 00:38 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 4961
Откуда: КЧР, поселок Нижний Архыз
Зачем тождество? Просто EXTI->PR = EXTI->PR;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 22 июл 2020, 20:12 
Старожил

Зарегистрирован: 08 июл 2013, 17:00
Сообщения: 862
https://www.st.com/en/development-tools/stsw-stm32102.html#overview

А ответную часть для STM32Fxxx официально СТМ где-нибудь выложила?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 22 июл 2020, 20:15 
Старожил

Зарегистрирован: 08 июл 2013, 17:00
Сообщения: 862
tonyk писал(а):
https://www.st.com/en/development-tools/stsw-stm32102.html#overview

А ответную часть для STM32Fxxx официально СТМ где-нибудь выложила?

Вот так всегда! Пока не спросил, мог найти.
https://microtechnics.ru/wp-content/uploads/2013/10/stsw-stm320811.zip


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 25 июл 2020, 16:41 
Только пришел

Зарегистрирован: 13 май 2020, 19:22
Сообщения: 5
собираю st-link вот по этой схеме http://we.easyelectronics.ru/STM32/sozd ... nk-v2.html , решил добавить микросхему буфера 74hc244 для защиты от перегорания stm, а теперь вопрос, вот там резисторы стоят между jtag разъемом и контроллером (в моем случае буфером, а между буфером и контроллером резисторы ставить, или это уже совсем лишнее?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 25 июл 2020, 17:26 
Старожил

Зарегистрирован: 06 окт 2014, 20:14
Сообщения: 1076
Лучше делать гальваническую развязку. 74hc244 не защитит от "перегорания" программируемый контроллер. А теперь подумайте, что Вам ценнее ваше разрабатываемое устройство или дешевый программатор? А резисторы ставить лучше такие-же, рассчитаны под "среднюю" характеристику проводов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 25 июл 2020, 18:10 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 7286
Скажем, на SWCLK буфер поставить легко, а что вы будете делать с двунаправленной SWDIO?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 16:26 
Здравствуйте!

Зарегистрирован: 28 июл 2020, 15:53
Сообщения: 4
Всем привет. Пытаюсь организовать функцию задержки в миллисекундах, используя SysTick. Хочу моргать диодом с задержкой в 1 секунду, но в реальности получаю такую задержку при указании в функции Delay_ms(300) значения равному 300, а не 1000. Функция main() и Delay_ms() показаны ниже.
Show


Весь код main.c ниже под спойлером. В функции ClockInit() настроил множители и делители, чтобы получить частоты SYSCLK и HCLK равными 32МГц, настраивал по диаграмме из Куба. Работаю с платой STM32F411E-DISCO (контроллер STM32F411VE).
Настроенную частоту HCLK 32 МГц я делю на 1000 в функции SysTick_Config(HCLK/1000), насколько понимаю, так я получаю количетво тиков на 1мс. В функции Delay_ms() указываю время задержки, которое считается в обработчике прерывания SysTick_Handler.
Куда смотреть и что я делаю не так?

Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 16:43 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 1417
sinisha_mihajlovic писал(а):
Код:
   RCC->PLLCFGR |= (0x0A<<RCC_PLLCFGR_PLLM_Pos)    //PLL делитель /M равен 10 или 0x0A
             | (0xA0<<RCC_PLLCFGR_PLLN_Pos)      //PLL множитель /N равен 160 или 0xA0
             | (0x03<<RCC_PLLCFGR_PLLP_Pos)    //PLL делитель /P равен 8 или 0x30000
             | (0x01<<RCC_PLLCFGR_PLLSRC_Pos);  //Тактирование PLL от HSE

И как тут 32MHz от кварца на 8 MHz получается?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 17:20 
Здравствуйте!

Зарегистрирован: 28 июл 2020, 15:53
Сообщения: 4
Reflector писал(а):
И как тут 32MHz от кварца на 8 MHz получается?

Вот так
Show

Я где-то ошибся?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 17:42 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1660
Тактирование PLL от HSE или HSI ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 17:56 
Здравствуйте!

Зарегистрирован: 28 июл 2020, 15:53
Сообщения: 4
VladislavS писал(а):
Тактирование PLL от HSE или HSI ?

От HSE, настраиваю последней строчкой в этом куске кода
Код:
RCC->PLLCFGR |= (0x0A<<RCC_PLLCFGR_PLLM_Pos)    //PLL делитель /M равен 10 или 0x0A
             | (0xA0<<RCC_PLLCFGR_PLLN_Pos)    //PLL множитель /N равен 160 или 0xA0
             | (0x03<<RCC_PLLCFGR_PLLP_Pos)    //PLL делитель /P равен 8 или 0x30000
             | (0x01<<RCC_PLLCFGR_PLLSRC_Pos); //Тактирование PLL от HSE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 18:24 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 1417
sinisha_mihajlovic писал(а):
Я где-то ошибся?

8 / 10 * 160 / 8 = 16


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 18:26 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1660
sinisha_mihajlovic писал(а):
От HSE, настраиваю последней строчкой в этом куске кода
А на картинке в кубе?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 28 июл 2020, 19:01 
Здравствуйте!

Зарегистрирован: 28 июл 2020, 15:53
Сообщения: 4
Спасибо, увидел! Поменял коэффициенты, завелось.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 10 авг 2020, 14:36 
Только пришел

Зарегистрирован: 08 авг 2020, 15:28
Сообщения: 8
Откуда: Киев
Запускаю ADC STM32F030P4F6 - непонятки с регистром ADC_CCR - он идёт отдельно. Address offset: 0x308
1 вопрос - как к нему обращаться? Запись ADC1->CCR = ADC_CCR_VREFEN; не катит.

#define ADC1_BASE (APBPERIPH_BASE + 0x00012400)
#define ADC_BASE (APBPERIPH_BASE + 0x00012708)

Или ставить ADC->CCR = ADC_CCR_VREFEN; ??? Так вроде прокатило, так правильно?

2 вопрос - для работы ADC нужно ли включать опорник? Или ADC работает с AVCC?


Последний раз редактировалось 2764 10 авг 2020, 14:56, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 10 авг 2020, 14:44 
Старожил

Зарегистрирован: 10 окт 2014, 00:48
Сообщения: 7286
"ADC->CCR |= ADC_CCR_VREFEN;"
Сгрузите снипетсы с сайта ST.
2 - второе. Если Vref вам не нужен, включать не нужно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 10 авг 2020, 14:52 
Старожил

Зарегистрирован: 23 янв 2016, 15:37
Сообщения: 1417
2764 писал(а):
1 вопрос - как к нему обращаться? Запись ADC1->CCR = ADC_CCR_VREFEN; не катит.

Открываем stm32f030xc.h, ищем "ADC", раз, два, третье совпадение и уже видно в какой структуре обитает CCR.

Цитата:
2 вопрос - для работы ADC нужно ли включать опорник? Или ADC работает с AVCC?

Какой опорник? Если речь о VREFINT, то он просто подключен к одному из каналов ADC, опять же это ищется за минуту в DS.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 10 авг 2020, 15:01 
Только пришел

Зарегистрирован: 08 авг 2020, 15:28
Сообщения: 8
Откуда: Киев
Благодарю, помогли разобраться с ADC, когда первый раз лазишь по новому даташиту - не всё сразу вкуриваешь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 авг 2020, 00:59 
Старожил

Зарегистрирован: 28 сен 2018, 00:25
Сообщения: 367
Есть контроллер (F401RE, но это не особо важно), к нему по спи подключена флешка, на которой будут храниться картинки, они (изображения) уже сконверчены в массивы. Что то увлеченно туплю и не соображу как эти массивы скомпилировать в отдельный бинарник для заливки программатором. GCC.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 авг 2020, 01:52 
Заглядывает иногда

Зарегистрирован: 26 сен 2015, 03:02
Сообщения: 101
cubot писал(а):
Есть контроллер (F401RE, но это не особо важно), к нему по спи подключена флешка, на которой будут храниться картинки, они (изображения) уже сконверчены в массивы. Что то увлеченно туплю и не соображу как эти массивы скомпилировать в отдельный бинарник для заливки программатором. GCC.

Делал так.
Упаковал картинки (GIF, BMP) архиватором tar, который по сути просто соединяет много файлов в один, добавляя заголовки
Загрузил полученный tar во флешку как бинарный файл с помощью своего flashloader написанного для stlink
В самой прошивке - простейший парсер (~20 строчек), который при загрузке заполняет таблицу индекса файлов исходя из заголовков tar
Дальше в прошивке обращаюсь к картинкам как к структурам в памяти по адресам взятым из таблицы

А вообще массив в бинарник можно превратить самописной программой из десятка строчек под GCC.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 авг 2020, 10:01 
Старожил

Зарегистрирован: 14 апр 2014, 11:41
Сообщения: 219
Откуда: Минск Беларусь
Как-то все замороченно у вас. Я для загрузки картинок в микроконтроллер написал простенький скрипт для node.js которому подсовываю bmp-шки 24 бит, а на выходе получаю бинарник из этих картинок в формате 16 бит 565, которым обрезаю заголовки и хидер, где указаны адреса и размеры картинок. Далее через win32diskimager заливаю бинарник на флэшку (файловая система не используется). В программе беру тупо адрес, размеры и читаю с флэшки готовые данные.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 21 авг 2020, 17:04 
Старожил

Зарегистрирован: 28 сен 2018, 00:25
Сообщения: 367
))) много инфы дать тоже оказывается вредным ))
вообще, проблема была в том, чтобы массивы получить в отдельный бинарник. что это картинки, что это спи флешка - это лишнее оказалось, т.к. все сразу цепляются к формату картинки, как заливать во флешку и прочим несущественным деталям.. Массивы уже есть в виде си исходника и нужно получить их бинарники. Усё.
В итоге подсказали про objdump/objcopy. Добавил в проект эти файлы, при сборке получил .о, из них получил отдельные бинарники для каждого массива, потом copy *.bin flash.bin
Т.к. файлов больше одного, собрал это в такой батник
arm-none-eabi-objdump.exe -t %1| findstr /R \.rodata\.[_a-Z]*.*0004b000| "C:\Program Files (x86)\GnuWin32\bin\egrep.exe" -o \.rodata\.\S* > tmp.txt
set /p a=<tmp.txt
arm-none-eabi-objcopy.exe -O binary -j %a% %1 %1.bin

Да, не смог в батнике нормально подставить имя секции, пришлось через файл прокидывать..

А вот с tar мысль интересная, буду применять.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 25 авг 2020, 19:23 
Только пришел

Зарегистрирован: 04 апр 2020, 00:05
Сообщения: 29
Народ, подскажите, пожалуйста. Что нужно сделать, чтобы таймер в режиме одного импульса (высокое состояние вначале отсчета) не переключался в высокое состояние после остановки?
UPD. Вопрос отменяется.


Последний раз редактировалось Jorchick 25 авг 2020, 19:41, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32 для чайников
СообщениеДобавлено: 25 авг 2020, 19:28 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3838
Откуда: Китай, Пекин
Цитата:
Да, не смог в батнике нормально подставить имя секции

закапывай...

все используют powershell. не только удобно, но и работает везде. и на линуксе и на маке

_________________
unirail.org


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3524 ]  На страницу Пред.  1 ... 131, 132, 133, 134, 135, 136, 137 ... 141  След.


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


Кто сейчас на конференции

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


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

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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB