硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1462|回复: 3
收起左侧

[ThreadX全家桶] USBX初始化出现UX_MEMORY_INSUFFICIENT错误

[复制链接]

19

主题

125

回帖

182

积分

初级会员

积分
182
发表于 2022-4-15 19:07:17 | 显示全部楼层 |阅读模式
如题,芯片L4,USBX做MSC和HID功能。初始化时出错。

下在这句返回UX_MEMORY_INSUFFICIENT

  ret =  _ux_device_stack_initialize(NULL,
                                     0,
                                     device_framework_full_speed,
                                     device_framework_fs_length,
                                     string_framework,
                                     string_framework_length,
                                     language_id_framework,
                                     languge_id_framework_length, UX_NULL);

跟踪进去,就发现错误。

            while (endpoints_pool < (device -> ux_slave_device_endpoints_pool + endpoints_found))
            {

                /* Obtain some memory.  */
                endpoints_pool -> ux_slave_endpoint_transfer_request.ux_slave_transfer_request_data_pointer =
                                _ux_utility_memory_allocate(UX_NO_ALIGN, UX_CACHE_SAFE_MEMORY, UX_SLAVE_REQUEST_DATA_MAX_LENGTH);

                /* Ensure we could allocate memory.  */
                if (endpoints_pool -> ux_slave_endpoint_transfer_request.ux_slave_transfer_request_data_pointer == UX_NULL)
                {
                    status = UX_MEMORY_INSUFFICIENT;
                    break;
                }

                /* Create the semaphore for the endpoint.  */
                status =  _ux_utility_semaphore_create(&endpoints_pool -> ux_slave_endpoint_transfer_request.ux_slave_transfer_request_semaphore,
                                                    "ux_transfer_request_semaphore", 0);

                /* Check completion status.  */
                if (status != UX_SUCCESS)
                {
                    status = UX_SEMAPHORE_ERROR;
                    break;
                }

                /* Next endpoint.  */
                endpoints_pool++;
            }

回复

使用道具 举报

19

主题

125

回帖

182

积分

初级会员

积分
182
 楼主| 发表于 2022-4-15 21:06:09 | 显示全部楼层
USBX_MEMORY_SIZE这个改大就对了,已经解决了。这个内存和整个协议栈的内存还不是一个概念。
回复

使用道具 举报

2

主题

10

回帖

16

积分

新手上路

积分
16
发表于 2022-4-17 17:47:43 | 显示全部楼层
USBX_MEMORY_SIZE 这个值与应用的具体情况相关,生成代码设的都比较小。
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-2-26 10:49:39 | 显示全部楼层
第一个红框把原本的改小
BMontanari_6-1697561737336.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-3 18:23 , Processed in 0.283314 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表