你好
我愿意使用亚马逊-freertos的posix库,位于:https://github.com/aws/amazon-freertos它与freertos 10打包在一起,而DA1468x SDK与freertos 8打包在一起。
是否有可用的路线图指示是否/何时计划升级?
先谢谢你
圣
嗨bobspam@free.fr,
我们正致力于DA1468x SDK中对FreeRTOS 10的支持。预计发布时间为2019年第二季度。
谢谢,PM_Dialog
谢谢你的回答。很高兴知道,但我不能等6个月。
我用10个文件替换了大部分的FreeRTOS 8文件。编译的新版本与POSIX库从亚马逊最终是ok的,如果:- ARM_C0/port.c和portmacro.h没有更新。(新版本实现了Thumb-2,最终导致一些编译错误)——激活configSUPPORT_STATIC_ALLOCATION。main.c中必须包含以下语句:https://www.freertos.org/a00110.html#configSUPPORT_STATIC_ALLOCATION#define configIDLE_TASK_STACK_SIZE 60(图60已经被报告在其他Cortex-M0项目中使用)
我结束了建设目标:FreeRTOS_Demo.elf调用:交叉ARM C连接器[...]c:/program files (x86)/diasemi/ smartsnippetstudio /gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: FreeRTOS_Demo. exe:精灵节”。bss'不适合区域' RAM'c:/program files (x86)/diasemi/ smartsnippetstudio /gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region RAM overflow with stackc:/program files (x86)/diasemi/smartsnippetsstudio/gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region ' RAM'溢出864字节
意思是我需要清理SDK通过删除未使用的功能…
未完待续
因为它已经在宝贵的帖子中提到,目前不支持。不过,很高兴你用10个文件替换了大部分的FreeRTOS 8文件,谢谢你的提示。
嗨PM_Dialog,
几天后的工作
DA14683 SDK可以成功编译arm-non -eabi-gcc version 15:6.3.1+svn253039-1build1在Ubuntu LTS 18.0.4的标准中交付。编译器的默认配置被破坏,但是自制的Makefilenostdlib激活编译和链接最终工作。—以下顺序必须手动链接:“crt0”。o crti。o crtbegin。o [-L路径][用户对象][gcc libs] [C libs] [gcc libs]o crtn。o(感谢Gentoo论坛:https://dev.gentoo.org/~vapier/crt.txt).这个序列在Eclipse环境中似乎没有正确设置。检查;因为似乎使用了一些系统头文件,并且在尝试使用amazon POSIX库时发生了重新定义。
-亚马逊仓库中的FreeRTOS文件可以“原样”使用,以替代SDK中交付的V8V8 ARM_C0/port.c和portmacro.h仍然必须使用,因为实现了DA1468x的低级特性#define configSUPPORT_STATIC_ALLOCATION 1(添加了main.c的函数)见前面)#define configUSE_POSIX_ERRNO 1必须添加到FreeRTOSConfig.h一些头文件的相对路径将被清理,以避免使用V8头文件-删除V10 mpu_wrapper .h中的PRIVILEDGE_DATA重定义-从其他目标使用空的FreeRTOS_POSIX_portable.h
-来自amazon仓库的POSIX文件可以添加到项目中,并按原样编译。
freertos_retarget使用这个配置可以很好地在USB dev工具包上工作。
在继续之前,我仍然需要检查amazon的POSIX实现,但所有这些听起来都很成熟,可以使用,所以您应该考虑向前推进,并将其纳入SDK。POSIX库是在linux下实现软件原型并将其引入嵌入式系统的一种非常有效的方法。
未完待续……
我确认SDK中嵌入的FreeRTOS 8和亚马逊维护的FreeRTOS 10之间没有重大区别。
移植ARM_C0/port.c和portmacro.h很简单。源代码是相同的,只有一个例外,在汇编部分的开始部分,FreeRTOS 10启用了Thumb2的使用。
我确认它很容易工作,POSIX适配层也在工作。pthread_create就可以了。
堆消耗更高,因此必须检查内存映射,必须激活“堆栈溢出”和“malloc失败”钩子以进行适当的调试。
Amazon版本缺少pthread_cancel函数来正确执行服务析构函数。对于不是设计为关闭的系统,这应该不是关键。
致以最亲切的问候
谢谢你的提示。
你好,
pthread的Amazon实现为创建的线程使用非常低级别的堆栈内存。必须使用Pthread_attr_t通过手动设置每个线程的堆栈大小来获得整个系统的正确行为。
我还确认互斥锁和消息队列也可以工作。条件变量和信号量仍有待测试。
亚马逊的软件还附带了很多其他的好东西——MQTT——PKCS11- - - - - - TLS
DA1468x的下一个版本可能是256k的内存:-)
谢谢
嗨bobspam@free.fr,
我们正致力于DA1468x SDK中对FreeRTOS 10的支持。预计发布时间为2019年第二季度。
谢谢,PM_Dialog
你好
谢谢你的回答。很高兴知道,但我不能等6个月。
我用10个文件替换了大部分的FreeRTOS 8文件。编译的新版本与POSIX库从亚马逊最终是ok的,如果:
- ARM_C0/port.c和portmacro.h没有更新。(新版本实现了Thumb-2,最终导致一些编译错误)
——激活configSUPPORT_STATIC_ALLOCATION。main.c中必须包含以下语句:
https://www.freertos.org/a00110.html#configSUPPORT_STATIC_ALLOCATION
#define configIDLE_TASK_STACK_SIZE 60(图60已经被报告在其他Cortex-M0项目中使用)
我结束了
建设目标:FreeRTOS_Demo.elf
调用:交叉ARM C连接器
[...]
c:/program files (x86)/diasemi/ smartsnippetstudio /gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: FreeRTOS_Demo. exe:精灵节”。bss'不适合区域' RAM'
c:/program files (x86)/diasemi/ smartsnippetstudio /gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region RAM overflow with stack
c:/program files (x86)/diasemi/smartsnippetsstudio/gcc/4_9-2015q3/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: region ' RAM'溢出864字节
意思是我需要清理SDK通过删除未使用的功能…
未完待续
嗨bobspam@free.fr,
因为它已经在宝贵的帖子中提到,目前不支持。不过,很高兴你用10个文件替换了大部分的FreeRTOS 8文件,谢谢你的提示。
谢谢,PM_Dialog
嗨PM_Dialog,
几天后的工作
DA14683 SDK可以成功编译arm-non -eabi-gcc version 15:6.3.1+svn253039-1build1在Ubuntu LTS 18.0.4的标准中交付。编译器的默认配置被破坏,但是自制的Makefilenostdlib激活编译和链接最终工作。
—以下顺序必须手动链接:“crt0”。o crti。o crtbegin。o [-L路径][用户对象][gcc libs] [C libs] [gcc libs]o crtn。o(感谢Gentoo论坛:https://dev.gentoo.org/~vapier/crt.txt).这个序列在Eclipse环境中似乎没有正确设置。检查;因为似乎使用了一些系统头文件,并且在尝试使用amazon POSIX库时发生了重新定义。
-亚马逊仓库中的FreeRTOS文件可以“原样”使用,以替代SDK中交付的V8
V8 ARM_C0/port.c和portmacro.h仍然必须使用,因为实现了DA1468x的低级特性
#define configSUPPORT_STATIC_ALLOCATION 1(添加了main.c的函数)见前面)
#define configUSE_POSIX_ERRNO 1必须添加到FreeRTOSConfig.h
一些头文件的相对路径将被清理,以避免使用V8头文件
-删除V10 mpu_wrapper .h中的PRIVILEDGE_DATA重定义
-从其他目标使用空的FreeRTOS_POSIX_portable.h
-来自amazon仓库的POSIX文件可以添加到项目中,并按原样编译。
freertos_retarget使用这个配置可以很好地在USB dev工具包上工作。
在继续之前,我仍然需要检查amazon的POSIX实现,但所有这些听起来都很成熟,可以使用,所以您应该考虑向前推进,并将其纳入SDK。POSIX库是在linux下实现软件原型并将其引入嵌入式系统的一种非常有效的方法。
未完待续……
你好
我确认SDK中嵌入的FreeRTOS 8和亚马逊维护的FreeRTOS 10之间没有重大区别。
移植ARM_C0/port.c和portmacro.h很简单。源代码是相同的,只有一个例外,在汇编部分的开始部分,FreeRTOS 10启用了Thumb2的使用。
我确认它很容易工作,POSIX适配层也在工作。
pthread_create就可以了。
堆消耗更高,因此必须检查内存映射,必须激活“堆栈溢出”和“malloc失败”钩子以进行适当的调试。
Amazon版本缺少pthread_cancel函数来正确执行服务析构函数。对于不是设计为关闭的系统,这应该不是关键。
致以最亲切的问候
嗨bobspam@free.fr,
谢谢你的提示。
谢谢,PM_Dialog
你好,
pthread的Amazon实现为创建的线程使用非常低级别的堆栈内存。
必须使用Pthread_attr_t通过手动设置每个线程的堆栈大小来获得整个系统的正确行为。
我还确认互斥锁和消息队列也可以工作。
条件变量和信号量仍有待测试。
亚马逊的软件还附带了很多其他的好东西
——MQTT
——PKCS11
- - - - - - TLS
DA1468x的下一个版本可能是256k的内存:-)
谢谢