关于STM32里面的sram内存分配的问题

[复制链接]
7296|12
 楼主| liugen21cn 发表于 2012-5-3 16:42 | 显示全部楼层 |阅读模式
大家好,碰到一个问题想和大家讨论下,
我用的stm32芯片内存是20KB,对应的地址0000-4fff 现在想从中分配出一段内存来做缓冲区4000(起始)-4fff(结束)。要的是绝对地址,和寄存器地址一样的那种。请问如何分配。求指导
 楼主| liugen21cn 发表于 2012-5-3 16:44 | 显示全部楼层
在线等。呵呵
 楼主| liugen21cn 发表于 2012-5-3 16:52 | 显示全部楼层
我看书中其他的寄存器定义是这样的:
那串口举例:
先定义对应的结构体
在通过给出基址,
但是自定义sram这样不知道行不行,我试了不对。
typedef struct
{
  vu16 SR;
  u16  RESERVED0;
  vu16 DR;
  u16  RESERVED1;
  vu16 BRR;
  u16  RESERVED2;
  vu16 CR1;
  u16  RESERVED3;
  vu16 CR2;
  u16  RESERVED4;
  vu16 CR3;
  u16  RESERVED5;
  vu16 GTPR;
  u16  RESERVED6;
} USART_TypeDef;
#define PERIPH_BASE           ((u32)0x40000000)
#define APB2PERIPH_BASE       (PERIPH_BASE + 0x10000)
#define USART1_BASE           (APB2PERIPH_BASE + 0x3800)
#define USART1              ((USART_TypeDef *) USART1_BASE)
 楼主| liugen21cn 发表于 2012-5-3 17:00 | 显示全部楼层
stm32如何静态分配内存。请教。。
 楼主| liugen21cn 发表于 2012-5-3 17:15 | 显示全部楼层
唉,我陷入误区了,上个厕所解决问题了,看来以后多上厕所。
解决办法:
#include <absacc.h>
u8 MyText[255] __at (SRAM_BASE+0x4000);
分还是留给我自己了。呵呵
aozima 发表于 2012-5-3 19:35 | 显示全部楼层
唉,我陷入误区了,上个厕所解决问题了,看来以后多上厕所。
解决办法:
#include  
u8 MyText[255] __at (SRAM_BASE+0x4000);
分还是留给我自己了。呵呵
liugen21cn 发表于 2012-5-3 17:15

原理? 下次换个工具后如何解决?
 楼主| liugen21cn 发表于 2012-5-5 15:44 | 显示全部楼层
7# coolRFHU **很不错,谢谢,准备打印出来细细品味
panzhenlkj 发表于 2012-7-20 10:54 | 显示全部楼层
4# liugen21cn
panzhenlkj 发表于 2012-7-20 10:55 | 显示全部楼层
您好,我也在弄SRAM分配的问题,,能请教下么?
panzhenlkj 发表于 2012-7-20 10:55 | 显示全部楼层
您好,我也在弄SRAM分配的问题,,能请教下么?
panzhenlkj 发表于 2012-7-20 10:55 | 显示全部楼层
您好,我也在弄SRAM分配的问题,,能请教下么?
panzhenlkj 发表于 2012-7-20 10:57 | 显示全部楼层
您好,我也在弄SRAM分配的问题,,能请教下么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

41

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部