Other Parts Discussed in Thread: AM2434, SYSCONFIG
器件型号: AM2434
主题: SysConfig 中讨论的其他器件
我正在使用 AM2434 和 MCU+ SDK 11.00.00.15、在集成过程中发现了一些问题、并进行了几处小修改、这些修改可能有助于在未来的 SDK 版本中加入。
如果有建议的方法可以在不修改 SDK 的情况下实现相同的结果、请告知我。 一般而言、我认为即使是用户端的小幅配置更改(例如 FreeRTOSConfig.h)也不方便 、需要重新编译 SDK 库、这使得更难维护具有不同配置的多个项目。
下面是我所应用的按组件分组的更改列表。
1) TinyUSB (NoRTOS)–缺少 NO_SYS 定义
文件:source/usb/tinyusb/makefile.ncm_nortos.am243x.r5f.ti-arm-clang
在 defines_common 中、添加:
DNO_SYS=1
文件:source/usb/tinyusb/makefile.RNDIS_nortos.am243xr5f.ti-arm-clang
在 defines_common 中、添加:
DNO_SYS=1
2) FreeRTOS 内核 makefile–缺少文件和堆选择
文件:source/kernel/freertos/makefile.am243x.r5f.ti-arm-clang
在 files_common 中、添加:
stream_buffer.c
可选(但更适合我的用例)、replace: heap_3.c →heap_4.c
3) ENET lwIP 接口–buf 类型+ IPv6 支持
文件: source/networking/enet/core/lwipif/lwip2enet.c src
在行~1246 附近、更改: PBUF_POOL →PBUF_REF
文件: source/networking/enet/core/lwipif/lwip2lwipif.c src
a) 添加 IPv6 报头包括
#include “lwip/ethip6.h"</s>“
b) 在 LWIPIF_LWIP_init 中、当填充 netf 标志/接口时、添加 IPv6 支持
NETIF->flags |= NETIF_FLAG_ETHARP | NETIF_FLAG_BROADCAST;
#if LWIP_IGMP
NETIF->flags |= NETIF_FLAG_IGMP;
#endif #ifdef
LWIP_IPv6
NETIF->flags|= NETIF_FLAG_MLD6;NEWaddr_ENDIF>ETH_
输出;#endifif #endifif_ipf #entif_ipf
4) lwIP TLS (mbedTLS)–pbuf 类型+熵/RNG 挂钩
文件: source/networking/lwip/lwip-stack/apps/altcp_tls/altcp_tls_mbedtls.c src
在行~385 附近、更改: PBUF_POOL →PBUF_RAM
将 ALTCP_MBEDTLS_RNG_FN 块替换为以下内容以使用真实的熵发生器:
#ifndef ALTCP_MBEDTLS_RNG_FN
extern int EnetApp_getEntropy (void *ctx、unsigned char *buffer、size_t len);
#define ALTCP_MBEDTLS_RNG_FN EnetApp_getEntropy
#endif
5) lwIP 栈 makefile–缺少 mDNS 和 TLS 文件
文件:source/networking/lwip/makefile.stack_freertos.am243x.r5f.ti-arm-clang
在 files_common 下、添加所需的 mDNS 源:
mDNS out.c
mdns_domain.c
另外、还应添加缺少的 TLS 源:
altcp_tls_mbedtls.c
6) Percepio Tracealyzer / FreeRTOS 跟踪–包括构建所需的路径
为了集成 Percepio Tracealyzer 支持(FreeRTOS 跟踪)、我必须添加以下包含路径;否则 SDK 无法构建。
文件:
- source/networking/enet/makefile.lwipif-ic-freertos.am243x.r5f.ti-arm-clang
- source/networking/enet/makefile.lwipif-cpsw-freertos.am243x.r5f.ti-arm-clang
- source/networking/enet/makefile.lwipif-icssg-freertos.am243x.r5f.ti-arm-clang
- source/networking/lwip/makefile.contrib-Freertos.am243x.r5f.ti-arm-clang
- source/networking/lwip/makefile.stack_freertos.am243x.r5f.ti-arm-clang
添加到 INCLUDES_COMMON:
-i${MCU_PLUS_SDK_PATH}/source/kernel/freertos/config/am243x/r5f \
-i${MCU_PLUS_SDK_PATH}/source/kernel/freertos/FreeRTOS-Kernel/include \
-i${MCU_PLUS_SDK_PATH}/source/kernel/freertos/portable/TI_ARM_CLANG/ARM_CR5F \
开发环境
- MCU+ SDK:11.00.00.15
- 编译器:TI ARM CLANG 4.0.4 LTS
- SysConfig:1.26.0
- CCS:20.40
- 器件:AM2434 (Cortex-R5F 0-0)