-
AT32F403AVG的XMC问题?
我原来的程序工程是在STM32F103VE下开发的,主要是想将STM32F103VE下的HEX直接搬来AT32F403AVG使用,现在发现AT32F403AVG的XMC(即ST的FSMC)写数据时连发送8字节数据,只成功接收前4字节,后4字节好像丢失了,比如我写0xaa0xbb0xcc0xdd0x110x220x330x44只收到了0xaa0xbb0xcc0xdd,丢失了0x110x220x330x44,写代码是*(__IOuint8_t*)(0x6c000000)=byte;。在STM32F103VE和GD32F103VE上都没有这个问题,硬件使用了FSMC8bit数据位宽的写模式,只使用NWE信号与DAT0-7,共计9个信号。初始化代码我也看了好多遍了都差不多,其实我发现AT32的固件与ST的差不多,只不过结构体变量名有少许变化。我也按照AT的固件库改了,始终是不行,但是我发现*(__IOuint8_t*)(0x6c000000)=byte写8次后再空写即*(__IOuint8_t*)(0x6c000000)=0xff4次就收到了丢失的0x110x220x330x44。虽然可以但这不科学呀,老板也不允许擅自这样干。手册上看关于两者的PSRAM这块也都是差不多的,时序图也是一样的。实是在郁闷AT的XMC总线。烦请大佬赐教!不胜感激。
2021-03-28 12