CPU与NOR的连接关系如图所示,CPU A1 -> NOR A0。我的理解是CPU只能按16bit地址对齐的方式读取
NOR,即CPU发出一个地址(A0被丢掉),应该从NOR返回一个16位数据。但测试结果却不是这样,实际
CPU仍能从任意地址按字节读取NOR里的数据。测试代码如下,请明白人解释下,这究竟是为什么呢?
void test_rd_nor(void)
{
char i;
char *nor_addr = (char *)NOR_ADDR; //NOR_ADDR:0x60010000
printf("\r\nNor Flash Content: ");
for(i=0; i<20; i++)
{
printf("0x%02X ", *(nor_addr++));
}
printf("\r\n");
}
|