一.让CCS软件支持Flash烧写

  添加F28335.cmd文件

  如图屏蔽掉25335_RAM_lnk.cmd

  2.支持从Flash中拷贝文件到RAM中

  添加DSP2832x_MemCopy.c

  在主函数中添加 代码:MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart); 三个入口参数定义如下:

  1. // 下面参数是在链接脚本中定义的。具体看F28335.cmd
  2. extern Uint16 RamfuncsLoadStart;
  3. extern Uint16 RamfuncsLoadEnd;
  4. extern Uint16 RamfuncsRunStart;
  1. SECTIONS
  2. {
  3.  
  4. /* Allocate program areas: */
  5. .cinit : > FLASHA PAGE =
  6. .pinit : > FLASHA, PAGE =
  7. .text : > FLASHA PAGE =
  8. codestart : > BEGIN PAGE = 0
      /*三个变量在这个位置申明*/
  9. ramfuncs : LOAD = FLASHD,
  10. RUN = RAML0,
  11. LOAD_START(_RamfuncsLoadStart),
  12. LOAD_END(_RamfuncsLoadEnd),
  13. RUN_START(_RamfuncsRunStart),
  14. PAGE =
  15.  
  16. csmpasswds : > CSM_PWL PAGE =
  17. csm_rsvd : > CSM_RSVD PAGE =
  18.  
  19. /* Allocate uninitalized data sections: */
  20. .stack : > RAMM1 PAGE =
  21. .ebss : > RAML4 PAGE =
  22. .esysmem : > RAMM1 PAGE =
  23.  
  24. /* Initalized sections go in Flash */
  25. /* For SDFlash to program these, they must be allocated to page 0 */
  26. .econst : > FLASHA PAGE =
  27. .switch : > FLASHA PAGE =
  28.  
  29. /* Allocate IQ math areas: */
  30. IQmath : > FLASHC PAGE = /* Math Code */
  31. IQmathTables : > IQTABLES, PAGE = , TYPE = NOLOAD
  32.  
  33. /* Uncomment the section below if calling the IQNexp() or IQexp()
  34. functions from the IQMath.lib library in order to utilize the
  35. relevant IQ Math table in Boot ROM (This saves space and Boot ROM
  36. is 1 wait-state). If this section is not uncommented, IQmathTables2
  37. will be loaded into other memory (SARAM, Flash, etc.) and will take
  38. up space, but 0 wait-state is possible.
  39. */
  40. /*
  41. IQmathTables2 : > IQTABLES2, PAGE = 0, TYPE = NOLOAD
  42. {
  43.  
  44. IQmath.lib<IQNexpTable.obj> (IQmathTablesRam)
  45.  
  46. }
  47. */
  48.  
  49. FPUmathTables : > FPUTABLES, PAGE = , TYPE = NOLOAD
  50.  
  51. /* Allocate DMA-accessible RAM sections: */
  52. DMARAML4 : > RAML4, PAGE =
  53. DMARAML5 : > RAML5, PAGE =
  54. DMARAML6 : > RAML6, PAGE =
  55. DMARAML7 : > RAML7, PAGE =
  56.  
  57. /* Allocate 0x400 of XINTF Zone 7 to storing data */
  58. ZONE7DATA : > ZONE7B, PAGE =
  59.  
  60. /* .reset is a standard section used by the compiler. It contains the */
  61. /* the address of the start of _c_int00 for C Code. /*
  62. /* When using the boot ROM this section and the CPU vector */
  63. /* table is not needed. Thus the default type is set here to */
  64. /* DSECT */
  65. .reset : > RESET, PAGE = , TYPE = DSECT
  66. vectors : > VECTORS PAGE = , TYPE = DSECT
  67.  
  68. /* Allocate ADC_cal function (pre-programmed by factory into TI reserved memory) */
  69. .adc_cal : load = ADC_CAL, PAGE = , TYPE = NOLOAD
  70.  
  71. }

  调用falsh初始化函数,使flash工作在等待状态: InitFlash(); 。应为Flash在写的时候才需要解锁,读的时候不用解锁。所以可以吧初始化放在拷贝的后面。

二、下载 .out文件到目标板

  通过添加配置文件,在下载时多了擦除flash的操作。点击load按钮就可以讲程序下载到flash 中去了。(注意将启动设置为从外部flash中启动)

  

TMS320F28335——下载程序到flash中的更多相关文章

  1. [原创] Keil uVision5 下载程序 add flash programming algorithm选项缺少需要的算法解决办法

    MDK开发环境从V4升级到V5后,支持包不再是集成到开发环境当中,而是封装在PACK中,需要自行安装,比较麻烦. 搭建MDK开发环境以及破解的方法,在前面的文章中有详细说明,这里不再赘述,有兴趣的可以 ...

  2. 在U-Boot中添加自定义命令以实现自动下载程序【转】

    本文转载自:https://gaomf.cn/2016/06/26/%E5%9C%A8U-Boot%E4%B8%AD%E6%B7%BB%E5%8A%A0%E8%87%AA%E5%AE%9A%E4%B9 ...

  3. 在SRAM、FLASH中调试代码的配置方法(附详细步骤)

    因为STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试.除此之外,SRAM 存储器的写入速度比在内部 FLASH 中要 ...

  4. 如何通过Keil将程序正确的下载进flash中

    前面介绍了一些创建工程和调试的基本步骤,在这里准备介绍一下如何正确的将Keil程序在仿真调试中下载到flash.这里再次涉及到了debug的窗口.   工具/原料   Keil uVision 4/5 ...

  5. 程序在nor flash中真的可以运行吗?

    程序在nor flash中可以运行,但是是有限制的,它不能像RAM那样随意的写(尽管它可以随意的读).在norflash上,不能运行写存储器的指令,不过排除写的地方是RAM类.实验中的三个文件如下所示 ...

  6. 单片机程序在内存和FLASH中的空间分配

    本文转载于的tietao的博客!!!http://blog.csdn.net/tietao/article/details/8172411 *******防止自己忘记,固备之. 一句话:基于速度问题, ...

  7. Kinetis Design Studio 下使用J-Link下载程序

    1.安装J-Link驱动. 在KDS安装目录下已自带J-Link驱动,进入以下目录(以我的为例): C:\Freescale\KDS_1.1.1\segger\USBDriver 将看到CDC.x64 ...

  8. 如何使用串口来给STM32下载程序

    前言 第一次学习STM32的时候,不知道有调试器这个东西,所以一直是通过串口来给STM32下载程序,下载速度也还算可以,一般是几秒钟完成.后来用了调试器,可以直接在Keil环境下进行下载,而且还可以进 ...

  9. 第3章 如何用DAP仿真器下载程序

    第3章     如何用DAP仿真器下载程序 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/f ...

随机推荐

  1. 使用 XSLT 显示 XML

    通过使用 XSLT,您可以向 XML 文档添加显示信息. 使用 XSLT 显示 XML XSLT 是首选的 XML 样式表语言. XSLT (eXtensible Stylesheet Languag ...

  2. No 'Configuration' method was found in class 'WebApp.Startup

    The following errors occurred while attempting to load the app.- No 'Configuration' method was found ...

  3. prometheus-pushgateway安装

    背景 当prometheus的server与target不在同一网段网络不通,无法直接拉取target数据,需要使用pushgateway作为数据中转点. 弊端 将多个节点数据汇总到 pushgate ...

  4. Jmeter -- 上下文关联(JSON提取器)

    目标: 将请求A响应数据的部分内容提取出来,保存成变量供后续请求使用(用在返回格式为json的HTTP请求中) 步骤: 1. 添加JSON Extractor后置处理器 add --> post ...

  5. was安装相关步骤(Linux)

    本次试验目的主要对websphere 二次内部解剖对中间件性能优化垫铺. 1.准备相关文件 其中 iso文件为WAS主要镜像文件(WAS文件所在地) Instalmgr为IBM安装引导程序instal ...

  6. fedora14 - 22安装yum源的最终所有唯一文档

    yum的配置包括3个地方 /etc/yum中主要是yum的插件: /etc/yum/pluginconf.d 目录下配置yum的插件的启用或禁用等... /etc/yum.conf这个是yum的主要配 ...

  7. python3 导入模块

    python3导入模块和python2  有些不同   需要指定相对目录 如,在Project下有一个nlp目录里面有一个ltp模块,则 from n1.ltp import Clawer

  8. Git-Runoob:Git 创建仓库

    ylbtech-Git-Runoob:Git 创建仓库 1.返回顶部 1. Git 创建仓库 本章节我们将为大家介绍如何创建一个 Git 仓库. 你可以使用一个已经存在的目录作为Git仓库. git ...

  9. Shiro 学习

    <转载于 凯涛 博客> Shiro目录 第一章  Shiro简介 第二章  身份验证 第三章  授权 第四章  INI配置 第五章  编码/加密 第六章  Realm及相关对象 第七章  ...

  10. CSS3——注释 id 和 class 选择器 css创建(外部、内部、内联样式表)

    注释 /*         注释内容          */ id 和 class 选择器 id   ID属性不要以数字开头,数字开头的ID在 Mozilla/Firefox 浏览器中不起作用 < ...