Size: a a a

2021 January 31

s

stD in STM32
Просто у вас другой модуль, и по другому отвечает. Я делал для SIM900.
источник

ДС

Дмитрий Семенов... in STM32
stD
Просто у вас другой модуль, и по другому отвечает. Я делал для SIM900.
ну походу на других баудах мусор сыпется, вот он ERROR и выдаёт
источник

s

stD in STM32
Лучше всего вначале всё "вручную" проверить - как что отвечает.
источник

s

stD in STM32
В терминале дать все нужные команды и смотреть.
источник

ДС

Дмитрий Семенов... in STM32
stD
Лучше всего вначале всё "вручную" проверить - как что отвечает.
Там всё так намертво запяно, что лень )
источник

s

stD in STM32
Тогда не ждите корректной работы.
источник

FR

Far Rzhavtsev in STM32
Andre Savelev
Смог добиться результата на второй своей дешёвой STM32-плате. В системе появился виртуальный СОМ-порт без проблем.
Я не знаю как на твоей плате, но на блюпил надо было после инициализации включать подтяжку usb. Там транзистор специальный был. Прикол в том, что это надо было сделать в самый последний момент.
источник

FR

Far Rzhavtsev in STM32
Кстати, если порт нужен только для отладки то лучше доделать китайский stlink и вывести с него сигналы reset и swo. С swo дебажить удобнее, кмк
источник

MY

Master Yoda in STM32
Valeriy Osipov
@DimastD в общем у меня дошли руки до дисплея на ili9341 на stm32f303, курил чужие коды, в итоге докурился до фикса

 while (!(DISPLAY_SPI->SR & SPI_SR_TXE));
 *((__IO uint8_t*) &DISPLAY_SPI->DR) = high_color;
 while (!(DISPLAY_SPI->SR & SPI_SR_TXE));
 *((__IO uint8_t*) &DISPLAY_SPI->DR) = low_color;

вроде вы мне в личке тоже самое предлагали сделать, но что-то в тот раз пошло не так, видать руки не оттуда. можете попробовать это в свой пример перенять, хотя для большей универсальности наверное надо всё через LL делать
Регистр DR 16-ти битный. Передавайте сразу слово.
источник

VO

Valeriy Osipov in STM32
Master Yoda
Регистр DR 16-ти битный. Передавайте сразу слово.
а вот нет, не работает так. дисплей пропускает байты. ладно, и так почти 14 фпс выбил, быстрее физически невозможно
источник

s

stD in STM32
Valeriy Osipov
а вот нет, не работает так. дисплей пропускает байты. ладно, и так почти 14 фпс выбил, быстрее физически невозможно
Чтоб работал 16-ти битный режим нужно его включать...

SPI->CR1 |= SPI_CR1_DFF;

Отключать:

SPI->CR1 &= ~SPI_CR1_DFF;
источник

s

stD in STM32
Правда там выигрывается совсем немного. Например если на заливку экрана в 8-ми битном режиме потратится 17 мс, то в 16-ти битном получится около 16 мс. То есть совсем чуть-чуть выигрывается.
источник

VO

Valeriy Osipov in STM32
нету в f303 такой маски
источник

VO

Valeriy Osipov in STM32
или по другому называется. вообще у ф1 и ф3 совсем другой модуль спи, у них даже аппноут на эту тему есть
источник

s

stD in STM32
Я проверял на Ф103 и Ф407
источник

VO

Valeriy Osipov in STM32
stD
Правда там выигрывается совсем немного. Например если на заливку экрана в 8-ми битном режиме потратится 17 мс, то в 16-ти битном получится около 16 мс. То есть совсем чуть-чуть выигрывается.
стоп что, 16 мс? это на какой частоте?
источник

s

stD in STM32
Я для примера.
источник

VO

Valeriy Osipov in STM32
ааа, ок
источник

s

stD in STM32
Я сильно не уверен, но можно попробовать так...

SPI1->CR2 |= SPI_CR2_FRXTH;
 
SPI1->CR2 &= ~SPI_CR2_FRXTH;
источник
2021 February 01

MY

Master Yoda in STM32
Valeriy Osipov
а вот нет, не работает так. дисплей пропускает байты. ладно, и так почти 14 фпс выбил, быстрее физически невозможно
Дисплею пофиг что принимать. Откуда он узнает, выслали вы ему два по 8 или один по 16? Другое дело, если вам нужно после каждого байта чип селект дергать.

И что у вас за low_color и high color? Цвет пикселя храните в двух переменных?
источник