现在用STM32的 fsmc 驱动 RA8875 出现了一个奇怪的现象,在读取RA8875寄存器的时候返回的值都是寄存器的地址,代码如下 csNE4 #define RA8875_REG *(__IO uint16_t *)(0x6c000000+2) #define RA8875_RAM *(__IO uint16_t *)(0x6c000000) uint8_t RA8875_ReadReg(uint8_t _ucRegAddr) { uint8_t value; RA8875_REG = _ucRegAddr;/* 设置寄存器地址 */ value = RA8875_RAM; /* 读取寄存器值 */ return value; } 返回值始终等于传递的参数_ucRegAddr 望高手给予指点一二,谢谢! |
RE:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
#define RA8875_RAM *(__IO uint16_t *)(0x6c000000+2)
这个地址设置好像有问题
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
楼主确认地址设置对否?
#define RA8875_RAM *(__IO uint16_t *)(0x6c000000+2)
这个地址设置好像有问题
反过来了还是一样,同样的接口驱动SRAM没有问题
现在不确定是RA8875的问题还是别的问题
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
回复第 2 楼 于2013-08-30 17:21:40发表:
楼主确认地址设置对否?
#define RA8875_RAM *(__IO uint16_t *)(0x6c000000+2)
这个地址设置好像有问题
反过来了还是一样,同样的接口驱动SRAM没有问题
现在不确定是RA8875的问题还是别的问题
如果楼主确认地址正确,可以换个屏测试一下,如果别的屏没有问题,能够正常驱动,那肯定就是RA8875的问题了。
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
谢谢各位的回复!现在接上屏有显示,但是效果很差(内容不对),主要问题是8875的寄存器都没法读出来,读出来的数值为寄存器的地址,如Reg[0] =0 reg[1]=1 以此类推,这个很头疼,用示波器看了波形都正确,现在很迷茫
你没有别的芯片的屏吗?我用FSMC 驱动ILI9320芯片的屏很正常的。是不是你的8875屏初始化设置没设置好,还是FSMC配置的问题.
FSMC驱动SRAM和驱动屏时,配置的内容不一样,毕竟用不同的内存块,时序也不同,设置时间和数据建立时间设置。如果这样都没有问题,屏显示还是不正常的话,还是换个屏试试吧
RE:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
问题解决了不?我现在也遇到了同样的问题啊
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
问题解决了不?我现在也遇到了同样的问题啊
问题找到了吗?我现在也出现了同样的问题。
回复:求助 STM32 fsmc 驱动 RA8875 的奇怪现象
问题解决了不?我现在也遇到了同样的问题啊
你的问题有没有解决,我遇到一样的问题了
这个表示寄存器操作,后面的“+x“得看你图纸上RA8875的RS接在FSMC的哪个地址线上来确定
RS接在A2上,x = ( 1 << ( 2 + 1 ) )