xingkong911 发表于 2016-2-17 10:55:04

ucosii 消息队列中,每次发送的消息大小限制吗?

ucosii的消息队列中,每次发送的是一个消息的地址指针,
那么这个地址指针对应的消息内容长度有限制吗?或者在哪里定义?

jiaowoxiaolu 发表于 2016-2-17 11:14:54

既然是指针那就没有长度限制的说法了,首地址都给你了你想访问多长不就是你自己决定了吗?

xingkong911 发表于 2016-2-17 11:28:30

jiaowoxiaolu 发表于 2016-2-17 11:14
既然是指针那就没有长度限制的说法了,首地址都给你了你想访问多长不就是你自己决定了吗? ...

是发送消息数据,难道从首地址开始无限制的写入数据?

wenwu 发表于 2016-2-17 11:32:11

xingkong911 发表于 2016-2-17 11:28
是发送消息数据,难道从首地址开始无限制的写入数据?

消息传递过去的只是一个指针而已。

xingkong911 发表于 2016-2-17 11:34:20

wenwu 发表于 2016-2-17 11:32
消息传递过去的只是一个指针而已。

我知道是一个指针地址,我想问的是:指针对应数据缓冲区我可以无限制的写入数据吗?

jiaowoxiaolu 发表于 2016-2-17 11:37:07

xingkong911 发表于 2016-2-17 11:34
我知道是一个指针地址,我想问的是:指针对应数据缓冲区我可以无限制的写入数据吗? ...

这个要看你RAM大小啊,什么叫无限制?? 一般传递的都是自己组织的结构体类型数据避免越界访问死机

yanjian305 发表于 2016-2-17 11:41:20

仅仅是一个指针,代表啥意思,只有你知道,如果是数据区的起始地址,这个数据区有多少数据也只有你知道

xingkong911 发表于 2016-2-17 11:50:42

jiaowoxiaolu 发表于 2016-2-17 11:37
这个要看你RAM大小啊,什么叫无限制?? 一般传递的都是自己组织的结构体类型数据避免越界访问死机 ...

明白了。
我是打算在串口中断接收用消息队列传递,
既然接收缓冲区的定义已知,那么用一个信号量告诉收到数据就,任务收到信号量直接去接收缓冲区查找就可以了

shijianzhou 发表于 2016-2-17 14:02:32

感觉没理解指针是啥意思,或者没理解系统RAM是啥意思。

xingkong911 发表于 2016-2-17 14:09:17

shijianzhou 发表于 2016-2-17 14:02
感觉没理解指针是啥意思,或者没理解系统RAM是啥意思。

对,是不熟悉

gagaguojia 发表于 2016-2-23 09:58:08

首先消息是指针,而指针只是个地址

就拿你要告诉小明到仓库取东西
你发的消息就好像告诉小明(系统)仓库(消息所包含的内容)的地址
而仓库究竟存放多少东西,那要看你的地址所指的空间有多大了

sddp001 发表于 2016-2-23 10:13:17

先分配一个内存,写入数据,发送消息,接收到消息读取,释放内存。两边都要协调好的,分配多大呢内存,数据存储的结构。这玩意儿是个系统活儿
页: [1]
查看完整版本: ucosii 消息队列中,每次发送的消息大小限制吗?