реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Потерял I2C4 в STM32F410RBT6
batson
сообщение May 24 2017, 12:59
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



контроллер STM32F410RBT6
в датащите указано наличие в нем I2C4 на ногах PC6 и PC7, указан его бит включения в RCC
т.е. он как бы есть, но в файле stm32f4xx.h базовые адреса только для I2C1 I2C2 и I2C3

кто мне скажет где искать базовый адрес I2C4?
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 24 2017, 13:02
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(batson @ May 24 2017, 14:59) *
кто мне скажет где искать базовый адрес I2C4?

Обычно базовые адреса есть в даташите или юзермануале.
Go to the top of the page
 
+Quote Post
batson
сообщение May 24 2017, 13:12
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



да нашел, придется вписывать все ручками.
но прикола с этим портом я не понял, либа вроди та, взята с сайта ST
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 24 2017, 13:14
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(batson @ May 24 2017, 15:12) *
но прикола с этим портом я не понял, либа вроди та, взята с сайта ST

не успели обновить. Вам повезло, что даташит обновили раньше хидера. Бывает наоборот.
Go to the top of the page
 
+Quote Post
batson
сообщение May 27 2017, 15:26
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



базовый адрес прописал, остальные константы прописал, все проверил по сто раз
что этому порту опять не нравится?

инит:

GPIOC->MODER &= ~GPIO_MODER_MODER6;
GPIOC->MODER &= ~GPIO_MODER_MODER7;
GPIOC->MODER |= GPIO_MODER_MODER6_1;
GPIOC->MODER |= GPIO_MODER_MODER7_1;
GPIOC->OTYPER |= GPIO_OTYPER_OT_6;
GPIOC->OTYPER |= GPIO_OTYPER_OT_7;
GPIOC->OSPEEDR|=(GPIO_OSPEEDER_OSPEEDR6_1 | GPIO_OSPEEDER_OSPEEDR7_1);
GPIOC->AFR[0] |= (0x04 << (6 * 4));
GPIOC->AFR[0] |= (0x04 << (7 * 4));
RCC->APB1ENR |= RCC_APB1ENR_I2C4EN;
I2C4->CR2 = 24;
I2C4->CCR = 50;
I2C4->TRISE = 10 + 1;
I2C4->CR1 |= I2C_CR1_PE;
while ((I2C4->CR1 & I2C_CR1_PE) == 0){};// специально добавил для проверки, проходит


зависает на:

void i2c_send_start(void)
{
I2C4->CR1 |= I2C_CR1_START;
while(!(I2C4->SR1 & I2C_SR1_SB)){};// тут виснет
}


I2C4 работает у всех и я один такой?
Go to the top of the page
 
+Quote Post
batson
сообщение May 28 2017, 08:06
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



вскрытие показало что нет записи в CCR и TRISE, там нули при считывании
Go to the top of the page
 
+Quote Post
batson
сообщение May 28 2017, 22:08
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



сам спросил, сам отвечу
по адресам I2C4 в STM32F410RB живет FMPI2C, с ним надо общаться по другому
Go to the top of the page
 
+Quote Post
AlexRayne
сообщение May 29 2017, 07:54
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 319
Регистрация: 27-09-07
Пользователь №: 30 877



Цитата(batson @ May 29 2017, 01:08) *
сам спросил, сам отвечу
по адресам I2C4 в STM32F410RB живет FMPI2C, с ним надо общаться по другому

А это что за зверь?
Go to the top of the page
 
+Quote Post
Obam
сообщение May 29 2017, 09:00
Сообщение #9


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



Цитата(AlexRayne @ May 29 2017, 11:54) *
А это что за зверь?

I2C тот, что до мегабита. FastModePlus


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post
batson
сообщение May 29 2017, 10:29
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 26-02-11
Пользователь №: 63 256



да, высокоскоростной i2c, у него другой набор регистров
если у кого есть примеры работы с ним киньте пример работы и инита
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th August 2025 - 07:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01412 секунд с 7
ELECTRONIX ©2004-2016