你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 2202|回复: 0

以下问题算不算STM32F103的BUG?

[复制链接]

3

主题

10

回帖

0

蝴蝶豆

初级会员

最后登录
2019-5-27
发表于 2011-9-25 09:41:40 | 显示全部楼层 |阅读模式
写个程序控制PCCARD, 使用nCE4_2,看资料上其地址为0x900000000,根据固件库写代码如下(主要部分):

#define Bank4_NAND_ADDR    ((uint32_t)0x90000000)

void PCCARD_Init(void)
{
  FSMC_PCCARDInitTypeDef FSMC_PCCARDInitStructure;
  FSMC_NAND_PCCARDTimingInitTypeDef p;
  FSMC_PCCARDDeInit();
  p.FSMC_SetupTime = 3;
  p.FSMC_WaitSetupTime = 3;
  p.FSMC_HoldSetupTime = 3;
  p.FSMC_HiZSetupTime = 0;
  FSMC_PCCARDInitStructure.FSMC_Waitfeature = FSMC_Waitfeature_Disable; //禁止等待
  FSMC_PCCARDInitStructure.FSMC_TCLRSetupTime = 0x0;
  FSMC_PCCARDInitStructure.FSMC_TARSetupTime = 0x0;
  FSMC_PCCARDInitStructure.FSMC_CommonSpaceTimingStruct = &p;
  FSMC_PCCARDInitStructure.FSMC_AttributeSpaceTimingStruct = &p;
  FSMC_PCCARDInitStructure.FSMC_IOSpaceTimingStruct = &p;
  FSMC_PCCARDInit(&FSMC_PCCARDInitStructure);
  FSMC_PCCARDCmd(ENABLE);
}

void PCCARD_WriteReg(uint16_t CPLD_Reg, uint16_t CPLD_RegValue)
{
  *(__IO uint16_t *)(Bank4_NAND_ADDR ) = CPLD_RegValue;
}

在此不考虑能否实现读写PCCARD,只讨论控制线。
用示波器监控nCE4_2(用于控制PCCARD)和NE3(控制SRAM),我测试只读写SRAM,发现NE3控制得很好,nCE4_2不会有变化。但是发现只要调用PCCARD_WriteReg这个函数,那么nCE4_2和NE3就会同时产生下降沿。如果我把地址从0x90000000调整为0x98000000,结果就更加奇怪了,NE3会产生下降沿,反而nCE4_2没有任何反应了。请问这是不是STM32F103的BUG还是什么问题造成的呢?请高手指教啊!
回复

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版