Главная › Форумы › Программирование микроконтроллеров › Программирование МК STM32
Помечено: STM32
- В этой теме 168 ответов, 99 участников, последнее обновление 9 месяцев, 3 недели назад сделано
Sanekfps2024.
-
АвторСообщения
-
Март 7, 2019 в 5:18 пп #17829
Alexrusneft
УчастникЗдравствуйте, кто нибудь пробовал повторить урок №96, подключение LAN8720 к STM32F4Disc. Я повторил урок, но нет результата. Уже несколько дней пытаюсь разобраться в чём дело, но пока что безрезультатно. Использую в проекте ту же плату с LAN8720 что и в уроке. Готовый проект с урока так же не работает. PHY адрес пробовал и 0 и 1, отключал DHCP и статичный адрес вбивал, в общем так и не удалось запустить передачу данных. Помогите пожалуйста.
Апрель 25, 2019 в 12:02 пп #18383boichonoc
УчастникДоброго времени суток! Кто-то работал с GSM модулями SIM800 и ему подобными? Конкретней SIM7600. Какая последовательность команд для установки связи с мобильным интернетом? И как осуществить передачу данных между МК и с данным модулем и сервером? (Конечный результат, прошивка МК STM32 удаленно, через интернет)
Май 18, 2019 в 2:01 пп #18544A.Tim.
УчастникНужна консультация (Возмездно) по 7-ому уроку на STM32. Вкратце: дисплей выводит символы, если вывожу их поштучно. Если пытаюсь вывести строку, то дисплей выводит случайную букву/цифру из строки, вместо самой строки. Код — в соответствии с Вашим, за тем исключением, что у меня другой контроллер с тактовой частотой 80 МГц и он хоть что-то стал выводить на дисплей при задержке 50-100 в функции delay(void), а не 1000. Т.е. я застрял на середине седьмого урока.
Работаю в Atollic True Studio
Май 30, 2019 в 2:16 пп #18651APB1
УчастникЗдравствуйте. Помогите, пожалуйста, если знаете ответ на мой вопрос.
Необходимо генерировать сигнал с помощью таймера. Линия подтянута к питанию, сигнал инверсный. Нужно притягивать линию к земле на заданное количество тиков таймера, а потом отпускать на какое-то время, после чего сигнал повторяется. Это как инверсный ШИМ.
Я думал, что это так же легко, как настроить прямой ШИМ. Но нет:
<div class=»spoilerui»>PWM mode 1
— In up-counting, channelx is active as long as CNT< CCRx, otherwise it is inactive
— In down-counting, channelx is inactive as long as CNT> CCRx, otherwise it is active.
PWM mode 2
— In up-counting, channelx is inactive as long as CNT < CCRx, otherwise it is active
— In down-counting, channelx is active as long as CNT > CCRx, otherwise it is inactive.</div>
Запускаю в режиме единичного сигнала, в итоге, как ни настраиваю PWM_mode и направление счетчика, а в конце передачи сигнала таймер притягивает ножку к земле. А мне важно, чтобы она оставалась в поднятом состоянии.Протокол похож на 1Wire ot Dallas Semiconductor
Июль 18, 2019 в 8:46 пп #19166Sergey1985
УчастникДоброго времени суток. Очень хотелось чтобы на сайте была затронута тема ассемблерных вставок в особенности для STM32. Или вот еще вопросик. Как подключить встроенные функции C++ команд ассемблера. Например __ror.
Август 1, 2019 в 4:37 пп #19321idushy
УчастникПриветствую уважаемый Narod Stream. В одном коментарии к вашему видео задали вопрос, который меня тоже волнует.
«Что-то с ходу не нашел:
Есть три канала АЦП, регуляр мод, опрашивание идет по очереди и такой вопрос, когда забираем значение где узнать с какого канала оно поступило?»
Вы ответили так.
Триггеры используйте. Поставьте триггеры на каждый канал и обрабатывайте события.
Если не трудно укажите где про это почитать посмотреть. Ну а если вы это освещали это было бы вообще идеально)Август 1, 2019 в 9:44 пп #19322kvanton
УчастникВсем привет, начал недавно STM32 осваивать (до этого были pic12-18/arduino/raspberry) и столкнулся с интересной проблемой:
Настроил GPIO как Input Pull-Up но при считывании получаю 0.
Условия:
Несколько других также настроенных портов (Input Pull-Up) при этом посажены на землю (на один порт Output Open-Drain), а непосредственно перед считыванием переключаю другой порт Output Open-Drain Pull-Up с 1 на 0.
При этом, если поставить задержку (пробовал 1мс) после переключения OutPut и считыванием Input получаю — 1, как и должно быть. Порты по схеме ни как не связанны — пробовал вообще отключать input порт от схемы (матрица кнопок) ситуация не меняется.Работаю с китайской платой на stm32f103c8t6 (ардуино подобная) и библиотекой LL. Скорость порта пробовал разную — результат один.
Сможет кто-то объяснить или хотя бы намекнуть (куда копать, что почитать) почему такой эффект возможен?
Во всяких даташитах/аппликейшн ноте вроде ни чего интересного, зацепила только аббревиатура SSO ( simultaneous switching output) в разделе Adapt GPIO speed (в AN на GPIO) — но понять глубину этой фразы и контекста с ходу не получилось (возможно из-за непонимания каких-то базовых моментов)Хотя и проблема в принципе решена (задержка допустима) — но хотелось бы разобраться в причинах.
Буду благодарен любым вариантам, может что-то натолкнет на правильные мысли.
Сентябрь 24, 2019 в 2:57 пп #19889SergV
УчастникЗдравствуйте, извиняюсь за данный пост, я немного не уверен на сколько стм32 это просто… но поддавшись Вашему приглашению в др уроках, меня заинтересовал контроллер. все начинается с урока «Программирование МК STM32. УРОК 1. Установка Keil μVision» вы используете STM32F407VG, в то время как у меня есть в наличие STM32F103RCT6…посему вопрос, если позволите. в уроке дистрибутив выбирается на сайте согласно модели процессора, значит и я ищу по своему…т.е. это stm32f1 ? и далее по аналогии работаю со своим даташитом на процессор.
Октябрь 8, 2019 в 5:16 дп #20044KKK2010
УчастникДобрый день
Попытался сделать 4 канальный термометр, взял прошивку из урока «DS18B20 несколько датчиков», немного изменил код для вывода на LCD, вроде все хорошо, но решил посмотреть как отрицательные температуры показываются. Сунул 1 датчик в морозильную камеру, и падение температуры выглядело вот так: +3, +2, +1, -127, -126, -125, -124, -123, -122 и т.д. В преобразовании где-то косяк, только не могу понять где.Ноябрь 9, 2019 в 8:14 дп #20426Vitaly65
УчастникДобрый день!
Ищем удобную библиотеку для STM32 под HAL Modbus RTU SlaveMaster.
Кто сможет помочь? Готовы заплатить.Ноябрь 12, 2019 в 8:10 дп #20444Fantom
УчастникДобрий день! Кто может помочь.?
Установил Keil с офф сайта и CubeMX, генерирую проект в кубе для Keil и вискакивает во такая ошибка как на фото.Ноябрь 14, 2019 в 10:27 дп #20456serg_555
УчастникДобрый день ! Hе подскажите в 68 уроке часть 4 проверяется флаг header.status&0x80==0 ,а что это за флаг и где он находится в документации?
Февраль 24, 2020 в 5:21 пп #20871typbluff
УчастникЗдравствуйте.
Скажите, пожалуйста, насколько оправдано использование DMA для вывода данных через USART?
Во-первых, USART используются в проекте как для отладки ПО, так и для взаимодействия с МК. Во-вторых, используется ОС реального времени. В-третьих, производится именно форматированный вывод, то есть с использованием самописной функции «printf()». Соответственно, сперва обязательно нужно процессорное время для форматирования, а DMA, что логично, впрочем, используется только после преобразования для передачи данных.
Не совсем ясно, действительно ли оно существенно ускорит работу МК в этом случае?
И еще — есть ли какая-нибудь инструкция, пример по использованию передачи и приема в одном проекте с RTOS?
Март 3, 2020 в 7:03 пп #20920NEOVIS
УчастникДобрый вечер.
Вы можете написать урок:
I2C. Slave mode. Соединяем два микроконтроллера.
Только для stm32 в HAL и LL.Март 26, 2020 в 5:32 пп #21229Narod Stream
ХранительNEOVIS
Вообще тема интересная, возьму на заметку, правда массовых просьб пока не поступало. -
АвторСообщения
-
АвторСообщения
-
Здравствуйте, кто нибудь пробовал повторить урок №96, подключение LAN8720 к STM32F4Disc. Я повторил урок, но нет результата. Уже несколько дней пытаюсь разобраться в чём дело, но пока что безрезультатно. Использую в проекте ту же плату с LAN8720 что и в уроке. Готовый проект с урока так же не работает. PHY адрес пробовал и 0 и 1, отключал DHCP и статичный адрес вбивал, в общем так и не удалось запустить передачу данных. Помогите пожалуйста.
Доброго времени суток! Кто-то работал с GSM модулями SIM800 и ему подобными? Конкретней SIM7600. Какая последовательность команд для установки связи с мобильным интернетом? И как осуществить передачу данных между МК и с данным модулем и сервером? (Конечный результат, прошивка МК STM32 удаленно, через интернет)
Нужна консультация (Возмездно) по 7-ому уроку на STM32. Вкратце: дисплей выводит символы, если вывожу их поштучно. Если пытаюсь вывести строку, то дисплей выводит случайную букву/цифру из строки, вместо самой строки. Код — в соответствии с Вашим, за тем исключением, что у меня другой контроллер с тактовой частотой 80 МГц и он хоть что-то стал выводить на дисплей при задержке 50-100 в функции delay(void), а не 1000. Т.е. я застрял на середине седьмого урока.
Работаю в Atollic True Studio
Здравствуйте. Помогите, пожалуйста, если знаете ответ на мой вопрос.
Необходимо генерировать сигнал с помощью таймера. Линия подтянута к питанию, сигнал инверсный. Нужно притягивать линию к земле на заданное количество тиков таймера, а потом отпускать на какое-то время, после чего сигнал повторяется. Это как инверсный ШИМ.
Я думал, что это так же легко, как настроить прямой ШИМ. Но нет:
<div class=»spoilerui»>PWM mode 1
— In up-counting, channelx is active as long as CNT< CCRx, otherwise it is inactive
— In down-counting, channelx is inactive as long as CNT> CCRx, otherwise it is active.
PWM mode 2
— In up-counting, channelx is inactive as long as CNT < CCRx, otherwise it is active
— In down-counting, channelx is active as long as CNT > CCRx, otherwise it is inactive.</div>
Запускаю в режиме единичного сигнала, в итоге, как ни настраиваю PWM_mode и направление счетчика, а в конце передачи сигнала таймер притягивает ножку к земле. А мне важно, чтобы она оставалась в поднятом состоянии.Протокол похож на 1Wire ot Dallas Semiconductor
Доброго времени суток. Очень хотелось чтобы на сайте была затронута тема ассемблерных вставок в особенности для STM32. Или вот еще вопросик. Как подключить встроенные функции C++ команд ассемблера. Например __ror.
Приветствую уважаемый Narod Stream. В одном коментарии к вашему видео задали вопрос, который меня тоже волнует.
«Что-то с ходу не нашел:
Есть три канала АЦП, регуляр мод, опрашивание идет по очереди и такой вопрос, когда забираем значение где узнать с какого канала оно поступило?»
Вы ответили так.
Триггеры используйте. Поставьте триггеры на каждый канал и обрабатывайте события.
Если не трудно укажите где про это почитать посмотреть. Ну а если вы это освещали это было бы вообще идеально)Всем привет, начал недавно STM32 осваивать (до этого были pic12-18/arduino/raspberry) и столкнулся с интересной проблемой:
Настроил GPIO как Input Pull-Up но при считывании получаю 0.
Условия:
Несколько других также настроенных портов (Input Pull-Up) при этом посажены на землю (на один порт Output Open-Drain), а непосредственно перед считыванием переключаю другой порт Output Open-Drain Pull-Up с 1 на 0.
При этом, если поставить задержку (пробовал 1мс) после переключения OutPut и считыванием Input получаю — 1, как и должно быть. Порты по схеме ни как не связанны — пробовал вообще отключать input порт от схемы (матрица кнопок) ситуация не меняется.Работаю с китайской платой на stm32f103c8t6 (ардуино подобная) и библиотекой LL. Скорость порта пробовал разную — результат один.
Сможет кто-то объяснить или хотя бы намекнуть (куда копать, что почитать) почему такой эффект возможен?
Во всяких даташитах/аппликейшн ноте вроде ни чего интересного, зацепила только аббревиатура SSO ( simultaneous switching output) в разделе Adapt GPIO speed (в AN на GPIO) — но понять глубину этой фразы и контекста с ходу не получилось (возможно из-за непонимания каких-то базовых моментов)Хотя и проблема в принципе решена (задержка допустима) — но хотелось бы разобраться в причинах.
Буду благодарен любым вариантам, может что-то натолкнет на правильные мысли.
Здравствуйте, извиняюсь за данный пост, я немного не уверен на сколько стм32 это просто… но поддавшись Вашему приглашению в др уроках, меня заинтересовал контроллер. все начинается с урока «Программирование МК STM32. УРОК 1. Установка Keil μVision» вы используете STM32F407VG, в то время как у меня есть в наличие STM32F103RCT6…посему вопрос, если позволите. в уроке дистрибутив выбирается на сайте согласно модели процессора, значит и я ищу по своему…т.е. это stm32f1 ? и далее по аналогии работаю со своим даташитом на процессор.
Добрый день
Попытался сделать 4 канальный термометр, взял прошивку из урока «DS18B20 несколько датчиков», немного изменил код для вывода на LCD, вроде все хорошо, но решил посмотреть как отрицательные температуры показываются. Сунул 1 датчик в морозильную камеру, и падение температуры выглядело вот так: +3, +2, +1, -127, -126, -125, -124, -123, -122 и т.д. В преобразовании где-то косяк, только не могу понять где.Добрый день!
Ищем удобную библиотеку для STM32 под HAL Modbus RTU SlaveMaster.
Кто сможет помочь? Готовы заплатить.Добрий день! Кто может помочь.?
Установил Keil с офф сайта и CubeMX, генерирую проект в кубе для Keil и вискакивает во такая ошибка как на фото.Добрый день ! Hе подскажите в 68 уроке часть 4 проверяется флаг header.status&0x80==0 ,а что это за флаг и где он находится в документации?
Здравствуйте.
Скажите, пожалуйста, насколько оправдано использование DMA для вывода данных через USART?
Во-первых, USART используются в проекте как для отладки ПО, так и для взаимодействия с МК. Во-вторых, используется ОС реального времени. В-третьих, производится именно форматированный вывод, то есть с использованием самописной функции «printf()». Соответственно, сперва обязательно нужно процессорное время для форматирования, а DMA, что логично, впрочем, используется только после преобразования для передачи данных.
Не совсем ясно, действительно ли оно существенно ускорит работу МК в этом случае?
И еще — есть ли какая-нибудь инструкция, пример по использованию передачи и приема в одном проекте с RTOS?
Добрый вечер.
Вы можете написать урок:
I2C. Slave mode. Соединяем два микроконтроллера.
Только для stm32 в HAL и LL.NEOVIS
Вообще тема интересная, возьму на заметку, правда массовых просьб пока не поступало. -
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.