这个问题实在是搞晕了,搞不懂为啥ST搞这么坑爹 —— 到底16位数据宽度对应的地址是什么回事?
用STM32F103VCT6驱动TFT控制器,A16接D/C,地址定义为:(*((uint*)0x60020000)) ....... 相信这个很多兄弟都知道,也明白是因为坑爹的FSMC总线的地址对应16位宽度数据时,将 A17移到A16输出了,理由是TMD反正地址线A0用不着!
现在这么坑爹的设计就有一个巨大的问题了:我外部连了一个16BIT的SRAM,我要在这个RAM里定义一个字(uint_16)数组,我现在怎么访问?我怎么用连续的地址空间去访问?难道每访问一个字时,还要TMD把地址*2输出?
想破了脑袋想不明白 —— 兄弟们有高招么?还是这坑爹的外部RAM只能字节连续访问?转载
|