前进的每一步,都是学习,是成长。
Keil C中常量在CODE区定位的方法
  • 首页 > 嵌入式系统 > 系统与软件设计
  • 作者:最爱香茗
  • 2018年5月17日 20:27 星期四
  • 浏览:1094
  • 字号:
  • 评论:0
  • 有时候编程需要把某些常定位在固定的位置,如USB编程时,要提供一个USB序列号可变功能(可通过PC端软件修改序列号的),就需要把序列号存在一个可知的固定位置,以便修改.
    方法如下:
    1.先新建一个SerialNumber.c的文件,把序列号定义在这里.
    如:
    code const unsigned char Serial [22]=
            {
               STR0LEN, 0x03,
               'D', 0,
               'Y', 0,
               'T', 0,
               '-', 0,
               'C', 0,
               'D', 0,
               'R', 0,
               '0', 0,
               '0', 0,
               '0', 0,
               '1', 0
            }; // End of String0Desc

    2.执行一次编译操作,然后打开项目输出的.m51文件,在里边的* * * C O D E M E M O R Y * * *下可找到:CODE    xxxxH     xxxxH     UNIT         ?CO?SERIALNUMBER,然后在:Project->Options for Target ...->BL51 Locate:Code中填入:?CO?SERIALNUMBER(0x3A00)(假设定位在0X3A00开始).
    3.再次编译,然后再打开.m51文件看看,就会有一行是:CODE    3A00H     003AH     UNIT         ?CO?SERIALNUMBER,说明已经定位在03A00地址开始的位置了.
     

     

      您阅读这篇文章共花了:  
    二维码加载中...
    本文作者:最爱香茗      文章标题: Keil C中常量在CODE区定位的方法
    本文地址:http://www.gcsjl8.com/?post=14
    版权声明:若无注明,本文皆为“成长记忆”原创,转载请保留文章出处。