static uint32_t ftfx_read_word_from_byte_address(const uint8_t *src)
{
uint32_t word = 0;
if (!((uint32_t)src % 4))
{
word = *(const uint32_t *)src;
}
else
{
for (uint32_t i = 0; i < 4; i++)
{
word |= (uint32_t)(*src) << (i * 8);
src++;
}
}
return word;
{
uint32_t word = 0;
if (!((uint32_t)src % 4))
{
word = *(const uint32_t *)src;
}
else
{
for (uint32_t i = 0; i < 4; i++)
{
word |= (uint32_t)(*src) << (i * 8);
src++;
}
}
return word;
}
定义变量word并初始化为0,首先判断src地址是否以4字节对齐方式,如果是则直接读取
src地址处的值,否则按字节读取数据到Word中,循环4次。