欢迎光临散文网 会员登陆 & 注册

TFTLCD 开发记录 -- 2、SDRAM配置

2023-09-27 21:15 作者:茄子土豆地三鲜  | 我要投稿


配置SDRAM

           新建工程,选择芯片型号为STM32H743IIT6

        时钟配置使用外部晶振

    时钟树配置,最高跑到400M,直接修改成400,系统会自动计算出来

       

     驱动屏幕外部SDRAM必不可少,所以先要正确配置SDRAM,正点原子开发板上用到的是 W9825G6KH 这颗SDRAM,容量32MByte。原理图如下:

            使用FMC接口操作SDRAM,对FMC接口进行配置

        根据W9825G6KH 数据手册里的参数配置以下内容

      

        GPIO配置不用管,正点原子就是按照这个设计的

        点击生成代码,开发环境选择STM32CubeIDE

 SDRAM测试

        由于测试需要使用printf函数输出信息,故要先配置下串口


    初始化串口函数:

编写sdram.c


引入头文件sdram.h

    主函数中调用 SDRAM初始化函数和测试函数,输出测试信息:


    最终显示,SDRAM配置成功


        SDRAM配置成功之后,在定义变量时,可以直接指定变量存储到外部SDRAM 空间。以上的测试方法是使用指针访问SDRAM空间,未免过于麻烦。在实际使用中,可以直接定义一个非常大的数组,将整个数组都存储到SDRAM上,然后动态的使用SDRAM内存空间。要注意使用这种方法定义变量时,必须在函数外把它定义成全局变量,才可以存储到指定地址上。

        如果使用KEIL开发环境,操作就比较简单,在定义变量时使用如下方式:

        如果使用STM32CubeIDE,则稍微麻烦点,需要在STM32H7431ITX_FLASH.ld文件中做如下修改,添加部分代码:

    然后将变量定义到SDRAM中,使用:

    编译之后,可以在STM32CubeIDE右侧Memory Regions看一下编译信息

    最后可以看一下,Memory Details,会有定义的变量出现

    以上,SDRAM就配置成功了

    完整的工程代码开源,在https://www.bilibili.com/read/readlist/rl758628?spm_id_from=333.999.0.0 视频下方简介可以看到

TFTLCD 开发记录 -- 2、SDRAM配置的评论 (共 条)

分享到微博请遵守国家法律