OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2135|回复: 7

sd卡fatfs移植,一写f_open就报内存不足

[复制链接]

0

主题

3

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2020-6-28
在线时间
14 小时
发表于 2017-1-21 20:59:16 | 显示全部楼层 |阅读模式
1金钱
请问原子哥,这是咋回事?我都卡在这一步5天了。。。。。。。至今没有解决
写这一句没事f_mount(&fs,"0",1);
但是只要一写res=f_open(&fil,"0wl.txt",FA_CREATE_ALWAYS|FA_READ);
就报:
*** Using Compiler 'V5.06 update 4 (build 422)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'Target 1'
compiling main.c...
linking...
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching cc936.o(.constdata).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.find_volume).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.create_name).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_Init).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.f_open).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.put_fat).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.dir_register).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_gpio.o(i.GPIO_Init).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.dir_next).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_WriteMultiBlock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.get_fat).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.dir_find).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching system_stm32f10x.o(i.SetSysClockTo72).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.inc_lock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.create_chain).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_WriteSingleBlock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.gen_numname).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.follow_path).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SPI_SetSpeed).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.cmp_lfn).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.dir_sdi).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.check_fs).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.chk_lock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_SendCommand).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.fit_lfn).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_ReceiveData).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching cc936.o(i.ff_convert).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_ReadMultiBlock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(i.main).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_SendCommand_NoDeassert).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.remove_chain).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching system_stm32f10x.o(i.SystemInit).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.f_mount).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.dir_alloc).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching cc936.o(i.ff_wtoupper).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching owl.o(i.RCC_HSE_Configuration).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.sync_window).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.get_ldnumber).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_DeInit).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_HSEConfig).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_ReadSingleBlock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_GetFlagStatus).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_spi.o(i.SPI_Init).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SPI_Configuration).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_WaitForHSEStartUp).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching owl.o(i.delay_ms).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SPI_ReadWriteByte).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.move_window).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.clear_lock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching diskio.o(i.disk_read).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching diskio.o(i.disk_write).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.enq_lock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(i.SD_WaitReady).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.mem_cmp).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching startup_stm32f10x_md.o(.text).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(i.GPIO_Configuration).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.ld_clust).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.sum_sfn).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_PLLConfig).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(i.RCC_Configuration).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.clust2sect).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.mem_cpy).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_HCLKConfig).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_PCLK1Config).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_PCLK2Config).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_SYSCLKConfig).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_spi.o(i.SPI_Cmd).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.chk_chr).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.mem_set).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_spi.o(i.SPI_I2S_GetFlagStatus).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_GetSYSCLKSource).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching diskio.o(i.disk_initialize).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(i.st_clust).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching ff.o(.constdata).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(i.RCC_PLLCmd).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching system_stm32f10x.o(i.SetSysClock).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_spi.o(i.SPI_I2S_ReceiveData).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching diskio.o(i.disk_status).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_gpio.o(i.GPIO_ResetBits).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_gpio.o(i.GPIO_SetBits).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_spi.o(i.SPI_I2S_SendData).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.BusFault_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.HardFault_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.MemManage_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.UsageFault_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching diskio.o(i.get_fattime).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.DebugMon_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.NMI_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.PendSV_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.SVC_Handler).
.\Objects\Project1.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_it.o(i.SysTick_Handler).
.\Objects\Project1.axf: Error: L6407E: Sections of aggregate size 0x2d63c bytes could not fit into .ANY selector(s).
Not enough information to list image symbols.
Not enough information to list the image map.
Finished: 2 information, 0 warning and 93 error messages.
".\Objects\Project1.axf" - 93 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed:  00:00:01


最佳答案

查看完整内容[请看2#楼]

减少数组就可以啦,减少对内存占用
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-1-21 20:59:17 | 显示全部楼层
减少数组就可以啦,减少对内存占用
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2020-6-28
在线时间
14 小时
 楼主| 发表于 2017-1-21 21:03:06 | 显示全部楼层
原子哥这是源文件

SPI_DMA.rar

3.83 MB, 下载次数: 75

回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2017-1-22 10:20:35 | 显示全部楼层
内存确实不足,改程序吧。别想了,用内存管理,貌似你要改的地方很多。不用那个函数keil会把用不到的数组优化掉的,所以会出现你说的情况
我有故事,你有酒吗
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2020-6-28
在线时间
14 小时
 楼主| 发表于 2017-1-26 18:39:45 | 显示全部楼层
正点原子 发表于 2017-1-21 20:59
减少数组就可以啦,减少对内存占用

可是我那里面没有数组呀
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2020-6-28
在线时间
14 小时
 楼主| 发表于 2017-2-5 20:24:27 | 显示全部楼层
这么厉害的论坛竟然没人能解决,等了这么长时间了都
回复

使用道具 举报

2

主题

31

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
395
金钱
395
注册时间
2016-8-18
在线时间
147 小时
发表于 2017-7-1 11:37:24 来自手机 | 显示全部楼层
改大堆栈空间
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2020-12-23
在线时间
1 小时
发表于 2020-12-24 15:41:29 | 显示全部楼层
会不会是FATFS 里面CODE PAGE 开了简体中文...
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-24 09:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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