关于DSP28335设置内存分配设置堆栈笔记

关于DSP28335设置内存分

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 关于DSP28335设置内存分
  • 前言
  • 一、设置堆栈这里主要是说明函数中的局部变量
    • 第一步: 如何设置28335的stack 找到cmd文件 如下图
    • 第二步: 查看函数里面局部变量地址 如图
  • 二、使用步骤
    • 1.函数
    • 2.其他代码
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、设置堆栈这里主要是说明函数中的局部变量

第一步: 如何设置28335的stack 找到cmd文件 如下图

关于DSP28335设置内存分配设置堆栈笔记_第1张图片
.stack : > RAML1 PAGE = 0 这句话如何理解呢:

: > RAML1 是表示: RAML1 : origin = 0x009000, length = 0x001000 /* on-chip RAM block L1 /
origin = 0x009000:表示芯片内存地址:看下图
length = 0x001000:表示该区域打大小;一共8K字节(4K
16=8192/2=8KB)
关于DSP28335设置内存分配设置堆栈笔记_第2张图片

第二步: 查看函数里面局部变量地址 如图

关于DSP28335设置内存分配设置堆栈笔记_第3张图片

二、使用步骤

1.函数

代码如下(示例):


    uint32_t  lenA,lenB,lenC,lenD;
    memset(&_gSendCtrl, 0, sizeof(_gSendCtrl));
    memset(&_gRecvCtrl, 0, sizeof(_gRecvCtrl));
    memset(&_gRecvQueueObj, 0, sizeof(_gRecvQueueObj));
    lenB = 0x11001155;
    lenA = 0x11001100AA;
    printf("\r\n_gRecvQueueObj  %ld  %ld ",lenA ,lenB);


    lenC =sizeof(uQueue) ;
    lenD = sizeof(Queue);

    printf("\r\nQueue%ld  %ld ",lenC ,lenD);

    QueueInit(64, sizeof(uint8_t), &_gRecvQueueObj, pRecvBuf);

    _g485ProtocolCb_Modbus = AppUser_ModBus_RTU_CmdAnalys; // RS485和CAN共用一个函数执行 modbus协议解析回调
    _gRecvCtrl.recvQueue = RS485GetRecvQueue(); // 接收消息队列指针

    QueueInit(3, (uint8_t)sizeof(Protocol), &_gSendCtrl.sendQueue, pSendBuf);

2.其他代码

代码如下(示例):

	uint32_t ret = 0;
	memset(_gSendCtrl.buf, 0, sizeof(_gSendCtrl.buf));
	_gSendCtrl.len = AppUser_Rs485ProtocolPack(protocol, _gSendCtrl.buf);

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容。

你可能感兴趣的:(DSP学习笔记,笔记)