Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Menuconfig
如何裁剪一个最简单的系统?
发布于 2019-02-14 16:45:29 浏览:4214
订阅该版
如题,通过menuconfig配置,只需要有任务调度和进程间通讯即可。使用flash和RAM尽量小些。自己配的系统老是挂掉。。。。
查看更多
13
个回答
默认排序
按发布时间排序
yangjie
认证专家
2019-02-14
hello
可以直接用nano啊,参考文档:[https://www.rt-thread.org/document/site/tutorial/nano/mdk/gd0004-nano-mdk/](https://www.rt-thread.org/document/site/tutorial/nano/mdk/gd0004-nano-mdk/)
aloiter
2019-02-14
这家伙很懒,什么也没写!
>可以直接用nano啊,参考文档:https://www.rt-thread.org/document/site/tutorial/nano/mdk/gd0004-nano-md ... --- 感谢回复。 公司不能用keil,只好在完整版上先裁剪一个,想着后续需要其他功能的可以方便添加。
水清沙白
2019-02-14
这家伙很懒,什么也没写!
你用的什么平台,STM32吗?首先你需要熟悉一下KConfig和SCons的语法,为了减小内存的话可以把Finsh和文件系统以及其他除UART之外的驱动关了,以及网络和LIBC等,然后重新生成工程。这个时候应该很小了,会带着UART的驱动,现在的一些BSP里,UART关了确实是需要单独处理一下。
aloiter
2019-02-15
这家伙很懒,什么也没写!
>你用的什么平台,STM32吗?首先你需要熟悉一下KConfig和SCons的语法,为了减小内存的话可以把Finsh和文件系 ... 感谢回复。 我用的是stm32。我个人的理解是,使用menuconfig去disable相关的功能,如果编译正常的话,运行应该是没问题的吧?我测试,只要使能finsh组件,就可以正常运行;disable就会出现hard fault handler,如下: ``` \ | / - RT - Thread Operating System / | \ 4.0.0 build Feb 14 2019 2006 - 2018 Copyright by rt-thread team psr: 0x01000000 r00: 0x00000004 r01: 0x20000550 r02: 0x20000550 r03: 0x00000004 r04: 0x00000001 r05: 0xfffbffff r06: 0xda6e7a5e r07: 0x2000019c r08: 0xfdfefffe r09: 0xbffbfeff r10: 0x51675ea2 r11: 0x75edcaa7 r12: 0xffffdfff lr: 0x08004a5f pc: 0x08004980 hard fault on handler ``` uart可以留着,毕竟调试方便。
水清沙白
2019-02-15
这家伙很懒,什么也没写!
>感谢回复。 我用的是stm32。我个人的理解是,使用menuconfig去disable相关的功能,如果编译正常的话,运 ... 你的理解没有问题,确实是Disable某个功能就行,看看是否是组件自动初始化被关了。 STM32具体哪个系列,是否参照了Github上的某个BSP,这样好定位一些。 我昨天用了F103的试了一下,没有问题,Finsh可以单独关闭。 或者单步调试一下,ST的片子调试还是很方便的,我比较怀疑组件自动初始化被关掉了。
aloiter
2019-02-15
这家伙很懒,什么也没写!
>你的理解没有问题,确实是Disable某个功能就行,看看是否是组件自动初始化被关了。 STM32具体哪个系列, ... 组件自动初始化没有关掉。用的是STM32f103RCT6,我去找个同款的BSP吧。 现在不能用keil,gcc+stlink,主要靠串口看。。。。
Ernest
2019-02-15
这家伙很懒,什么也没写!
>感谢回复。 我用的是stm32。我个人的理解是,使用menuconfig去disable相关的功能,如果编译正常的话,运 ... 使用stm32 建议使用rt-thread cubeMX nano,直接生成工程了 [文档链接](https://www.rt-thread.org/document/site/tutorial/nano/cube/gd0005-nano-mx5/)
aloiter
2019-02-15
这家伙很懒,什么也没写!
>使用stm32 建议使用rt-thread cubeMX nano,直接生成工程了 文档链接 https://www.rt-thread.org/documen ... 感谢回复。不大想用nano,后续可能要加其他功能。
aloiter
2019-02-15
这家伙很懒,什么也没写!
找了一圈,模式在线程切换的时候挂点了。 commit bb8e89e85159fad4b64275ca028b36acb363e7f3。 以下是:rtconfig.h,可以使用的版本,只是disable finsh就挂掉。 ```c #ifndef RT_CONFIG_H__ #define RT_CONFIG_H__ /* Automatically generated file; DO NOT EDIT. */ /* RT-Thread Project Configuration */ /* RT-Thread Kernel */ #define RT_NAME_MAX 8 /* RT_USING_SMP is not set */ #define RT_ALIGN_SIZE 4 /* RT_THREAD_PRIORITY_8 is not set */ #define RT_THREAD_PRIORITY_32 /* RT_THREAD_PRIORITY_256 is not set */ #define RT_THREAD_PRIORITY_MAX 32 #define RT_TICK_PER_SECOND 100 /* RT_USING_OVERFLOW_CHECK is not set */ /* RT_USING_HOOK is not set */ #define RT_USING_IDLE_HOOK #define RT_IDEL_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 256 /* RT_USING_TIMER_SOFT is not set */ /* RT_DEBUG is not set */ /* Inter-Thread communication */ #define RT_USING_SEMAPHORE #define RT_USING_MUTEX #define RT_USING_EVENT #define RT_USING_MAILBOX #define RT_USING_MESSAGEQUEUE /* RT_USING_SIGNALS is not set */ /* Memory Management */ #define RT_USING_MEMPOOL /* RT_USING_MEMHEAP is not set */ /* RT_USING_NOHEAP is not set */ #define RT_USING_SMALL_MEM /* RT_USING_SLAB is not set */ /* RT_USING_MEMTRACE is not set */ #define RT_USING_HEAP /* Kernel Device Object */ #define RT_USING_DEVICE /* RT_USING_DEVICE_OPS is not set */ /* RT_USING_INTERRUPT_INFO is not set */ #define RT_USING_CONSOLE #define RT_CONSOLEBUF_SIZE 128 #define RT_CONSOLE_DEVICE_NAME "uart2" #define RT_VER_NUM 0x40000 #define ARCH_ARM #define ARCH_ARM_CORTEX_M #define ARCH_ARM_CORTEX_M3 /* ARCH_CPU_STACK_GROWS_UPWARD is not set */ /* RT-Thread Components */ #define RT_USING_COMPONENTS_INIT /* RT_USING_USER_MAIN is not set */ /* C++ features */ /* RT_USING_CPLUSPLUS is not set */ /* Command shell */ #define RT_USING_FINSH #define FINSH_THREAD_NAME "tshell" #define FINSH_USING_HISTORY #define FINSH_HISTORY_LINES 5 #define FINSH_USING_SYMTAB #define FINSH_USING_DESCRIPTION /* FINSH_ECHO_DISABLE_DEFAULT is not set */ #define FINSH_THREAD_PRIORITY 20 #define FINSH_THREAD_STACK_SIZE 4096 #define FINSH_CMD_SIZE 80 /* FINSH_USING_AUTH is not set */ #define FINSH_USING_MSH #define FINSH_USING_MSH_DEFAULT /* FINSH_USING_MSH_ONLY is not set */ #define FINSH_ARG_MAX 10 /* Device virtual file system */ /* RT_USING_DFS is not set */ /* Device Drivers */ #define RT_USING_DEVICE_IPC #define RT_PIPE_BUFSZ 512 #define RT_USING_SERIAL /* RT_SERIAL_USING_DMA is not set */ /* RT_USING_CAN is not set */ /* RT_USING_HWTIMER is not set */ /* RT_USING_CPUTIME is not set */ /* RT_USING_I2C is not set */ #define RT_USING_PIN /* RT_USING_ADC is not set */ /* RT_USING_PWM is not set */ /* RT_USING_MTD_NOR is not set */ /* RT_USING_MTD_NAND is not set */ /* RT_USING_MTD is not set */ /* RT_USING_PM is not set */ /* RT_USING_RTC is not set */ /* RT_USING_SDIO is not set */ /* RT_USING_SPI is not set */ /* RT_USING_WDT is not set */ /* RT_USING_AUDIO is not set */ /* Using WiFi */ /* RT_USING_WIFI is not set */ /* Using USB */ /* RT_USING_USB_HOST is not set */ /* RT_USING_USB_DEVICE is not set */ /* POSIX layer and C standard library */ /* RT_USING_LIBC is not set */ /* RT_USING_PTHREADS is not set */ /* Network */ /* Socket abstraction layer */ /* RT_USING_SAL is not set */ /* light weight TCP/IP stack */ /* RT_USING_LWIP is not set */ /* Modbus master and slave stack */ /* RT_USING_MODBUS is not set */ /* AT commands */ /* RT_USING_AT is not set */ /* VBUS(Virtual Software BUS) */ /* RT_USING_VBUS is not set */ /* Utilities */ /* RT_USING_LOGTRACE is not set */ /* RT_USING_RYM is not set */ /* RT_USING_ULOG is not set */ /* RT_USING_UTEST is not set */ /* ARM CMSIS */ /* RT_USING_CMSIS_OS is not set */ #define RT_USING_RTT_CMSIS /* RT_USING_LWP is not set */ /* RT-Thread online packages */ /* IoT - internet of things */ /* PKG_USING_PAHOMQTT is not set */ /* PKG_USING_WEBCLIENT is not set */ /* PKG_USING_MONGOOSE is not set */ /* PKG_USING_WEBTERMINAL is not set */ /* PKG_USING_CJSON is not set */ /* PKG_USING_JSMN is not set */ /* PKG_USING_LJSON is not set */ /* PKG_USING_EZXML is not set */ /* PKG_USING_NANOPB is not set */ /* Wi-Fi */ /* Marvell WiFi */ /* PKG_USING_WLANMARVELL is not set */ /* Wiced WiFi */ /* PKG_USING_WLAN_WICED is not set */ /* PKG_USING_COAP is not set */ /* PKG_USING_NOPOLL is not set */ /* PKG_USING_NETUTILS is not set */ /* PKG_USING_AT_DEVICE is not set */ /* PKG_USING_WIZNET is not set */ /* IoT Cloud */ /* PKG_USING_ONENET is not set */ /* PKG_USING_GAGENT_CLOUD is not set */ /* PKG_USING_ALI_IOTKIT is not set */ /* PKG_USING_AZURE is not set */ /* security packages */ /* PKG_USING_MBEDTLS is not set */ /* PKG_USING_libsodium is not set */ /* PKG_USING_TINYCRYPT is not set */ /* language packages */ /* PKG_USING_LUA is not set */ /* PKG_USING_JERRYSCRIPT is not set */ /* PKG_USING_MICROPYTHON is not set */ /* multimedia packages */ /* PKG_USING_OPENMV is not set */ /* PKG_USING_MUPDF is not set */ /* tools packages */ /* PKG_USING_CMBACKTRACE is not set */ /* PKG_USING_EASYFLASH is not set */ /* PKG_USING_EASYLOGGER is not set */ /* PKG_USING_SYSTEMVIEW is not set */ /* PKG_USING_RDB is not set */ /* system packages */ /* PKG_USING_GUIENGINE is not set */ /* PKG_USING_CAIRO is not set */ /* PKG_USING_PIXMAN is not set */ /* PKG_USING_LWEXT4 is not set */ /* PKG_USING_PARTITION is not set */ /* PKG_USING_FAL is not set */ /* PKG_USING_SQLITE is not set */ /* PKG_USING_RTI is not set */ /* PKG_USING_LITTLEVGL2RTT is not set */ /* PKG_USING_CMSIS is not set */ /* PKG_USING_DFS_YAFFS is not set */ /* peripheral libraries and drivers */ /* PKG_USING_REALTEK_AMEBA is not set */ /* PKG_USING_SHT2X is not set */ /* PKG_USING_AHT10 is not set */ /* PKG_USING_AP3216C is not set */ /* PKG_USING_STM32_SDIO is not set */ /* PKG_USING_ICM20608 is not set */ /* PKG_USING_U8G2 is not set */ /* miscellaneous packages */ /* PKG_USING_LIBCSV is not set */ /* PKG_USING_OPTPARSE is not set */ /* PKG_USING_FASTLZ is not set */ /* PKG_USING_MINILZO is not set */ /* PKG_USING_QUICKLZ is not set */ /* PKG_USING_MULTIBUTTON is not set */ /* PKG_USING_CANFESTIVAL is not set */ /* PKG_USING_ZLIB is not set */ /* PKG_USING_DSTR is not set */ /* sample package */ /* samples: kernel and components samples */ /* PKG_USING_KERNEL_SAMPLES is not set */ /* PKG_USING_FILESYSTEM_SAMPLES is not set */ /* PKG_USING_NETWORK_SAMPLES is not set */ /* PKG_USING_PERIPHERAL_SAMPLES is not set */ /* example package: hello */ /* PKG_USING_HELLO is not set */ #define SOC_STM32F1 /* BSP_USING_I2C is not set */ /* RT_USING_UART1 is not set */ #define RT_USING_UART2 /* RT_USING_UART3 is not set */ /* RT_USING_UART4 is not set */ #endif ```
水清沙白
2019-02-15
这家伙很懒,什么也没写!
>找了一圈,模式在线程切换的时候挂点了。 commit bb8e89e85159fad4b64275ca028b36acb363e7f3。 你这用的哪个BSP呀,iot_board? 裁剪不干净呀,明显还有很多packager相关的,和Driver相关的,没关彻底,这样就很容易出问题了。
撰写答案
登录
注册新账号
关注者
0
被浏览
4.2k
关于作者
aloiter
这家伙很懒,什么也没写!
提问
1
回答
11
被采纳
0
关注TA
发私信
相关问题
1
关于env工具中menuconfig的操作介绍问题
2
关于env工具中menuconfig的操作介绍问题
3
env工具输入menuconfig报错
4
关于ENV使用过程中无法运行menuconfig命令
5
menuconfig后运行pkgs --updateb出现的错误
6
运行menuconfig命令报错
7
使用env工具进行menuconfig配置时遇到了问题!!
8
menuconfig -s命令为啥是无法识别的?
9
env中无法识别menuconfig命令
10
使用menuconfig配置组件后编译问题
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
STM32H7R7运行CherryUSB
2
RT-Smart首次线下培训,锁定2024 RT-Thread开发者大会!
3
使用RC522软件包驱动FM1722
4
常量数据类型和表达式陷阱分享
5
进行i2c驱动移植的经验总结
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
freemodbus
PWM
flash
cubemx
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
中断
编译报错
Debug
SFUD
rt_mq_消息队列_msg_queue
msh
keil_MDK
ulog
C++_cpp
MicroPython
本月问答贡献
踩姑娘的小蘑菇
4
个答案
1
次被采纳
红枫
4
个答案
1
次被采纳
张世争
4
个答案
1
次被采纳
Ryan_CW
4
个答案
1
次被采纳
xiaorui
1
个答案
1
次被采纳
本月文章贡献
catcatbing
3
篇文章
5
次点赞
qq1078249029
2
篇文章
2
次点赞
xnosky
2
篇文章
1
次点赞
Woshizhapuren
1
篇文章
5
次点赞
YZRD
1
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部