TI中文支持网
TI专业的中文技术问题搜集分享网站

28377串口烧写的步骤

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

yulin li:

回复 Eric Ma:

好 我先看看 谢谢

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

yulin li:

回复 Eric Ma:

发现烧写速度比较慢,啥原因。

一直在提示加载内核中,内核文件的大小并没有那么大吧。我的波特率是用9600。我这个串口的是转了USB的,是否这种硬件设计在串口烧写数据传输的时候会增加很大的延迟?我看英文版的论坛上有人提到,会跟收发器有关。 

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

HH Y:

回复 yulin li:

参考我在这个帖子的回复,不过那是F28035的,不知有多大差别。你说的延迟是不存在的,烧录速度也不慢,尤其是内核,例程的内核根本不是烧录,只是载入内存,程序又小,根本不花时间,只是下载完了要等待几秒钟,等待内核程序完全启动,例程里好像是等待了5秒。这些例程,不知是我眼拙,还是确实如此,反正光靠这个是不能正常使用的,于真正意义上的“远程更新“也是很难满足需求的。

http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/p/123613/346487.aspx#346487

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

yulin li:

回复 HH Y:

步骤都是一样的。就是烧写内核进去,然后烧写应用程序。用的都是基于vc上位机,它这个上位机根据命令行格式选择相应的设备。

后来我发现问题是我的底板串口的管脚映射和TI默认的不一样,这个有点奇怪,然后我根据手册内容,在相关寄存器(地址0XD000)里面修改,发现在调试下模式能下更改boot mode ,它这个SCI Boot mode分两组管脚。我改成了另外一组。【断电重启这个地址是不是不能更改的?只能在仿真模式下进行了?】然后 串口通讯正常了,烧写正常,但是烧写成功后一直卡在启动过程。 

我觉得TI的这个串口烧写 和boot rom的开发有点绕 觉得不方便用 其实我是想后面做CAN烧写的 

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

HH Y:

回复 yulin li:

我说的和例程是很大区别的,我没有烧录内核进去,内核是直接烧录在单片机的一个段上,这么做的目的就是为了不用配置引脚去选择启动模式。

你这么说,我倒确实想起一个问题,启动SCI,接收了内核程序后,内核是存在RAM中的,那么如何让单片机运行这段内核?硬件重启是不可能的,难道是把引脚配置回去就可以?我当初就因为需要配置引脚启动所以不考虑照搬例程,就没尝试过运行它,这个事情还真没想过。不过就跟我在那个帖子中 说的,光看这几个零碎的例程还是不行的,可能真的需要自己手工让单片机重启一下??

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

yulin li:

回复 HH Y:

那我明白你的意思了。 所以这么一说,它这几个例程还是不能直接用。我觉得TI的这个东西拐弯拐得太多了。如果在远程控制里面,人为去的拨动拨码开关啊或者重启硬件是不是不太合适。那么每个不同的硬件设计都要自己设计烧写方案了吗,通用性略差。

我考虑了一下,你这个方案做起来还是相对简单。

因为我接下面的硬件设计限制不能用GPIO BOOT MODE模式,都是默认FLASH启动,所以我想是不是在应用程序里面,接受命令,然后在应用程序里面烧写。自己再做个上位机程序。

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

user4314562:

回复 Eric Ma:

Eric Ma 你好

我有几个问题:

1.使用上位机软件serial_flash_programmer.exe 把TXT格式的目标文件传送到CPU里面,这种情况下,BOOT MODE是不是要配置为SCI,即GPIO72=0,GPIO84=1?如果是这样的话,不就与GPIO84、85作为SCI的RX、TX冲突了嘛?

2.如果我想要用F2837xD_sci_flash_kernels这个例程俩烧写程序,如何操作呢,可以列一下烧写步骤嘛?

3.TI官方有提供关于bootrom例程吗?我在D:\Softwares\CCSv6.2\controlSUITE\libs\utilities\boot_rom\F2837x_revb找到的相关例程用不了,例程有错误。

看了很多您的对相关问题的回答,还是无从下手。

谢谢!

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

Eric Ma:

回复 user4314562:

1.使用上位��软件serial_flash_programmer.exe 把TXT格式的目标文件传送到CPU里面,这种情况下,BOOT MODE是不是要配置为SCI,即GPIO72=0,GPIO84=1?如果是这样的话,不就与GPIO84、85作为SCI的RX、TX冲突了嘛?

Eric: 不冲突,BOOT mode配置的GPIO口,只是在上电后,芯片跑到ROM里面的引导代码判断这两个脚的电平,判断过去,进入对应的引导模式,这两个脚的功能就释放了。

2.如果我想要用F2837xD_sci_flash_kernels这个例程俩烧写程序,如何操作呢,可以列一下烧写步骤嘛?

Eric: 查看这个路径C:\ti\controlSUITE\device_support\~Utilities\serial_flash_programmer

这个例程是TI做的SCI bootloader算法,即利用boot mode,将芯片配置成SCI boot模式,然后通过PC端的上位机软件serial_flash_programmer.exe 将这个kernel写进RAM中,kernel接管后续flash烧写的工作, 它将烧写对应的用户程序。

3.TI官方有提供关于bootrom例程吗?我在D:\Softwares\CCSv6.2\controlSUITE\libs\utilities\boot_rom\F2837x_revb找到的相关例程用不了,例程有错误。

ERIC: BOOTROM例程里面,应该也只是如何利用串口,将kernel接收后放到RAM而已,然后运行。

如果你要在线升级的功能,可以看我之间发过的F28M35的例子。如果接收BOOT MODE设置IO口这种模式的话,那就用第2点的这个就好。

http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/121859.aspx

看了下TI提供的FLASH烧写文档《Serial Flash Programming of C2000™ Microcontrollers 》

貌似我理解的不是很清楚? 首先是要在C++编译那个应用程序,然后通过命令行输入命令? 我现在生成我要的.TXT文件,比如说LED,那怎么将LED.TXT加载到CPU呢?这个FLASH内核的作用还不是很理解。以前的2000是用上位机烧写的。那么我现在是不是可以通过TI提供的应用程序来做啊? 还有没其他资料可以看的。

或者请教下TI工程师,比较细致的步骤。

yanjie Cao:

回复 Eric Ma:

Eric:

  我想用serial_flash_programmer.exe对TMS280f28034进行串口烧录,关于你说的kernel,我在controlSUITE中找不到,不知道该如何弄到kernel,如果你那边有TMS280f28034现成的文件,可否给我一份?

赞(0)
未经允许不得转载:TI中文支持网 » 28377串口烧写的步骤
分享到: 更多 (0)