ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
2 мая
1276606 Топик полностью
0men (17.01.2023 15:13, просмотров: 242) ответил Visitor на Можно подробнее у нас интим с GD пока, на заметку Artery взял.
1. USB - есть тонкости работы с VBUS, если она заведена, то все работает штатно 

2. I2C -как известно в стм32ф4 I2C контроллер достаточно кривой, в частности на чтение в режиме мастера существуют 3 варианта: считать 1 байт, 2 байт, 3 и более. Все тонкости описаны в доке и HAL сделан в точностью с нею. Контроллер гигадевайса слизан с стма, все регистры идентично, но режим чтения 2 байт не взлетает, гига отвечает наком вместо аска после чтения первого байта и есно слейв заканчивает передачу. Есть пример для гиги для этого режима, алгоритм отличается от стма кардинально, я его адаптировал под хал на черновую, не взлетел, пока забил и выкрутился чтением 3х байт вместо 2х.

3. TLI и IPA

Начал разбираться с TLI модулем (интерфейс RGB к дисплеям) и IPA (графический акселератор). Функционально и регистрово аналогичные стм. Все подключилось влет, стмовская библиотека STemWin всосалась как родная. НО, выяснилось, что на дисплее видные артефакты (пиксели не там где нужно и шрифты корявенькие). После 2х дней жестких разборок выяснилось, что IPA на редкость кривой. Что нашло и подтверждение веррате от июля сего года: One extra pixel will be transferred when using register value to memory direction. Китайцы пишут, чтоWorkarounds Not available, но сие удалось обойти, воткнув костыль. Перед вызовом дма (IPA) рассчитывается, куда прилетит екстра пиксель, считывается оттуда значение, а потом восстанавливается. Со шрифтами оказалось все сложнее. IPA работает в разных режимах, в частности со шрифтами когда они полупрозрачные используется режим MixColors, эта хрень не работает вообще. В итоге отключил аппаратный микс, библиотека миксует программно

4. есть такой документ, заливал в аплоад

compatibility sumup between GD32 and STM32_V2.0.pdf

5. ну и вишенка на торте - разделения флеша на 2 области CODE и DATA area. Код из коде арии исполняется, считай, из озу, без задержек, код из дата арии исполняется в 1000 раз медленней, так как исполняется из последовательного флеша