2291|0

5

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

关于RAWOS QUEUE BUFFER模块的疑惑 [复制链接]

在测试程序中,一共两个任务
        raw_task_create(&test_task_obj[1], (RAW_U8  *)"task1", 0,
                                 3, 0,  test_task_stack1,
                                 TEST_TASK_STK_SIZE ,  test_task1, 1);

        raw_task_create(&test_task_obj[2], (RAW_U8  *)"task2", 0,
                                 30, 10,   test_task_stack2,
                                 TEST_TASK_STK_SIZE ,  test_task2, 1);

task1主要用于数据的接收
                raw_sleep(10);
                if(RAW_SUCCESS == raw_queue_buffer_receive(&p_read_files_Q_Buf1, RAW_WAIT_FOREVER,data_q, &dataSize))
                {

                        for(i = 0;i < dataSize;i++)
                        checksum += queue_buffer_task2_file1[i];
                        vc_port_printf("checksum =  %d\n", checksum);
                        checksum = 0;
                }

raw_queue_buffer_receive第二个参数 此参数我有修改为raw_no_wait 或者100 或者RAW_WAIT_FOREVER,都表示接收不到,
task2用于数据的发送
                                                       
fread(queue_buffer_task2_file1,sizeof(queue_buffer_task2_file1),1,P_ReadFile);                                                        raw_queue_buffer_end_post(&p_read_files_Q_Buf1, queue_buffer_task2_file1, sizeof(queue_buffer_task2_file1));

                                        }
                                        fseek(P_ReadFile,0,SEEK_SET);

主要是在一个文件里面读出512个数据,然后通过raw_queue_buffer_end_post 发送出去,但是
在task1里面一直接收不到,
求指点
在仿真跟踪的时候raw_queue_buffer_receive 这个函数总是返回timerout,,
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表