STM32F091Rc взаимодействует с внешним (I2C) RTC MCP79411 - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь связать STM32F091Rc с MCP79411 через шину i2c, я могу получить уникальный идентификатор из чипа (MCP79411), но не могу установить или получить дату и время RTC из чипа.

IЯ использую CUBEMX для генерации инициализации I2C и других необходимых файлов, также я использую freertos и Eclipse IDE.

Не удается найти библиотеки, связанные с чипом RTC.Любая помощь будет полезна.

РЕДАКТИРОВАТЬ: (рабочий) Код, используемый для извлечения уникального идентификатора из микросхемы MCP79411.

I2c Декларация выполняется посредством генерации STMCubeMX.


    uint8_t UID_Address_register[]={0xF2,0xF3,0xF4,0xF5,0xF6,0xF7};
    uint8_t Receive_buffer[6];
    for(int k=0;k<6;k++)
    {
     HAL_I2C_Master_Transmit(&hi2c1,0xAE,(uint8_t*)&UID_Address_register[k],1,100);
     HAL_I2C_Master_Receive(&hi2c1,0xAF,(uint8_t*)&Receive_buffer[k],1,100);
    }

Код, используемый для получения даты и времени RTC, но не удалось.

    uint8_t RTC_Date_Time_Registers[]={0x00,0x01,0x02,0x03,0x04,0x05};
    uint8_t DnT_rec_Buf[6];
    for(int k=0;k<6;k++)
    {
     HAL_I2C_Master_Transmit(&hi2c1,0xDE,(uint8_t*)&RTC_Date_Time_Registers[k],1,100);
     HAL_I2C_Master_Receive(&hi2c1,0xDF,(uint8_t*)&DnT_rec_Buf[k],1,100);
    }

   *Binary to decimal conversion operation done to convert incoming read bytes. But only read "000000".

Заранее спасибо.

...