Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

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

Пт фев 24, 2023 22:25:47

ARV писал(а):ну, дождался я ST-Link v2 из Китая.
вот такой примерно:
Изображение
ну и не видит его CubeIDE. утилитка обновления прошивки видит, а IDE - нет.
и чо делать?
Что, что ... я что-то пропустил? Повторите, пожалуйста.

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

Вс фев 26, 2023 09:41:05

ARV писал(а):утилитка обновления прошивки видит
Ну и как, решили обновить?
А то у меня чип без маркировки, как то не рискнул, второго-то ST-Linkа нету.

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

Вс фев 26, 2023 16:32:43

Так обновил сразу же, как только выяснил, что утилита обновления опознала девайс. Т.е. через 15 минут после неудачной попытки запустить отладку.

Добавлено after 5 hours 42 minutes 39 seconds:
в общем, благодаря исключительной помощи Alex-а сумел я наладить STLink и остальное...
как оказалось, наибольшая проблема была в USB-хабе с алиэкспресса за 90 рублей :))) но не только.
теперь буду пробовать идти дальше не спеша...

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

Вс фев 26, 2023 17:08:28

Ипал я в рот эти стм-ы ! Думал что с ними всё норм будет. Нихрена ... там разобраться , это надо быть программистом. После установки ПО стм-ов , и дальнейшего его удаления , оказалось , что не работает драйвер AVRISP-MKII. И всё ... Никакие пляски с бубнами не помогли. Теперь на моём компе АВР можно прошить только через рс232 и унипроф.

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

Вс фев 26, 2023 17:21:45

Alex_641 писал(а):Ипал я в рот эти стм-ы ! Думал что с ними всё норм будет. Нихрена ... там разобраться , это надо быть программистом.
Ну я то уж точно не программист.

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

Пн мар 20, 2023 22:47:07

нид хелп. есть stm32l562re, оперативка разделена на два региона. с 0х2000'0000 192K и с 0x20030000 64K
хочу использовать эти 64К для размещения массива.
Делаю
в ld:
MEMORY
{
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 192K
RAM2 (xrw) : ORIGIN = 0x20030000, LENGTH = 64K
FLASH (rx) : ORIGIN = 0x8006000, LENGTH = 512K-24K
}

SECTIONS
{
....
.sram2 :
{
*(.sram2)
} >RAM2
....
}

пробовал так секцию описать:
.sram2 (NOLOAD):
{

*(.data) /* .data sections */
*(.data*) /* .data* sections */
. = ALIGN(4);
*(.sram2)
. = ALIGN(4);
} >RAM2

объявляю массивы:
static lv_color_t buf1_1[TFT_HOR_RES * LVGL_BUF_SIZE] __attribute__((aligned (4))) __attribute__((section(".sram2"))) = {0};
static lv_color_t buf1_2[TFT_HOR_RES * LVGL_BUF_SIZE] __attribute__((aligned (4))) __attribute__((section(".sram2"))) = {0};
(да, это буферы lvgl)

при прошивке все нормально. но если включаю генерировать bin, получается файл 400МБ размером. при попытке сделать bin2hex - эти же 400М
закидываю hex в CubeProg, говорит про две секции, что в принципе эти полгига объясняет. Но мне нужно получить бинарник для передачи в загрузчик.

Где я налажал в линкере?


Йа сделаль
section
.sram2 (NOLOAD):
{
. = ALIGN(4);
_ssram2 = .; /* create a global symbol at ccmram start */
*(.sram2)
*(.sram2*)

. = ALIGN(4);
_esram2 = .; /* create a global symbol at ccmram end */
} >RAM2

объявление
static lv_color_t buf1_1[TFT_HOR_RES * LVGL_BUF_SIZE] __attribute__((aligned (4))) __attribute__((section(".sram2")));
static lv_color_t buf1_2[TFT_HOR_RES * LVGL_BUF_SIZE] __attribute__((aligned (4))) __attribute__((section(".sram2")));

выравнивание в объявлении и символы начала и конца секции в моем случае не нужны.
для неинициализированных переменных!

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

Вт мар 21, 2023 08:49:23

Такой вопрос - сколько прошивок может пережить stm?
Ну вот очередная макетка stm32f030, с месяц назад спаянная, терзал её много.
Сегодня в нормальном режиме камень перестал определятся, перевёл в boot, прошил, но стартует только после ресета, сам - никак, при попытке прошить опять не определяется, опять его в boot, очистка, заново, ... и никак, хана ему?
//
upd. Прошил простейшим, всё норм, косяк где-то у меня, но изменений не было и вчера работало... по кускам своё творчество пошёл проверять...

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

Вт мар 21, 2023 18:19:21

Такой вопрос - сколько прошивок может пережить stm?
Открываем DataSheet, Table 40. Flash memory endurance and data retention.

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

Чт мар 23, 2023 18:00:12

Деление может быть виной странного поведения F0?
Избавился от него, и пока всё вроде норм.

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

Сб мар 25, 2023 12:38:31

Деление может быть виной странного поведения F0?

Деление может быть виной исключения.

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

Сб мар 25, 2023 13:22:17

В F0 нет инструкции деления.

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

Сб мар 25, 2023 13:30:51

И что, на ноль не делить теперь?

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

Сб мар 25, 2023 13:39:54

И что, на ноль не делить теперь?

поделите в уме.

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

Сб мар 25, 2023 19:02:39

И что, на ноль не делить теперь?

Раз уж речь зашла о делении на ноль, то спрошу тут.
VladislavS, а где описана процедура правильной обработки исключения при делении на ноль в STM32, в которых эта операция реализована аппаратно? Особенно интересно, как правильно продолжить выполнение программы после команды деления, вызвавшей исключение.

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

Сб мар 25, 2023 19:22:29

То что возникает исключение у вас вопросов, я так понял, не вызывает? Как работают исключения описано, например, в "STM32 Cortex®-M4 MCUs and MPUs programming manual" (ну или какое там ещё ядро). Правильное продолжение программы - автоматически послать факс в отдел кадров с заявлением "просю по собственному".

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

Сб мар 25, 2023 22:02:58

Доброго времени.

stm32g0c1ket6 может-ли тактироваться от кварцевого резонатора (не от кварцевого генератора). С английским туговато, в шитодате указано 4 to 48 MHz crystal oscillator, но ноги RCC_OSC_OUT у МК нету. Есть RCC_OSC_EN. Вот и возникли сомнения, надо генератор или резонатор тоже сойдет? Кто знает поясните плиз.

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

Сб мар 25, 2023 23:50:36

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

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

Вс мар 26, 2023 00:59:38

где описана процедура правильной обработки исключения при делении на ноль в STM32, в которых эта операция реализована аппаратно?

FPU_IRQHandler() Для чипов с аппаратной математикой, срабатывает с небольшим запаздыванием - так-что на ноль всё-же поделить успевает. Так-же всегда срабатывает при получении NAN, попытке деления нуля на число, и ещё несколько десятков очень редких случаев. Но эта сволочь полностью игнорирует бесконечное число, отчего серия умножений может выдать нереальный результат, и при этом совершенно непонятно где ошибка. Один раз получили inf, и во всех местах его применения останется inf.
В программном варианте тоже есть исключения, но я так и не понял как ведётся обработка, и где.

Добавлено after 7 minutes 53 seconds:
Правильное продолжение программы - автоматически послать факс в отдел кадров с заявлением "просю по собственному".

Это когда девайс в серию ушёл, а деньги с премии уже успели потратить.
Самое просто и разумное - стоп машина, возврат, и пошаговое по граблям.
Каким-то программным способом обрабатывать совершенно бесполезно, это придётся заглушки на каждую операцию писать, глупости.

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

Вс мар 26, 2023 06:01:04

stm32g0c1ket6 может-ли тактироваться от кварцевого резонатора (не от кварцевого генератора). Есть RCC_OSC_EN. Вот и возникли сомнения, надо генератор или резонатор тоже сойдет? Кто знает поясните плиз.

Где вы увидели RCC_OSC_EN? Для вашего корпуса предусмотрено только подключение часового кварца для LSE. Для тактирования используйте HSI.
Изображение

Добавлено after 10 minutes 58 seconds:
Самое просто и разумное - стоп машина, возврат, и пошаговое по граблям.


Лет десять назад натыкался на топик, где парень делал квадрокоптер. И у него спонтанно возникала ошибка деления на ноль в мат. библиотеке, в результате чего дрон падал вниз. Чип был вроде F103, топик был огромным, на сотни постов, помогали ему всем форумом. Я заглянул в последний пост. В общем, в очередной раз ошибка возникла, когда дрон был над рекой. Тема была закрыта.

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

Вс мар 26, 2023 07:19:04

Для вашего корпуса предусмотрено только подключение часового кварца для LSE.
А если найду?

Сделали для вас же удобный инструмент - пользуйтесь!
Ответить