F28379D烧写双核程序(在线&离线)
烧写双核程序前需知
在分别对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
原文:https://blog.csdn.net/multimicro/article/details/84328254
F28379D烧写双核程序(在线&离线)的更多相关文章
- 1_jz2440在linux下烧写裸机程序
常用的烧写方法有: 1.使用并口工具烧写:接线(参考百问网JZ2440V2开发板使用手册),使用oflash烧写(速度比较慢),可烧写.bin文件,从新上电观察效果.可烧写u_boot. 2.使用op ...
- MDK972-EK开发板裸调试设置和裸机程序烧写(转)
硬件平台:MDK972-EK开发板编译调试软件:KEIL uVision4仿真工具:JLINK V7/V8 本例子从串口输出信息,如图: KEIL uVision4调试设置如图所示: ...
- CC3200底板测试-烧写CC3200-LAUNCHXL
1. 拿到板子,先研究一下几个跳线帽的作用.我在底板上测到VCC_DCDC_3V3和VCC_BRD之间应该有一个跳线帽的,但是在原理上找不到. 2. LED灯的用途,测试的时候,发现这个灯有时候亮,有 ...
- jz2440烧写方法笔记
1,jz2440用dnw烧写普通程序的步骤是: ①选择将uboot烧写到nor flash或者是nand flash中 ②打开dnw,选择要烧写的程序,注意不是uboot,是你要烧写的程序,他将所有的 ...
- 【DM642学习笔记四】flash烧写过程——错误记录…
(欢迎批评指正) 一,打开.cdd配置文件时出错: 解决:在FlashBurn配置窗口中,Conversion Cmd一栏可不用管: 菜单Program—Download FBTC,load ...
- 利尔达CC3200模块烧写程序笔记
1. 硬件使用利尔达的CC3200模块,仿真下载器使用利尔达的FTDI仿真器,硬件完全兼容官方的仿真器.仿真器支持IAR的调试,单步运行等操作. 2. 硬件连接接线说明: RXD, TXD, GNG, ...
- 【DSP开发】TMS320C66x DSP SPI Nor Flash的程序烧写
经过一段时间的研究终于把TMS320C6657单核和双核的SPI Nor Flash的程序烧写调通了.工具都是前辈的工作,有需要的可以留下邮箱,我有空可以发. 原理参考钱丰的<TI c66x 系 ...
- STM32用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain现象和解决方案
现象 CPU: STM32107VC 用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain 如图无法查找到硬件就是CPU 提示1:NO Cortex ...
- 走进STM32世界之Hex程序烧写
多数51单片机(STC系列单片机)的初学者都知道,在51单片机初上电时,可以通过PC机上位机软件将程序引导至bootloader,从而将新程序的hex文件下载至单片机中,完成程序的升级或是更新.在32 ...
随机推荐
- opencv中对图像的像素操作
1.对灰度图像的像素操作: #include<iostream> #include<opencv2/opencv.hpp> using namespace std; using ...
- Echarts 背景渐变柱状图
var dom = document.getElementById("container"); var myChart1 = echarts.init(dom); var app ...
- SSM框架的简单搭建
转:https://blog.csdn.net/zhshulin/article/details/37956105 Spring+SpringMVC+MyBatis spring : 4. ...
- oracle 用户被锁定解锁方法
修改了用户密码,第二天过来发现用户被锁定,晚上走的时候还好好的 . alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED; alter ...
- 掌握OpenStack部署的最佳实践 打破部署失败的魔咒
部署OpenStack环境并不是一项简单的任务:根据SUSE最近的调查显示“曾经部署过OpenStack的企业当中有一半都失败了”.然而,随着最佳实践的出现,企业可以使用其避免在部署OpenStack ...
- 起始授权机构(SOA)
起始授权机构 编辑 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 起始授权机构,SOA(Start Of Authority):该记录表明DNS名称服务器是DNS域中的数据 ...
- web自动化测试,定位不到元素的原因及解决方案(持续更新中2018年9月29日)
主要讲自己在实战中遇到的坑: 1.动态id定位不到元素 分析原因:每次打开页面,ID都会变化.用ID去找元素,每次刷新页面ID都会发生变化. 解决方案:推荐使用xpath的相对路径方法或者cssSel ...
- python 学习分享-实战篇高级的ftp
#server代码 import socketserver,os,hashlib Base_paht = os.path.dirname(os.path.dirname(os.path.abspath ...
- NGUI注册事件的三种方式
1.第一种方式 当一个元素要执行某个方法,而这个方法在此元素赋予的脚本上有,那么直接会调用此方法,但此方法的名称必须是内置的固定名称,例如OnClick,OnMouseOver,OnMouseOut等 ...
- 重现ssd遇到的问题
首先是create_list.sh和create_data.sh中的data_dir的路径得修改. 然后是在create_data.sh文件调用$caffe_root下的scripts目录中的crea ...