历史上的今天
返回首页

历史上的今天

今天是: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!

推荐阅读

史海拾趣

EBK Kruger GmbH & Co KG公司的发展小趣事

在电子行业的初期,EBK Kruger GmbH & Co KG由创始人Klaus Kruger在德国的一个小镇创立。Klaus是一位电子工程师,对新型电子元器件的研发充满热情。他带领团队成功研发出一种具有更高稳定性和更低能耗的新型电阻器,这一技术突破让公司在行业中崭露头角。通过不断的技术创新和产品优化,EBK Kruger逐渐赢得了市场的认可。

Atlanta Micro公司的发展小趣事

随着公司的发展,Atlanta Micro开始积极拓展市场,与多家知名企业建立了合作关系。通过与这些企业的合作,Atlanta Micro不仅获得了更多的订单和市场份额,还从合作伙伴那里学到了先进的管理经验和技术知识。这种合作共赢的模式,为公司的持续发展提供了有力支持。

贝特莱公司的发展小趣事

随着技术研发的不断深入和产品线的逐渐完善,贝特莱于2016年1月21日正式挂牌上市,进军资本市场。这一举措不仅为公司带来了更多的资金支持,也进一步提升了贝特莱的品牌知名度和市场竞争力。上市后,贝特莱得以加速其研发步伐,不断推出创新产品,满足市场的多样化需求。

Amphenol(安费诺)公司的发展小趣事

贝特莱与小米的合作是其发展历程中的又一重要事件。作为小米全系列合作伙伴,贝特莱为米家智能门锁提供了独家指纹传感器和定制算法芯片。随着米家智能门锁销量突破百万大关,贝特莱也实现了销售上的重大突破。这一合作不仅证明了贝特莱技术的成熟与可靠,也进一步提升了其在智能门锁市场的地位。

Harwin公司的发展小趣事

1994年,Harbour Industries成为Marmon集团的一员。Marmon集团是一个由多个业务部门组成的国际组织,涵盖了多个行业领域。加入Marmon后,Harbour获得了更多的资源和支持,加速了其全球化布局的步伐。公司不仅在北美和欧洲建立了多个生产基地和销售网络,还积极拓展亚洲市场。这一战略调整使得Harbour能够更好地服务全球客户,进一步提升其市场份额和品牌影响力。

Gamewell-FCI ( Honeywell )公司的发展小趣事

Harbour Industries始终将产品质量视为企业的生命线。为了确保产品质量达到国际一流水平,公司不断引入先进的质量管理体系。1990年代末期,Harbour成功通过了ISO9001产品质量认证。这一认证不仅标志着公司的质量管理体系已经达到了国际标准,也为其在全球市场中的竞争提供了有力保障。此外,Harbour还实行了“过程管理”来确定和控制产品成本,进一步提升了其市场竞争力和盈利能力。

问答坊 | AI 解惑

WiMAX技术综述

人类的科学总是不断进步的,技术总是为应运而生的。WiMAX 作为一项新兴技术,能够在比Wi-Fi更广阔的地域范围内提供“最后一公里”宽带连接性,由此支持企业客户享受T1 类服务以及居民用户拥有相当于线缆/DSL 的访问能力。凭借其在任意地点的1~6 英 ...…

查看全部问答>

硬件测试技术

对硬件设计人员和测试人员提高设计测试水平有益。59页的内容包括: 硬件测试概述 硬件测试前准备 硬件测试的种类与操作 硬件测试的级别 可靠性测试 测试问题解决 测试效果评估 硬件测试参考的通信技术标准 测试规范制定 测试人员的培养…

查看全部问答>

请教高手:单片机中断处理的问题

我在单片机中编程如下,SendKey_Protocl();是一个费时的操作,超过30ms,小于600ms,我得不到想要的结果,请问:--在中断处理服务程序中,如果费时的函数调用没有处理完是否在后台处理?还是被舍弃?。。。请问高手应该怎么处理? //TIMER0 ini ...…

查看全部问答>

关于eboot下flash的问题

最近在修改eboot,(ep9315的cpu)现在发现有个擦flash的问题,运行到 Continue to Erase the rest of Flash. *pFlash        = EA0003FF . ERROR: Error while erasing flash 就发生错误 不是硬件的问题,因为用自 ...…

查看全部问答>

25岁生日!!!散分,也和大家討論下25岁後的生活安排.

         在下現在研二. 今年下半年就要找工作了,26岁生日的時候就應該在單位呆著了(如果找到了的話).              目前在我們實驗室的公司里打雜. 主要弄c/c++編程(PC ...…

查看全部问答>

MTK中如何调整HIGHTLIGHT的高度啊

MTK中如何调整HIGHTLIGHT的高度啊…

查看全部问答>

想做个检测风扇的转速。谁能提供点思路。谢谢

想做个检测风扇的转速。谁能提供点思路。谢谢…

查看全部问答>

如何给430增加usb功能?

不是五系列的,想给1611做的一个系统增加usb功能,不知道应该选用什么样的usb控制芯片,做怎样的工作,需要增加多少代码,不知道1611的flash是不是够?希望高手指教…

查看全部问答>

地线设计中应注意以下几点

1. 正确选择单点接地通常,滤波电容公共端应是其它的接地点耦合到大电流的交流地的唯一连接点,同一级电路的接地点应尽量靠近,并且本级电路的电源滤波电容也应接在该级接地点上,主要是考虑电路各部分回流到地的电流是变化的,因实际流过的线路的 ...…

查看全部问答>

关于大功率高频传输电线的问题

本人菜鸟 希望大神们帮忙分析一下 比如我现在有一个类似于天线的闭合线圈 上面走的电流比较大,电流幅值比较大,将近50A 但是频率有比较高,比如无许可的6.78MHz 如果用普通铜线趋肤效应比较大,内阻就大的不得了 为了能有闭合电流不能用同轴 ...…

查看全部问答>