-
这本书真的不错,推荐各位看一下
-
估计楼主的需求量很大
-
还有那个EP_NUM 是你用了几个EP不是你用到了第几个EP吧。
-
XMP/MC应该接GND,结果接到V3.3了!
-
没有人遇到过这种情况啊,单纯的加电容行吗
-
那楼主打算如何接SDRAM,或者改方案?
-
可能是你的使用方法错误。
-
直接用JLINK烧写IAP 和APP,上电APP能直接运行
仿真时可以看到程序先进IAP,再跳转到APP。
如果进入IAP后按键,进行程序升级的时候,用YMODE协议烧写HEX或AXF,烧写完成后,再重新上电,不能正确引导
仿真时发现
/* Test if user code is programmed starting from address "ApplicationAddress" */
if (((*(__IO uint32_t*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000)
{ /* Jump to user application */
JumpAddress = *(__IO uint32_t*) (ApplicationAddress + 4);
Jump_To_Application = (pFunction) JumpAddress;
/* Initialize user application's Stack Pointer */
__set_MSP(*(__IO uint32_t*) ApplicationAddress);
Jump_To_Application();
}
括号内的内容不执行。
-
程序太长没看,但感觉是HSE启动没有成功。
建议先改回HSI,如果成功了,说明是HSE的问题。
如果是HSE的问题,建议检查晶振的电容。
-
没必要用那么复杂的复位芯片
-
是EOP位,这一位烧写完成后由硬件置1,读取FLASH_IAPSR之后清为0。
不要用调试环境去读寄存器,在程序中去读取并判断。
*((u8*)(0x4000)) = 0xAA;
while(!(FLASH_IAPSR & 0x04));
/* 下一步操作 */
-
楼上,呵呵
-
-
几点看法,供参考:1)如果可以外接TCXO,问题肯定可以解决,但成本上需要考虑。TCXO是内部有温度补偿电路的晶振电路,价格比较贵,大概几个美金。曾经用过一款MAXIM的TCXO,印象是在0~70度的误差是1分钟/年,在-20~85度的误差是2分钟/年。2)不使用TCXO,而完全用STM32的温度传感器,来大致进行温度补偿,精度肯定也可以提高。可以参考上面32k晶振的典型温度曲线,进行温度补偿后,精度估计能提供3~10倍。
-
主要是前端的采样率有点高,而且我需要用来处理的数据长度较大!
所以需要考虑用SDRAM!
-
-
这里的BZ就是EDN里的STM32?问问题是就要会钻空子,不然没人回答啊不知道是什么编译器会把这2个变量优化,我想测试一下如果为了防止被优化,我相信有更好的办法,而不是多占用全局RAM我已经改为函数内部变量,在IAR5.11和Codesourcery的GCC上都没有问题(查一下,没有被优化)可能RCC_WaitForHSEStartUp函数确实不会多次调用,但至少我不喜欢函数设计成这个样子,没有特殊情况,函数还是可重用的好
-
含标志等的数据,进行位操作,如果编译器够好的话,应该能产生相关的bitband指令吧。有空研究一下。
-
引用:
用的多少版本的IAR?
IAR 的版本是3.30
-
抽中了iar 256k限制版,价值6500rmb,还不错。