This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于Flash的地址问题

Other Parts Discussed in Thread: MSP430F5438A

我使用的是MSP430F5438A,查看用户手册上面感觉不是很明白,问题有以下几点:

1、他的Flash空间为256kb+512b Flash,那么他的Flash范围是00000-40200吗?

2、比如我往里面写程序,他的起始编程地址是多少?

3、还有信息存储器(infomation)是于主存储器可编写地址挨着的吗,还是中间有插入一些中断向量或其他的东西。

非常感谢你们回答我的问题!谢谢。

  • 你可以在你的程序编译好了之后看debug或者release文件夹里的 .map文件。、

    下面是我随便开的,每个设备不一样。

             name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      SFR                   00000000   00000010  00000000  00000010  RWIX
      PERIPHERALS_8BIT      00000010   000000f0  00000000  000000f0  RWIX
      PERIPHERALS_16BIT     00000100   00000100  00000000  00000100  RWIX
      INFOD                 00001800   00000080  00000000  00000080  RWIX
      INFOC                 00001880   00000080  00000000  00000080  RWIX
      INFOB                 00001900   00000080  00000000  00000080  RWIX
      INFOA                 00001980   00000080  00000000  00000080  RWIX
      USBRAM                00001c00   00000800  00000000  00000800  RWIX
      RAM                   00002400   00002000  000006f7  00001909  RWIX
      FLASH                 00004400   0000bb80  00000bde  0000afa2  RWIX
      INT00                 0000ff80   00000002  00000000  00000002  RWIX
      INT01                 0000ff82   00000002  00000000  00000002  RWIX
      INT02                 0000ff84   00000002  00000000  00000002  RWIX

    ...

      INT62                 0000fffc   00000002  00000002  00000000  RWIX
      RESET                 0000fffe   00000002  00000002  00000000  RWIX
      FLASH2                00010000   00014400  00002a82  0001197e  RWIX

    ...

    1、他的Flash空间为256kb+512b Flash,那么他的Flash范围是00000-40200吗?

    你可看上面的FLASH 和FLASH2 , 我这个F5529的Flash地址是 0x4400~FF80   和 0x10000 ~ 0x24400 两段。

    2、比如我往里面写程序,他的起始编程地址是多少?

    ,map里面有你每个函数的地址,比如我这个 0x4400位置存的就是 TimerA0_Initial 的中断函数.

    .text:_isr
    *          0    00004400    00000310     
                      00004400    0000018c     TimerA0_Initial(PWM In).obj (.text:_isr:TIMER0_A1_ISR)

    3、还有信息存储器(infomation)是于主存储器可编写地址挨着的吗,还是中间有插入一些中断向量或其他的东西。

    是挨着的 0x1800~0x2000

      INFOD                 00001800   00000080  00000000  00000080  RWIX
      INFOC                 00001880   00000080  00000000  00000080  RWIX
      INFOB                 00001900   00000080  00000000  00000080  RWIX
      INFOA                 00001980   00000080  00000000  00000080  RWIX

    中断向量看INT00~INT62 ,是FF80~FFFC