5533|5

79

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

有谁用103VC(100脚)成功驱动过SRAM(比如IS61LV25616)没有? [复制链接]

如题,我用示波器分析过时序,感觉这种模式下(已打开复用)地址根本就没有在nADV为低时传到AD0~AD15上来,看了ST的AN2784文档上也没有提到103VC驱动SRAM,是不是不支持?
版主能确认这个问题吗?
此帖出自stm32/stm8论坛

最新回复

                                 2010年最后一天的心情就像股票一样郁闷,很相信STM32的,仔细看了最新AN2784文档、勘误表等,没发现说103VC不支持Muxed Mode或有什么Bug, 按照AN2784:5.2 Interfacing the FSMC with a NOR Flash memory所述,至少应该支持NOR吧,于是将设置改为: /*-- FSMC Configuration ----------------------------------------------------    p.FSMC_AddressSetupTime = 2;    p.FSMC_AddressHoldTime = 2;    p.FSMC_DataSetupTime = 6;      p.FSMC_BusTurnAroundDuration = 0;    p.FSMC_CLKDivision = 0;    p.FSMC_DataLatency = 0;    p.FSMC_AccessMode = FSMC_AccessMode_B;    FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM1;    FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Enable;    FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_NOR;    FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b;    FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable;    FSMC_NORSRAMInitStructure.FSMC_AsynchronousWait = FSMC_AsynchronousWait_Disable;      FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low;    FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable;    FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState;    FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable;    FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable;    FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Enable; // 必须要使能    FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable;    FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p;    FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p;    FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure);    /*!< Enable FSMC Bank1_SRAM Bank */    FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM1, ENABLE);   在主程序中用下面循环测试: while (1) {   *(uint16_t *) (0x60001234) = 0x5555;   *(uint16_t *) (0x60005678) = 0xAAAA;   val = *(uint16_t *) (0x60005678); } 理论上说:在AD[0..15]线上应该出现相应的低16位地址和16位数据的! 用示波器观察,只看到数据线上的数据是正确的,出现在nADV为低时的低16位地址却不是循环测试设置的低16位地址值!!!!!! 亲爱的版主啊,怎么看不到你的身影了!ST的技术支持到哪里去找啊! 只看到你强烈建议用103ZE来驱动SRAM/NOR,却没有说个为什么??? 难道ST就不认为这是个Bug???   或许是我对设置参数理解不透,但我确实从ST文档上看不明白!!!  详情 回复 发表于 2010-12-31 11:32
点赞 关注
 

回复
举报

98

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
                                 版主,在吗?能回答这个问题吗?
此帖出自stm32/stm8论坛
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
                                 难道就没人知道?我看坛子里议论FSMC的也很多啊
此帖出自stm32/stm8论坛
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

4
 
                                 楼主若自已搞不定,最好走金钱换技术的路线,建议购买现成的开发板。
此帖出自stm32/stm8论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

5
 
                                 楼上可以推荐一家不?我看到的都是用144脚的驱动的
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

6
 
2010年最后一天的心情就像股票一样郁闷,很相信STM32的,仔细看了最新AN2784文档、勘误表等,没发现说103VC不支持Muxed Mode或有什么Bug,
按照AN2784:5.2 Interfacing the FSMC with a NOR Flash memory所述,至少应该支持NOR吧,于是将设置改为:
/*-- FSMC Configuration ----------------------------------------------------
   p.FSMC_AddressSetupTime = 2;
   p.FSMC_AddressHoldTime = 2;
   p.FSMC_DataSetupTime = 6;  
   p.FSMC_BusTurnAroundDuration = 0;
   p.FSMC_CLKDivision = 0;
   p.FSMC_DataLatency = 0;
   p.FSMC_AccessMode = FSMC_AccessMode_B;
   FSMC_NORSRAMInitStructure.FSMC_Bank = FSMC_Bank1_NORSRAM1;
   FSMC_NORSRAMInitStructure.FSMC_DataAddressMux = FSMC_DataAddressMux_Enable;
   FSMC_NORSRAMInitStructure.FSMC_MemoryType = FSMC_MemoryType_NOR;
   FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_16b;
   FSMC_NORSRAMInitStructure.FSMC_BurstAccessMode = FSMC_BurstAccessMode_Disable;
   FSMC_NORSRAMInitStructure.FSMC_AsynchronousWait = FSMC_AsynchronousWait_Disable;  
   FSMC_NORSRAMInitStructure.FSMC_WaitSignalPolarity = FSMC_WaitSignalPolarity_Low;
   FSMC_NORSRAMInitStructure.FSMC_WrapMode = FSMC_WrapMode_Disable;
   FSMC_NORSRAMInitStructure.FSMC_WaitSignalActive = FSMC_WaitSignalActive_BeforeWaitState;
   FSMC_NORSRAMInitStructure.FSMC_WriteOperation = FSMC_WriteOperation_Enable;
   FSMC_NORSRAMInitStructure.FSMC_WaitSignal = FSMC_WaitSignal_Disable;
   FSMC_NORSRAMInitStructure.FSMC_ExtendedMode = FSMC_ExtendedMode_Enable; // 必须要使能
   FSMC_NORSRAMInitStructure.FSMC_WriteBurst = FSMC_WriteBurst_Disable;
   FSMC_NORSRAMInitStructure.FSMC_ReadWriteTimingStruct = &p;
   FSMC_NORSRAMInitStructure.FSMC_WriteTimingStruct = &p;
   FSMC_NORSRAMInit(&FSMC_NORSRAMInitStructure);
   /*!< Enable FSMC Bank1_SRAM Bank */
   FSMC_NORSRAMCmd(FSMC_Bank1_NORSRAM1, ENABLE);  

在主程序中用下面循环测试:
while (1) {
  *(uint16_t *) (0x60001234) = 0x5555;
  *(uint16_t *) (0x60005678) = 0xAAAA;
  val = *(uint16_t *) (0x60005678);
}
理论上说:在AD[0..15]线上应该出现相应的低16位地址和16位数据的!
用示波器观察,只看到数据线上的数据是正确的,出现在nADV为低时的低16位地址却不是循环测试设置的低16位地址值!!!!!!

亲爱的版主啊,怎么看不到你的身影了!ST的技术支持到哪里去找啊!
只看到你强烈建议用103ZE来驱动SRAM/NOR,却没有说个为什么???
难道ST就不认为这是个Bug???  
或许是我对设置参数理解不透,但我确实从ST文档上看不明白!!!
此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表