历史上的今天
今天是:2025年03月15日(星期六)
2020年03月15日 | STM32F407 驱动外部SRAM
2020-03-15 来源:eefocus
需要驱动的SRAM型号为IS61LV25616AL,性价比比51216的高很多
配置Cubemx

这几个时序比较关键,可以按照手册来计算,我用下来这几个数值比较合适。
然后就没有然后了,生成代码就可以用了。。。
检查SRAM内容是否正确
uint8_t bsp_TestExtSRAM(void)
{
uint32_t i;
uint32_t *pSRAM;
uint8_t *pBytes;
uint32_t err;
const uint8_t ByteBuf[4] = {0x55, 0xA5, 0x5A, 0xAA};
/* 写SRAM */
pSRAM = (uint32_t *)EXT_SRAM_ADDR;
for (i = 0; i < EXT_SRAM_SIZE / 4; i++)
{
*pSRAM++ = i;
}
/* 读SRAM */
err = 0;
pSRAM = (uint32_t *)EXT_SRAM_ADDR;
for (i = 0; i < EXT_SRAM_SIZE / 4; i++)
{
if (*pSRAM++ != i)
{
err++;
}
}
printf("SDRAM check round 1 error = %dn", err);
if (err > 0)
{
return (4 * err);
}
#if 1
/* 对SRAM 的数据求反并写入 */
pSRAM = (uint32_t *)EXT_SRAM_ADDR;
for (i = 0; i < EXT_SRAM_SIZE/4; i++)
{
*pSRAM = ~*pSRAM;
pSRAM++;
}
/* 再次比较SRAM的数据 */
err = 0;
pSRAM = (uint32_t *)EXT_SRAM_ADDR;
for (i = 0; i if (*pSRAM++ != (~i)) { err++; } } printf("SDRAM check round 2 error = %dn", err); if (err>0) { return (4 * err); } #endif /* 测试按字节方式访问, 目的是验证 FSMC_NBL0 、 FSMC_NBL1 口线 */ pBytes = (uint8_t *)EXT_SRAM_ADDR; for (i = 0; i < sizeof(ByteBuf); i++) { *pBytes++ = ByteBuf[i]; } /* 比较SRAM的数据 */ err = 0; pBytes = (uint8_t *)EXT_SRAM_ADDR; for (i = 0; i < sizeof(ByteBuf); i++) { if (*pBytes++ != ByteBuf[i]) { err++; } } printf("SDRAM check round 3 error = %dn", err); if (err > 0) { return err; } return 0; } 函数返回值是错误的个数,正常应该返回0 ENJOY!
史海拾趣
|
我在单片机中编程如下,SendKey_Protocl();是一个费时的操作,超过30ms,小于600ms,我得不到想要的结果,请问:--在中断处理服务程序中,如果费时的函数调用没有处理完是否在后台处理?还是被舍弃?。。。请问高手应该怎么处理? //TIMER0 ini ...… 查看全部问答> |
|
最近在修改eboot,(ep9315的cpu)现在发现有个擦flash的问题,运行到 Continue to Erase the rest of Flash. *pFlash = EA0003FF . ERROR: Error while erasing flash 就发生错误 不是硬件的问题,因为用自 ...… 查看全部问答> |
|
在下現在研二. 今年下半年就要找工作了,26岁生日的時候就應該在單位呆著了(如果找到了的話). 目前在我們實驗室的公司里打雜. 主要弄c/c++編程(PC ...… 查看全部问答> |
|
不是五系列的,想给1611做的一个系统增加usb功能,不知道应该选用什么样的usb控制芯片,做怎样的工作,需要增加多少代码,不知道1611的flash是不是够?希望高手指教… 查看全部问答> |
|
1. 正确选择单点接地通常,滤波电容公共端应是其它的接地点耦合到大电流的交流地的唯一连接点,同一级电路的接地点应尽量靠近,并且本级电路的电源滤波电容也应接在该级接地点上,主要是考虑电路各部分回流到地的电流是变化的,因实际流过的线路的 ...… 查看全部问答> |
|
本人菜鸟 希望大神们帮忙分析一下 比如我现在有一个类似于天线的闭合线圈 上面走的电流比较大,电流幅值比较大,将近50A 但是频率有比较高,比如无许可的6.78MHz 如果用普通铜线趋肤效应比较大,内阻就大的不得了 为了能有闭合电流不能用同轴 ...… 查看全部问答> |




