F28379D烧写双核程序(在线&离线)

  • 文章信息
  • 开发环境
  • 烧写双核程序前需知
  • 1. 在线
    • 1.1 编译烧写CPU1程序到F28379D中
    • 1.2 编译CPU2程序,把生成的``.out``文件加载到CPU2中
    • 1.3 运行双核程序
  • 2. 离线
    • 2.1 对CPU1烧写FLASH
    • 2.2 对CPU2烧写FLASH
    • 2.3 小结
  • 维护日志
  • 参考资料

文章信息

撰写日期 2018.11.21
完稿日期 2018.11.21
最近维护 2018.11.30
本文作者 multimicro
联系方式 multimicro@qq.com

开发环境

环境说明 详细信息 备注信息
操作系统 Win10_x64
CCS版本 Code Composer Studio v8 官网地址
controlSUITE controlSUITE for C2000 MCUs 官网地址
F28379D C2000 Delfino MCU F28379D LaunchPad™ development kit 官网地址

烧写双核程序前需知

在分别对F28379D的CPU1和CPU2两个核进行烧写程序时,需要在CCS中建立两个工程,独立编写两个核的程序。如controlSUITE中提供的双核程序例程:

1. 在线

1.1 编译烧写CPU1程序到F28379D中

1.2 编译CPU2程序,把生成的.out文件加载到CPU2中

选中上图中红色框框中的Texas Instruments XDS100v2 USB Debug Probe_0/C28xx_CPU2 (Disconnected:Unknown),右键点击Connect Target连接上CPU2,如图:

选定CPU2,在CCS菜单栏中选择"Run -> Load -> Load Program..."弹窗中选择编译好的CPU2的.aout文件


点击ok烧录进去即可。

1.3 运行双核程序


上图中可以看出,Debug选项中选定的是CPU2,所以这个时候,点击播放按钮就是运行CPU2内的程序,若在Debug选项中选定的是CPU1,再次点击播放就是运行CPU1内的程序。

2. 离线

离线就涉及到烧写FLASH了,这个时候就需要更改一些配置了。
首先看一张图:

从图中可以看出,F28379D的CPU1和CPU2是各自配有一套FLASH、RAM和ROM在烧录烧程时两个核实分别烧写到自己所属下的存储位置去的,烧写程序的地方是没有共用部分的,双核之间的数据传输有一个专门的RAM供交换数据(黑色箭头所指的)。

2.1 对CPU1烧写FLASH

对于F28379D的离线烧写有两种模式,一种是FLASH,另一种是FLASH_STANDALONE(见下图)
FLASH:支持CPU1离线运行程序
FLASH_STANDALONE:支持CPU1离线运行程序,并可通过IPC控制启动CPU2
对于CPU1,如图:

通过以上步骤设置为FLASH_STANDALONE模式

编译后烧录即可。不要点击运行
注意,由于是烧写FLASH,所以一定要保证在烧写时不要干扰开发板,否则会容易导致烧写失败,造成FLASH锁定!

2.2 对CPU2烧写FLASH

对CPU1烧写完FLASH后不要运行,紧接着把cpu2的程序也配置为FLASH模式:
CPU2的FLASH只有一种,没有STANDALONE模式

编译后生成.out文件即可

然后仿照在线烧写CPU2程序的套路把这个.out文件烧写进去即可
烧写完的界面如下:

全部烧写完不要点击运行,正确的顺序是点击红色的按钮断开连接,然后给开发板断电,上电后开发板就会运行双核CPU里面的程序。此时的CPU2就是通过IPC机制被CPU1控制启动的。

板子的启动模式一定为从FLASH启动哦!
Tip:
若对CPU2设置为FLASH模式后,直接点击小虫子烧写FLASH,则会出现以下错误:
C28xx_CPU2: Error occurred during flash operation: No core matches the pattern 'CPU1'
所以,一定要通过load的方式烧写CPU2的FLASH程序

2.3 小结

以上是TI在controlSUITE中提供的例程,涉及到自己建立的工程脱机运行时,需要自己手动配置cmd文件和进行预定义了,不过既然你能撸到双核开发,想必脱机步骤你应该可以搞定的!
多说一下,在选择不同的模式时,在Predefined Symbols下会有不同的预定义,这个是CPU1的程序,预定义中有CPU1,那么CPU2的程序中就应该有CPU2

在这里感谢TI e2echina社区里面的两位工程师提供的帮助,给我提供了一些帮助,让我少走了很多弯路,感谢!

维护日志

维护日期 维护内容
2018.11.30 加入在对CPU2烧写FLASH时的错误操作

参考资料

  1. F28379D CPU2烧写FLASH
  2. F28379D双核程序调试问题
  3. C2000 One-Day Workshop
  4. F28379D所涉及的各种官方文档

F28379D烧写双核程序(在线离线)相关推荐

  1. SEGGER J-Flash 烧写stm32程序

    SEGGER J-Flash烧写stm32程序 1. 创建工程 2. 下载文件 3. 读回文件 stm32单片机编程常用开发工具有MDK.IAR.STM32Cube系列等.但是等到开发完成之后,转交生 ...

  2. 如何利用J-Link烧写进行程序烧写

    1.准备工作 1.1硬件准备 准备一个烧写器,如下图所示 1.2软件准备 需要JLink软件安装包和驱动,如下图所示 JLink_652e.rar为软件安装包,ST-LINK_V2.zip为驱动文件 ...

  3. 迅为4412开发板一键烧写QT程序到开发板

    之前我们写好一个程序,都是先交叉编译完,然后在通过 nfs/tftp 或者其他的方法拷贝到开发板,然后在手动执行,如果我们调试程序很频繁,那我们每次都重新拷贝到开发板,那这样就太麻烦了,有没有方便一点 ...

  4. STC双串口单片机无法烧写下载程序原因,普中开发箱,STC12C5A60S2

    我用的是普中科技的开发箱,用STC-ISP下载线直接连到P3.0和P3.1针脚下载程序,发现无法下载程序的原因是开发箱的P3.0和P3.1是与DB9串口相连的,由J-RXD和J-TXD两个跳线控制,烧 ...

  5. 嵌入式烧写裸机程序的bin文件

    嵌入式烧写裸机程序的bin文件 常见的烧写bin文件的硬件工具有JLink.ST-Link.eop来烧写bin文件. 这里介绍采用oflash软件烧写bin文件 oflash是支持S3C2410/S3 ...

  6. 在TI DSP开发板中烧写Flash程序

    实现在FLASH存储器烧写程序一般有以下三种方法:一是通过编程器下载烧写:二是通过开发商提供的专门软件工具+在线仿真器烧写:三是自己编程通过DSP烧写.个人使用的是合众达电子SEED-VPM642开发 ...

  7. 暴力更改hex文件实现自动烧写stm32程序

    STM32自动化烧写 目的与适用范围 项目已经固定,每次烧写程序只会更改很少量的信息.比如设备编号,日期等信息,但每台设备这些信息都是不相同的. 每次更改设备必须打开keil更改编号,再次编译,烧写, ...

  8. NK-RTU980烧写裸机程序

    详细使用说明请参考官方用户手册NUC980 NuWriter User Manual EN. 一.编译example代码 1.安装编译工具 编译ARM9的代码需要用到MDK Plus 或是Profes ...

  9. GEC210 烧写裸机程序到SD卡、flash

    主机平台:Linux CentOS 6.5 arm平台:粤嵌GEC210开发板(S5PV210) 注:以下方法与S5PV210的启动流程有关,具体请参考"S5PV210_UM_REV1.1& ...

最新文章

  1. 删除所有数据_mysql数据库操作——数据库的增删改查
  2. 测试用例的设计方法(三)
  3. c语言如何实现不定参数,C语言中不定参数的实现
  4. Python添加模块路径
  5. Python3实现文件名排序
  6. 渗透测试为什么要重基础、重实践?
  7. elasticsearch -- 问题纪录
  8. 锂离子电池容量保持率和容量恢复率
  9. 方正飞腾4.0视频教程
  10. 观 小楼老师Axure /得
  11. 我的“五一”特价机票是从爬虫手里买的
  12. 什么是服务器虚拟化,虚拟化的优势!
  13. sql 查询本月请假的人数_温故而知新---学习SQL练习作业
  14. Jquery实现即点即改
  15. 3G入门教程--通讯基础
  16. 常规工具类:GeneralUtils.java
  17. 【创意编程】《无限》:宇宙、三体、星云和轨迹
  18. 通过实例理解Go逃逸分析
  19. 电脑桌面便签如何设置每月提醒便签事项?
  20. html开发核心display、overflow、position

热门文章

  1. 解决百度云非限速版本被封下载问题
  2. 连续七年 领跑未来丨山石网科入选Gartner 2020网络防火墙魔力象限
  3. excel链接隐藏工作表_在Excel 2007和2010中隐藏和取消隐藏工作表和工作簿
  4. Nagios监控服务器与客户端的安装
  5. 【Zookeeper】ZK 是干什么的?
  6. 谁痛苦谁改变 落到谷底时,唯一的出口就是向上
  7. Principal Component Analysis 主成分分析 【学习笔记】
  8. 人工智能:智慧环保(上海AI智慧环保,绿色新时代)
  9. 高中python编程例题-Python进入高中教学
  10. micropython复现经典单片机项目(一)旋转立方块