Микроконтроллеры STM32 - тонкости работы, отладочные платы

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

[uquote="VladislavS",url="/forum/viewtopic.php?p=4355511#p4355511"]Задержку, кстати, можно сильно проще без всяких прерываний делать. Включать в режиме OPM и тупо ждать флага UIF.

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

TIM2->SR=0;
TIM2->CR1 = TIM_CR1_CEN | TIM_CR1_OPM;  
while(!(TIM2->SR & TIM_SR_UIF));
Вызов SystemInit из стартапа можно удалить. В IAR вместо него вызывается __low_level_init().[/uquote]

О, если из стартапа удалить строку ругающую эту функцию - вообще перестает работать дисплей == LDR R0, =SystemInit
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

Строка ругает функцию? :shock:
Реклама
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Из за нее ошибка без функции вылазит. Да черт с ним, что с экранчиком то
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

[uquote="TEPEM",url="/forum/viewtopic.php?p=4355528#p4355528"]Да черт с ним, что с экранчиком то[/uquote]Он не работает!

А решение, скорее всего, вот тут
Изображение
d1.png
(4.97 КБ) 614 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Это кнопочка которой я запускаю прошивку, всегда так делал.
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

Ну, тогда осталось сделать то что после and
Реклама
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

На белую я тоже нажимал тод же эффект
Причем после компиляции экран не работает, а вот после ресета зажигается на пол секунды
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

После слова and написано слово Debug
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Да я давно так запускаю все работает всегда. Тут вообще что то непонятное творится(
Вот сейчас собрал проект нна диско, той же кнопкой - все работает, экранчик горит всякое рисует
Последний раз редактировалось TEPEM Пн янв 16, 2023 20:43:46, всего редактировалось 1 раз.
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

[uquote="TEPEM",url="/forum/viewtopic.php?p=4355520#p4355520"]О, если из стартапа удалить строку ругающую эту функцию - вообще перестает работать дисплей == LDR R0, =SystemInit[/uquote]Боюсь спросить, а вы только выделенную строку удаляли? Ну мне так, Чисто поржать.
Изображение
d3.png
(9.76 КБ) 585 скачиваний
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Я не стал ни чего удалять, заносил ее за // - все перестало работать - все вернул
Как убавить скорость SPI шинки?
Последний раз редактировалось TEPEM Пн янв 16, 2023 20:46:12, всего редактировалось 1 раз.
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

Ну когда перестало работать, только её удаляли?
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Ну у меня перестал экран работать даже на 0.3сек, да только ее. Нормально он не работал( Я уже свисток поменял думал брак.
Если подумать, он же не включает экран без ресета, может что то не так, хотя потом картинка выходит, очень странно. И если его настроить и оставить питание при этом ни чего не передавать он же все равно будет показывать пред идущую картинку. Значит там в догонку что то летит выходит???
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

[uquote="TEPEM",url="/forum/viewtopic.php?p=4355588#p4355588"]Как убавить скорость SPI шинки?[/uquote]А какая она сейчас и где вы её задали?
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

ЛауИни

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

        RCC->APB2ENR |= RCC_APB2ENR_SPI1EN; //Taktirovanie SPI1
        SPI1->CR1  |= (SPI_CR1_MSTR | SPI_CR1_SSM | SPI_CR1_SSI);
Передача

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

        GPIOB->ODR &= ~(1<<7);  //ChipSelect loy
	GPIOB->ODR |= (1<<6);  //DC UpLevel	
	SPI1->CR1 |= SPI_CR1_DFF;	
	while (!(SPI1->SR & SPI_SR_TXE)){};
	SPI1->DR = dat;
	while (!(SPI1->SR & SPI_SR_TXE)){};
	while ((SPI1->SR & SPI_SR_BSY)){};
        GPIOB->ODR |= (1<<7);  //ChipSelect Up
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

Ну а скорость то какая сейчас? Вы же понимаете, что я не просто так задаю провокационные вопросы? Может в RM заглянуть всёже?
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

Так говорю же, 4 свистка закирпичил, вставил ваш листинг, он не убил очередной свисток с ним и работаю
Собутыльник Кота
Аватара пользователя
Сообщения: 2567
Зарегистрирован: Вт май 01, 2018 19:44:47

Сообщение VladislavS »

И много ещё свистков осталось?
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 153
Зарегистрирован: Чт дек 05, 2019 16:28:11
Откуда: Самара

Сообщение TEPEM »

2 осталось
Поменял множитель с 192 на 100 - вообще не работает

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

RCC->PLLI2SCFGR =  _VAL2FLD(RCC_PLLI2SCFGR_PLLI2SN, 50) | _VAL2FLD(RCC_PLLI2SCFGR_PLLI2SM, 16) | _VAL2FLD(RCC_PLLI2SCFGR_PLLI2SR, 2);
тоже не помогло
Я что то не знаю что ковырять
Мучитель микросхем
Сообщения: 446
Зарегистрирован: Вс ноя 01, 2015 09:15:16
Откуда: 69.Ржев

Сообщение a797945 »

зачем Вы постоянно дрыгаете ChipSelect, он опускается на весь период обмена.

какая у Вас небольшая задержка после подачи апп. сброса на дисплей:
GPIOB->ODR |= (1<<4); //RST Hay
delay(15); - сверьтесь с даташитом на дисплей, сколько ему нужно после ресета.

так "тупить" на таймере можно и без прерываний:
TIM4->ARR = x;
TIM4->EGR = TIM_EGR_UG;
TIM4->CR1 = TIM_CR1_CEN|TIM_CR1_OPM;
while (TIM4->CR1&TIM_CR1_CEN) {;}

"Я что то не знаю что ковырять"
известно что - доки и примеры.
Ответить

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