NXP实战笔记(十一):32K3xx基于RTD-SDK在S32DS上配置DFLASH、MemAcc、Fee

目录

1、概述

2、RTD-SDK配置之Cache_Ip

3、RTD-SDK配置之Mem_43_InFls

4、RTD-SDK配置之MemAcc

5、RTD-SDK配置之Fee

6、代码示例


1、概述

        S32K3目前安装的RTD普遍使用的是R22-11版本的AUTOSAR规范,作为一直使用AUTOSAR4.2.2的程序员来讲,属实迭代快乐一些,其实也怪不得更新快,假设自己每年都会看变化,其实也是能跟上的,更多的是自己不思进取吧,加油,打工人,方法在,学起来也快,自信还是要有的!

        DFLASH文档里面有描述,MemACC\FEE在手册里面并没有介绍,其属于抽象层的组件。

        在RTD-SDK里面可以实现的,包含DF、MemAcc、Fee,结构如下:

        RM手册描述DF如下:

        这些能后分的块也是有限制的

        这块其实介绍的不多,具体手册描述可以看RM的第21章节,下面进入正题的配置环节。

总共要配置的环节如下

2、RTD-SDK配置之Cache_Ip

        这个Cache是必须要配置的

3、RTD-SDK配置之Mem_43_InFls

        此处显示了为什么要使能Cache,NXP的这块数据传输是在Cache里面的,DMA是不需要Cache的。

        Mem实例如下:Fee至少需要两个大的块进行切换,所以此处DF至少也要分两个块进行实现。

4、RTD-SDK配置之MemAcc

        MemAcc Mem Invocation :这个选择比较重要的

        DIRECT STATIC:内存驱动程序与应用程序链接。memm业务函数由MemAcc直接调用。Mem_Init由EcuM调用,Mem_MainFunction由SchM触发。

        INDIRECT_DYNAMIC: Mem驱动程序链接为单独的二进制文件,并动态激活。MemAcc将使用Mem驱动头表来调用Mem服务函数。Mem_Init和Mem_MainFunction的调用由MemAcc处理。

        INDIRECT_STATIC:内存驱动程序链接到应用程序。MemAcc将使用Mem驱动头表来调用Mem服务函数。Mem_Init和Mem_MainFunction的调用由MemAcc处理。

5、RTD-SDK配置之Fee

下面这个必选的

FeeGeneral

虚拟页大小:8Bytes

Fee Data Buffer Size:每次mainfunction最大处理的字节数。

设置两个块

设置FEE块,这个块要与NVM的块对应起来。

6、代码示例

1、初始化

	MemIf_StatusType status = MEMIF_IDLE;
	/* Init MemAcc */
	MemAcc_Init(NULL_PTR);
	/* Init Fee */
	Fee_Init(NULL_PTR);

    do
    {
        Fee_MainFunction();
        MemAcc_MainFunction();
        status = Fee_GetStatus();
    } while (status != MEMIF_IDLE);

2、周期调用代码

	Fee_MainFunction();
	MemAcc_MainFunction();

3、操作代码

FEE写
Fee_Write(FeeConf_FeeBlockConfiguration_FeeBlockConfiguration_0,DataBufferPtr);
FEE读
Fee_Write(FeeConf_FeeBlockConfiguration_FeeBlockConfiguration_1,DataBufferPtr);

注意一下:NXP的Fee操作地址是块的从下到上的。

  • 16
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

剑从东方起

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值