stm32f4 fmsc的地址只能是32位的吗?为什么从地址4开始写,总线上地址实际为2?

2019-07-20 20:05发布

求高手门帮忙解答下
1、stm32f4 fmsc的地址只能是32位的吗?2、如果是32位的,是不是说在地址1上写一个数据,地址线会处理两次吗?
3、FSMC_SRAM_WriteBuffer(temp,4,20); 我在地址4上开始写数据,实际上是从地址2上开始写的,为什么呢?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
wy212235
2019-07-21 08:13
正点原子 发表于 2016-9-11 15:45
2,16位地址外扩的sram,如果是32位数据访问,最长可能引起三次数据读写。最短是2次。
当地址是偶数的时 ...

我用的是
void FMC_SRAM_WriteBuffer_Word2(u16* pBuffer,u32 WriteAddr,u32 n)
{
        for(;n!=0;n--)  
        {                                                                                    
                *(vu16*)(Bank1_SRAM2_ADDR+WriteAddr)=*pBuffer;          
                WriteAddr+=2;
                pBuffer++;
        }   
}
在地址4上写16位的数据

一周热门 更多>