-
- Потому что у gd регистры по другому названы, этот называется RBNE(READ BUFFER NOT EMPTY) - AAABOBA(26.09.2023 11:37, )
- Дело было не в бобине.... Накосячил с ремапом выводов. Кто бы мог
подумать, что это приведет к краху SPI. Он умирал с такими
симптомами, будто отсутствует тактирование. При записи DR,
выставлялся БАСИ, и модуль зависал намертво. - IBAH(25.07.2023 19:03)
- Даже если ты - мастер, в первую очередь для приёма данных MISO,
используется тактовый сигнал не от генератора мастера, а получкнный
с физической линии SCLK. Nikolay_Po(175 знак., 25.07.2023 23:42)
- Полностью аналогичный случай. Получается неправильным ремапом можно упалить контроллер? - IBAH(26.07.2023 19:04)
- Даже если ты - мастер, в первую очередь для приёма данных MISO,
используется тактовый сигнал не от генератора мастера, а получкнный
с физической линии SCLK. Nikolay_Po(175 знак., 25.07.2023 23:42)
- Я перевел кучу своих проектов с STM32F103/105/205/405 на
GD32F103/303/105/205/405. Все везде и всегда (почти) работало без
модификации кода. Что касается конкретно SPI - код для работы по
ДМА и по опросу не поменялся. Я бы в первую очередь посмотрел - не
сбрасывается ли бит MASTER. Есть определенные условия, при которых
он может сброситься. Кури даташит. Именно в этом месте могут быть
аппаратные отличия STM и GD. - il-2(25.07.2023 08:29)
- Спасибо. Помню, у Mega328 вывод SS переводит из ведущего в ведомого
безусловно. Пришлось зафиксировать в не активном состоянии и не
использовать для других целей. - Nikolay_Po(25.07.2023 09:31)
- Зачем так грубо? Достаточно использовать его как выход. - Toчкa oпopы(25.07.2023 11:42)
- Спасибо. Помню, у Mega328 вывод SS переводит из ведущего в ведомого
безусловно. Пришлось зафиксировать в не активном состоянии и не
использовать для других целей. - Nikolay_Po(25.07.2023 09:31)
- А 107 с эзернет, что ли? Код полностью совместим для 103 только. - Visitor(24.07.2023 20:05)
- А107 - это кольцевая автомобильная дорога! - Kpoк(24.07.2023 21:14)
- Баг всех GD32F10x. После того как передашь один байт, делай disable
SPI и затем enable. - RxTx(24.07.2023 19:36)
- Это называется заметание мусора под шкаф. Я не спорю, что шаманский удар в бубен иногда помогает, но тема остается не раскрытой. И бага такого нет у GD, все работает нормально. - il-2(25.07.2023 08:32)
- Спасибо! После каждого байта или один раз при инициализации? - IBAH(24.07.2023 22:03)
- (Нет, не один раз при инициализации, не так). Именно после каждой
передачи байта, перед приёмом. То есть сначала передача, потом
disable, enable и потом приём. - RxTx(24.07.2023 22:49)
- Херассе баг - Звepoящep(25.07.2023 08:24)
- Да это он чего-то прогнал... - IBAH(26.07.2023 19:05)
- Херассе баг - Звepoящep(25.07.2023 08:24)
- (Нет, не один раз при инициализации, не так). Именно после каждой
передачи байта, перед приёмом. То есть сначала передача, потом
disable, enable и потом приём. - RxTx(24.07.2023 22:49)
- "Не понимаю я по-вашему нихрена". - LightElf(24.07.2023 19:15)
- Короче. Флаг RXNE не устанавливается! в СТМ устанавливался, а в ГД
не устанавливается. - IBAH(24.07.2023 19:21)
- Ну может ориентироваться на другой бит, типа BSY? Тому що ежели исходящий байт ушел, то входящему деваться некуда - LightElf(24.07.2023 20:55)
- У разных ST тоже по-разному - во многих после 103 этот битик аппаратно сбрасывается, и словить толком никак. В RM на STM32L476 явно показали. И буквами намалевали:"The RXNE is cleared by hardware automatically when the above conditions are no longer true." - Vit(24.07.2023 19:59)
- Детали не знаю, взяли GD32F207 вместо STV32F207, разница и в пинах питания и в регистрах. Чел с пол года потратил переделать. Других задач и командировок хватало. - Visitor(24.07.2023 19:30)
- Короче. Флаг RXNE не устанавливается! в СТМ устанавливался, а в ГД
не устанавливается. - IBAH(24.07.2023 19:21)
- Нужно проверить все используемые биты. Я морочился с I2C для L051. Не совпадает с 100 ни с 400 серией. - BlackMorda(24.07.2023 19:14)