搜索
bottom↓
回复: 8

烧写程序部分组成

[复制链接]

出0入0汤圆

发表于 2011-4-26 12:54:19 | 显示全部楼层 |阅读模式
如下图

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2011-4-26 12:56:07 | 显示全部楼层

1。code memory 2。data memory  3。memory分别代表什么啊 (原文件名:memory.jpg)

出0入0汤圆

 楼主| 发表于 2011-4-26 12:57:17 | 显示全部楼层
小弟在写程序的时候 已经重新擦写了很多flash块  那程序又是下载到哪里呢

出0入0汤圆

发表于 2011-4-26 12:59:05 | 显示全部楼层
code memory 就是你的程序烧进430以后要占用的FLASH字节数,
data memory 就是你的程序运行过程中要使用的RAM字节数,CONST memory我也不太清楚

出0入0汤圆

 楼主| 发表于 2011-4-26 13:09:19 | 显示全部楼层

我找到这个 (原文件名:2.jpg)

出0入0汤圆

发表于 2011-4-26 13:21:53 | 显示全部楼层
//
// This file should be used with the MSP430F149 microprocessor.
//
// Copyright 1996-2007 IAR Systems. All rights reserved.
//
// Usage:  xlink your_file(s) -f lnk430f149 library
//
// $Revision: 5305 $
//
//*****************************************************************

//*****************************************************************
//
// The memory areas of the MSP430F149 microprocessor:
//
//   Peripheral units:                0 - 01FF
//
//   Information memory (FLASH):   1000 - 10FF
//
//   Read-write memory (RAM):      0200 - 09FF
//
//   Read-only memory (FLASH):     1100 - FFDF
//                                 
//
//*****************************************************************

//*****************************************************************
//
// The following segments are defined in this linker command file:
//
// Data read/write segments (RAM)
// ==============================
//
// segment     Restrictions    Usage
// -------     ------------    --------------------------
// DATA16_I    < 10000         Data16 initialized variables
// DATA16_Z    < 10000         Data16 zero initialized variables
// DATA16_N    < 10000         Data16 uninitialized variables
// DATA16_HEAP < 10000         Data16 heap used by malloc and free
// DATA20_I                    Data20 initialized variables
// DATA20_Z                    Data20 zero initialized variables
// DATA20_N                    Data20 uninitialized variables
// DATA20_HEAP                 Data20 heap used by malloc and free
// CSTACK      < 10000         Runtime stack
//
//
// Program and data read-only segments (FLASH)
// ===========================================
//
// segment     Restrictions    Usage
// -------     ------------    --------------------------
// INFO                        Information memory
// CSTART      < 10000         Program startup code
// CODE                        Program code
// ISR_CODE    < 10000         Program code for interrupt service routines
// DATA16_C    < 10000         Data16 constant data and string literals
// DATA16_ID   < 10000         Data16 initializers for DATA16_I
// DATA20_C                    Data20 constant data and string literals
// DATA20_ID                   Data20 initializers for DATA20_I
// DIFUNCT     < 10000         Dynamic initialization vector used by C++
// CHECKSUM                    Checksum byte(s) generated by the -J option
// INTVEC      FFE0-FFFF       Interrupt vectors
// RESET       FFFE-FFFF       The reset vector
//
//*****************************************************************


// ---------------------------------------------------------
// Stack and heap sizes.
// ---------------------------------------------------------

// Uncomment for command line use
//-D_STACK_SIZE=80
//-D_DATA16_HEAP_SIZE=80


// ---------------------------------------------------------
// Define cpu.
// ---------------------------------------------------------

-cmsp430


// ---------------------------------------------------------
// Read-write memory.
// ---------------------------------------------------------

-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,DATA16_HEAP+_DATA16_HEAP_SIZE=0200-09FF
-Z(DATA)CSTACK+_STACK_SIZE#


// ---------------------------------------------------------
// Read only memory


// ---------------------------------------------------------
// Information memory
// ---------------------------------------------------------

-Z(CODE)INFO=1000-10FF
-Z(CODE)INFOA=1080-10FF
-Z(CODE)INFOB=1000-107F



// ---------------------------------------------------------
// Constant data
// ---------------------------------------------------------

-Z(CONST)DATA16_C,DATA16_ID,DIFUNCT,CHECKSUM=1100-FFDF


// ---------------------------------------------------------
// Code
// ---------------------------------------------------------

-Z(CODE)CSTART,ISR_CODE=1100-FFDF
-P(CODE)CODE=1100-FFDF


// ---------------------------------------------------------
// Interrupt vectors
// ---------------------------------------------------------

-Z(CODE)INTVEC=FFE0-FFFF
-Z(CODE)RESET=FFFE-FFFF


// ---------------------------------------------------------
// The end
// ---------------------------------------------------------

出0入0汤圆

发表于 2011-4-26 13:25:51 | 显示全部楼层
上面是149的数据地址定义。

路径为
C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\430\config

data memory   Read-write memory (RAM):      0200 - 09FF

code memory   Read-only memory (FLASH):     1100 - FFDF

const memory  Read-only memory (FLASH):     1100 - FFDF

也就是说:
1、RAM字节数为data memory
2、FLASH字节数(所谓的程序量)为code memory+
const memory

出0入0汤圆

 楼主| 发表于 2011-4-29 20:09:17 | 显示全部楼层
回复【6楼】liuzq1981
-----------------------------------------------------------------------

哦 谢谢 但是我现在想把flash当做EEPROM用 是不是只有Information的512字节能用啊?

出0入0汤圆

发表于 2011-4-29 20:46:07 | 显示全部楼层
不是, information 和 code 都可以用来保存数据, 只不过是用code部分的时候实现要确定你要保存数据的段没有被程序代码使用,

在information 和code中保存数据我都测试过没问题的
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-19 05:04

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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