
本帖最后由 smallcsduck 于 2018-4-16 22:35 编辑 + k, p# K8 @% ]% o+ I 前一段时间拿到了ST官方的STM32L4R9AI discovery开发板研究了一下。可能是刚出的板子,资料比较少,STM32cubeMX附带的例程也非常少。很多功能没有做demo,那就来慢慢给他补上吧。要达到的目标不是能跑起来就行了,要能发挥最大的性能和全部的功能。 这篇就来讲一下开发板板载的型号为IS66WV1M16EBLL的PSRAM初始化时序设置。 0 b! N: c# c/ ~* e, j 首先是MCU主频是设置在120M。 ![]() PSRAM的FMC接口设置。3 d. ]6 k6 |) O! M# Z ![]() 时序设置。 ![]() 下面是寄存器设置,可以直接在SystemInit里初始化PSRAM。 k3 O# }& V! U; r6 D' h __IO uint32_t tmp = 0x00; " P/ z, Q) S9 q5 j4 j /*-- GPIOs Configuration -----------------------------------------------------*/ /* Enable GPIOD, GPIOE, GPIOF and GPIOG interface clock */( [ B! C' ^0 ] d1 V& T RCC->AHB2ENR |= 0x000001FF;# C: n: c# K& @6 v/ J2 m /* Delay after an RCC peripheral clock enabling */ tmp = READ_BIT(RCC->AHB2ENR, RCC_AHB2ENR_GPIODEN);3 ^, W! J$ _" B, S0 V- a1 E % @+ u- }- h: }+ F, }1 W /* Connect PDx pins to FMC Alternate function */9 g7 r+ X% j$ o+ T" K GPIOD->AFR[0] = 0xC0CC00CC; GPIOD->AFR[1] = 0xCCCCCCCC;$ E1 e' ^+ n9 ]" O1 t) w /* Configure PDx pins in Alternate function mode */ - Y- A5 h) {& w/ S/ B GPIOD->MODER = 0xAAAABAFA; /* Configure PDx pins speed to 100 MHz */ 2 m0 w: V" A0 e) D" u GPIOD->OSPEEDR = 0xFFFFCF0F;7 }: l5 v e/ N3 x7 Z# R4 \ /* Configure PDx pins Output type to push-pull */ ( ?" k" | q6 t' |/ G' C4 c GPIOD->OTYPER = 0x00000000; /* No pull-up, pull-down for PDx pins */ 7 w! Q/ [* g# e1 s9 { GPIOD->PUPDR = 0x00000000; /* Connect PEx pins to FMC Alternate function */7 I) k y: d$ y& `$ ] GPIOE->AFR[0] = 0xC000C0CC; GPIOE->AFR[1] = 0xCCCCCCCC; /* Configure PEx pins in Alternate function mode */ GPIOE->MODER = 0xAAAABFBA; /* Configure PEx pins speed to 100 MHz */ b( s" l: P/ I5 \$ s GPIOE->OSPEEDR = 0xFFFFC0CF; /* Configure PEx pins Output type to push-pull */ % C* C: R) B; E; n0 K GPIOE->OTYPER = 0x00000000; /* No pull-up, pull-down for PEx pins */ ! q5 m/ h; j) a- o GPIOE->PUPDR = 0x00000000;" h% G8 E* [+ S9 ~ c0 y% H* H0 ?* _ /* Connect PFx pins to FMC Alternate function */2 u1 x" e1 ?, J8 R GPIOF->AFR[0] = 0x00CCCCCC; GPIOF->AFR[1] = 0xCCCC0000; /* Configure PFx pins in Alternate function mode */ ' ]) v3 B6 m7 K GPIOF->MODER = 0xAAFFFAAA;* [( T) O f) g$ P /* Configure PFx pins speed to 100 MHz */ GPIOF->OSPEEDR = 0xFF000FFF; /* Configure PFx pins Output type to push-pull */ GPIOF->OTYPER = 0x00000000;" K, Q4 J8 |) h- \ /* No pull-up, pull-down for PFx pins */ : T! K$ ]/ V5 R( }0 ^+ z) X+ r4 _5 S$ z GPIOF->PUPDR = 0x00000000;8 n) Q9 @# O4 D) e) Q" y /* Connect PGx pins to FMC Alternate function */! a. X! o1 P: P; ? GPIOG->AFR[0] = 0x00CCCCCC;# z# J* a0 A0 W! C% f" y% T GPIOG->AFR[1] = 0x00000000;, v! _5 |4 t7 ]; ~ /* Configure PGx pins in Alternate function mode */ GPIOG->MODER = 0xFFFFFAAA;. H2 K3 f1 C# c: K4 x /* Configure PGx pins speed to 100 MHz */ GPIOG->OSPEEDR = 0x00000FFF; /* Configure PGx pins Output type to push-pull */ $ o+ a/ {: L+ n GPIOG->OTYPER = 0x00000000; /* No pull-up, pull-down for PGx pins */ GPIOG->PUPDR = 0x00000000;4 Q0 Y2 `' G% v, H; B * Z! k+ t w+ A /*-- FMC/FSMC Configuration --------------------------------------------------*/* i4 Z2 T% V0 ~ /* Enable the FMC/FSMC interface clock */ RCC->AHB3ENR |= 0x00000001; , m. L- ~6 a$ p" }5 b /* Delay after an RCC peripheral clock enabling */ tmp = READ_BIT(RCC->AHB3ENR, RCC_AHB3ENR_FMCEN); /* Configure and enable Bank1_SRAM1 */# Y! Y# }6 y6 I9 o, ? FMC_Bank1_R->BTCR[0] = 0x00005095;$ [6 S3 j$ j: @& h( P FMC_Bank1_R->BTCR[1] = 0x4FF104F3;' U8 u# F1 D3 E, |4 B FMC_Bank1E_R->BWTR[1] = 0x0FF103F3; 项目代码地址在http://github.com/babycheng/STM32L4R9AIDISCOVERY.git。研究好了的代码会及时推送上去。( m7 `( t; j6 F& ? 项目使用 Arm Compiler 6.9 工具链,调试工具是开发板上集成的STLINK。使用MDK编译以后直接进debug模式运行。程序在SRAM1里面运行。烧进flash运行没有设置。 本人水平有限,以上如有错误之处,敬请指出。- q' o+ Z# ]2 H2 I 转载请注明出处http://smallcsduck.blog.163.com! W6 [! L1 q# r1 y1 K' l- q, w ( A4 ?0 n0 \7 G# ~ + M' h3 o9 K+ t ` r0 l, z / J9 X G8 i' R; a; |- Y8 u9 r |
STM32如何分配原理图IO
【STM32N6570-DK评测】1.开箱测评
【实测教程】STM32CubeMX-STM32L4之研究(ADC)
【STWINKT1B评测】2.初步测试IIS3DWB振动传感器
【STM32N6570-DK评测】1.你好N6
实战经验 | STM32 AI Model Zoo 的安装及实例介绍
【圣诞专享活动】使用TouchGFX做GUI显示:圣诞快乐&Merry Christmas!
串口通信波特率异常的解决办法
【STWINKT1B 评测】6. NanoEdge AI 音频分类器 (2)
【STWINKT1B 评测】5. NanoEdge AI 音频分类器 (1)
https://www.stmcu.org.cn/module/forum/thread-615497-1-1.html