STM32F103C8T6 как прошить ?

Ответить
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

по инструкции залил в неё прошивку по уарту через Flash Loader Demonstrator
втыкаю кабель в неё и даже ком порт не появляется

хотя в диспечере появляется устройство при подключении но толку то от него
2023-04-30_174730.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 13:48 по инструкции залил в неё прошивку по уарту через Flash Loader Demonstrator
втыкаю кабель в неё и даже ком порт не появляется

хотя в диспечере появляется устройство при подключении но толку то от него
Сожалею, но этот путь устарел. Он был больше ориентирован на ядро от Clark Rogers (STM32-master) - но он перестал его активно поддерживать после того, как пару лет назад фирма STMicroelectronics плотно занялась своим ядром STM32duino.
Мы долгое время поддерживали оба ядра, но в версии библиотеки, которую сейчас готовим, будет поддержка только ядра от STM.
Немного жаль, у STM32-master есть свои преимущества.
В FLProg штатный контроллер STM32F103C поддерживает STM32duino.
----------
Таким образом:
1.Все старые описания по прошивке STM32 в корзину...
2.Основной метод прошивки через программатор ST-Link. Привыкнуть надо, но в целом удобно.
3.На компьютере должна быть установлена программа STM32Programmer.
---------
С уважением, Энвер.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

тоесть нужно сделать бинфаил или что то там ?

Отправлено спустя 1 минуту 16 секунд:
а такая пойдёт STM32CubeProg ?
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 14:25 а такая пойдёт STM32CubeProg ?
Именно такая нужна - в тексте не точно написал.
Файл грузится из Arduino IDE как и из других контроллеров - нужно только выбрать Upload metod:
И если USB (Serial0) будет использоваться - немного с настройками надо поделать...
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

и как ей пользоваться ?
2023-04-30_184414.png
Отправлено спустя 6 минут 55 секунд:
в общем она не находит ст линк хотя диспечер показывает его
2023-04-30_185118.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 14:51 в общем она не находит ст линк хотя диспечер показывает его
Просит обновить софт программатора - справа по центре голубая кнопка Firware upgrade.
Попробуйте, если программатор не очень старый, то обновится.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

действительно помогло обновление
у меня получилось поморгать светодиодом

а как выкинуть данные в уарт ?
2023-04-30_193816.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 15:37 а как выкинуть данные в уарт ?
Есть некоторые особенности, если в USB.
В настройках Arduino IDE сделать так:
Снимок экрана 2023-04-30 160321.png
-----
В библиотеках ecoins есть блоки вывода на консоль, плоттер. В новой версии доработан блок вывода в любой UART - сегодня темой выше выложил.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

не всё нормально
я после блинка залез в настройки иде и сменил папку скечей на рабочий стол что бы не лазить за ними по темпам
и в общем так делать похоже нельзя пришлось обратно вернуть слово скечбук и всё стало нормально компилить

а в уарт выкинул через а9 а10

в итоге слишком заморочено получается компилиш настороне потом грузиш через програматор потом через другой конвертер считываеш уарт у меня тут паровозик из этих проводов
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 16:13 в итоге слишком заморочено получается компилиш настороне потом грузиш через програматор потом через другой конвертер считываеш уарт у меня тут паровозик из этих проводов
Как-то сложно Вы объяснили - у меня все просто получается. За пять минут с переделкой проекта в FLProg три раза в STM32F407 грузил тест UART(0-6);
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

а как через уарт загружать что бы сразу и считывать без всяких линкозагрузчиков ?
у меня ошибка выскакивает
2023-04-30_202602.png
Отправлено спустя 2 минуты 4 секунды:
сначала в иде делаю экспорт бинфайла
потом цепляю стлинк и гружу туда прошивку
потом подключаю усбконвертер и читаю уарт
вроде всё

на уно было проще нажал загрузить и немучиешся
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 30 апр 2023, 16:39 сначала в иде делаю экспорт бинфайла
Этого делать не надо. Arduino IDE самостоятельно компилирует и грузит через ST-Link.
Kot писал(а): 30 апр 2023, 16:39 на уно было проще нажал загрузить и немучиешся
Да, проще. Но это только UNO.... У STM другие возможности.
Ну и дело привычки, преодолимо.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

в описании написано что ацп 12 бит
а у меня почемуто на 10 бит
я кидаю аналог на 3,3в мне уарт выводит 1023 ацпшки это как ?
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 02 май 2023, 11:37 в описании написано что ацп 12 бит
а у меня почемуто на 10 бит
я кидаю аналог на 3,3в мне уарт выводит 1023 ацпшки это как ?
АЦП 12-разрядный, но настраиваемый. Нужна команда analogWriteResolution(12).
Если пользоваться библиотекой ecoins и блоком ecoins, то там настроено автоматом до системной разрядности, которая по умолчанию=16.
PWM в STM32 16-разрядный, тоже настраиваемый.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

видимо автор не в курсе таких манипуляций
я немогу найти у него в коде аналогврайтрезолюшин

Код: Выделить всё

#include "flprogUtilites.h"
bool out_92228919_1;
unsigned long timing_92228919_1;
bool en_220345184_1;
int in_220345184_1;
int out_220345184_1;
byte N_220345184_1;
byte M_220345184_1;
byte S1_220345184_1;
byte S2_220345184_1;
int array_220345184_1[20];
bool en_98796029_1;
int in_98796029_1;
int out_98796029_1;
int temp1_98796029_1;
int temp2_98796029_1;
int temp3_98796029_1;
int temp4_98796029_1;
int temp5_98796029_1;
int temp6_98796029_1;
int temp7_98796029_1;
int temp8_98796029_1;
bool _stou1 = 0;
void setup()
{
    _startUart1();
}
void loop()
{
    //Плата:1
    if (millis() - timing_92228919_1 >= 25) 
    {
        timing_92228919_1 = millis();
        out_92228919_1 = 1;
    }
    else out_92228919_1 = 0;
    en_220345184_1 = out_92228919_1;
    in_220345184_1 =  (analogRead (192));
    // Filtr_median_20
    if (en_220345184_1)
    {
        	array_220345184_1[19] = in_220345184_1;
        	for (N_220345184_1=0; N_220345184_1<20; N_220345184_1++)  // 0 до 19
        	
        {
            		out_220345184_1 = array_220345184_1[N_220345184_1];
            S1_220345184_1 = 0;
            S2_220345184_1 = 0;
            		for (M_220345184_1=0; M_220345184_1<20; M_220345184_1++)  // 0 до 19
            		
            {
                			if (out_220345184_1 < array_220345184_1[M_220345184_1])	
                {
                    S1_220345184_1++;
                    if(S1_220345184_1>10) 
                    {
                        break;
                    }
                }
                			if (out_220345184_1 > array_220345184_1[M_220345184_1])	
                {
                    S2_220345184_1++;
                    if(S2_220345184_1>10) 
                    {
                        break;
                    }
                }
                		
            }
            		if (M_220345184_1>=20) 
            {
                break;
            }
            	
        }
        	for (N_220345184_1=0; N_220345184_1<19; N_220345184_1++) 
        {
            array_220345184_1[N_220345184_1] = array_220345184_1[(N_220345184_1+1)];
        }
    }
    en_98796029_1 = out_92228919_1;
    in_98796029_1 = out_220345184_1;
    // Filtr_wind_int
    if (en_98796029_1)
    {
        	temp8_98796029_1 = temp7_98796029_1;
        	temp7_98796029_1 = temp6_98796029_1;
        	temp6_98796029_1 = temp5_98796029_1;
        	temp5_98796029_1 = temp4_98796029_1;
        	temp4_98796029_1 = temp3_98796029_1;
        	temp3_98796029_1 = temp2_98796029_1;
        	temp2_98796029_1 = temp1_98796029_1;
        	temp1_98796029_1 = in_98796029_1;
        	out_98796029_1 = int ((temp1_98796029_1+temp2_98796029_1+temp3_98796029_1+temp4_98796029_1+temp5_98796029_1+temp6_98796029_1+temp7_98796029_1+temp8_98796029_1) / 8);
    }
    if (out_92228919_1)
    {
        if (!_stou1)
        {
            Serial1.println((out_98796029_1)*(3.23));
            _stou1=1;
        }
    }
     else 
    {
        _stou1=0;
    }
}
void _startUart1()
{
    int code= 6;
    Serial1.begin(9600, (flprog::serialModeFromInt(code)));
}
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 02 май 2023, 15:25 видимо автор не в курсе таких манипуляций
я немогу найти у него в коде аналогврайтрезолюшин
Он в курсе, но сейчас идет очень большая работа по разработке системного ядра, которое будет решать вопросы совместимости и адаптации контроллеров различных архитектур.
Kot
Сержант
Сообщения: 125
Зарегистрирован: 09 окт 2021, 11:54
Имя: Дима
Поблагодарили: 1 раз

STM32F103C8T6 как прошить ?

Сообщение Kot »

а сколько у вас каналов получилось одновременно запустить на 16 бит ?
и с какой скоростью опрашиваете канал в этом режиме
ecoins
Полковник
Сообщения: 4014
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 167 раз

STM32F103C8T6 как прошить ?

Сообщение ecoins »

Kot писал(а): 02 май 2023, 16:19 а сколько у вас каналов получилось одновременно запустить на 16 бит ?
и с какой скоростью опрашиваете канал в этом режиме
Измерения не проводил, но все PWM STM32 вроде привязаны к одному таймеру.

Отправлено спустя 1 минуту 25 секунд:
Kot писал(а): 02 май 2023, 16:19 и с какой скоростью опрашиваете канал в этом режиме
Наверное записываем. Думаю не более 50mcs( предположение).
С уважением, Энвер.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

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

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