При назначении указателя на указатель структуры mcu входит в Hardfault Handler - PullRequest
1 голос
/ 26 марта 2020

Я использую STM32F072 MCU и IAR в качестве компилятора.

Когда я запускаю приведенный ниже код, он переходит в обработчик сбоя. Я не могу понять, почему это так.

    uint8_t *ptr1;
    uint32_t *ptr2;
    uint32_t temp;

    typedef struct{
        uint8_t Data[10];
    } example_struct;

    example_struct sensor;

    sensor.Data[0] = 0xAA;

    ptr1 = &sensor.Data[0];  // here ptr1 is pointing 0xAA with no problem
    ptr2 = (uint32_t*) ptr1; // here *ptr2 is 0x000000AA, so there is no problem.
    temp = *ptr2;            // here mcu goes in to hardfault handler

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

Спасибо

...