TI中文支持网
TI专业的中文技术问题搜集分享网站

关于6678官网vifft例子中的几个不懂得地方

初学6678,菜鸟都算不上,希望各位前辈耐心帮助一下

1:在main里面core0创建了一个heapbufmp,这个可以理解,然后其他的核open这个heap也理解,但是为什么其他核打开以后,注册消息编号的时候用的

MessageQ_registerHeap((IHeap_Handle)heapHandle, HEAPID);跟核0使用一样的语句,HEAPID不是一个常数吗?不理解这个语句具体是干什么的,看用户手册也没看懂,手册上说是不是HEAPID根据 heapBufParams.numBlocks变化???(原谅我这个既是菜鸟,也是英语不及格的人吧)

2:每个核创建message的时候,为什么用的是localname,而其他核打开的时候用的是MessageQ_open(core1QueueName, &messageQParams->remoteQueueIdCore[1]),里面用的是core1QueueName

Andy Yin1:

1 MessageQ_registerHeap是在创建完heap之后调用的,为创建好的heap注册一个heapID;

2 每个核的local name应该是不一样的,是会根据coreID区分的,MessageQ_open中填写的第一个入参是messageQ的名字,在创建的时候都会有一个messageQ name,你这里要具体看看core1QueueName的赋值,而不是根据其变量名来判定。

user4712072:

回复 Andy Yin1:

首先,谢谢您的回答

对于第一个问题,还是不大懂,因为core0创建了这个heap,也注册了一个heapID;只是不明白,为什么其他核打开这个heap的时候,为什么要重新注册这个heap一个heapID,会不会重复?

赞(0)
未经允许不得转载:TI中文支持网 » 关于6678官网vifft例子中的几个不懂得地方
分享到: 更多 (0)