msp430经典问题及解答:BSL下载.doc

上传人:仙人指路1688 文档编号:2392453 上传时间:2023-02-17 格式:DOC 页数:7 大小:216.50KB
返回 下载 相关 举报
msp430经典问题及解答:BSL下载.doc_第1页
第1页 / 共7页
msp430经典问题及解答:BSL下载.doc_第2页
第2页 / 共7页
msp430经典问题及解答:BSL下载.doc_第3页
第3页 / 共7页
msp430经典问题及解答:BSL下载.doc_第4页
第4页 / 共7页
msp430经典问题及解答:BSL下载.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《msp430经典问题及解答:BSL下载.doc》由会员分享,可在线阅读,更多相关《msp430经典问题及解答:BSL下载.doc(7页珍藏版)》请在三一办公上搜索。

1、msp430经典问题及解答:BSL下载1 MPS430可以串口下载程序吗?能不能公开一些简单的下载程序电路图。 答:我想BSL下载方式和你所需要的方式比较接近。MSP430 (除了MSP430G2xx1)内部都预置了BSL程序,允许用户通过指定口线下载程序(通常是P1.1,P2.2)。BSL协议和工具电路都是网上公开的。请参考下面的连接:MSP430 Programming Via the Bootstrap Loader Users Guide2 请问怎么样让CCS6.0生成*.txt的下载文件,便于用BSL写进入,之前用CCS生成的*.hex文件无法用BSL下载。软件说格式不对。希望大家帮

2、助解答一下,谢谢。 答:CCS中,右键点击工程,点击属性,弹出属性对话框如下,选择CCS Build下的Steps,中间的Apply Predefined Step下拉框选择Create flash image:TI-TXT,点击OK即可在debug文件夹里面生成txt文件。cc6下生成txt文件的方法可参考下面链接:3 不是说information A页是锁定的吗,锁定后无法被擦除,我在程序里使了一下确实擦除不了,但是用了BSL后,一旦密码验证错误,BSL就会把FLASH全部擦除,导致information A页的信息丢失,怎么保护information A页呢?还有我的informatio

3、n A页信息全部擦除,怎么恢复啊,是不是这块芯片就废了呀? 答:segment A可以通过LOCKA bit进行单独保护,当LOCKA=1时,不允许被写操作或者擦除。另外LOCKA是通过写1进行toggle的,对其直接下0是无效的。信息擦除肯定是恢复不了。芯片可以继续使用。4 想了解一下MSP430G2553的BSL功能与MSP430F2132的BSL有什么区别?G2x53的BSL下载软件的是什么?在利尔达的430工具软件选项内找不到MSP430G系列的性能强点的支持型号。 答:MSP430G系列 有部分型号有BSL。其中MSP430G2553支持。TI官方的BSL烧录工具是MSP-GANG、

4、烧录软件是MSP-GANG Programmer。另外,也可以使用另一颗MCU烧录MSP430G2553。关于MSP430 BSL文献:5 我司正在开发MSP430F5438A的产品。遇到以下几点问题,请帮忙解答。1). 430的BSL除了下载程序外,可以用来做串口通信吗?还是说只有在BSL mode下,对应的pin才能是串口的功能,其它时候,无法用作串口功能实现与上位机通信?2). 出于对产品的内代码的保护目的,请问430有哪些机制保证我的软件安全吗?包括不能被读取出二进制文件。 答:5438A的BSL引脚为P1.1和P1.2,他们是定时器模块的脚,不是uart模块的脚。换句话说,BSL串口

5、功能是通过定时器模拟来实现的,那么问题1的回答应该是BSL的管脚在非BSL模式下也可以做串口功能来用,但是不是使用的真正的串口模块,而是要通过定时器模拟来实现。如果要使用5438A自带的硬件uart,这两个管脚是不行的。 430对代码的保护主要有这两个方面:1)对于JTAG/SBW,可以通过将熔丝熔断的方法。熔断之后JTAG/SBW完全被disable,也就是切断了通过JTAG/SBW读取片内代码的可能;2)对于BSL,对代码的读取需要先向BSL发送32个字节的密码,该密码就是片内程序的中断向量表的值。换句话说,只要你自己不将片内程序的二进制代码给别人,别人是不会知道中断向量表里的内容的,也就

6、无法通过BSL执行读取flash内容的操作。6 请问更新MSP430F5529单片机BSL的方法?以MSP-EXP430F5529LP这个开发板为例,其USB连接到PC后,PC端直接运行BSL_Scripter.exe 就可以了么?我运行后显示:Hit Unknown Command 。感觉是操作的问题,缺少什么步骤,能提供一下操作说明么?先谢谢了。 答:对于USB的BSL,TI有提供专门的上位机工具,在下面链接中:http:/software-下载下面这个软件MSP430_USB_Firmware_Upgrade_Example-1.3.0-Setup.exe7 求助: MSP430F541

7、8 BSL烧入时报错。 硬件平台: MSP430F5418 BSL工具: TI官方 slau319c提供的附件中的 BSL_Scripter.exe script 脚本: MODE 543x_family COM6 MASS_ERASE RX_PASSWORD CHANGE_BAUD_RATE 57600 RX_DATA_BLOCK Ver6.03.txt 结果: 前面几条命令正常处理,RX时提示 FAIL writing data block starting at 0x7370。Debug跟踪看,BSL返回的代码是0x06: Byte Write Forbidden. This error

8、 is returned when a byte write is attempted in a flash area将cpu换成5418A, 使用以下script:MODE 5xx COM6 MASS_ERASE RX_PASSWORD CHANGE_BAUD_RATE 57600 RX_DATA_BLOCK Ver6.03.txt 烧入正常,没有错误.请问5418为什么就有这个问题呢? 答:如下是MSP430F5418和MSP430F5418A在BSL的区别,你可以在 3.3 Bootstrap Loader (BSL) The SYS4 erratum, fixed in the A r

9、evisions, states that the Bootstrap Loader (BSL) is non-programmable Read disturb issues when executing code from non-Main memory segments of Flash were worked around in the current BSL using carefully aligned instructions, forcing it to be locked from user edit. These read disturb issues do not aff

10、ect A revisions of silicon; therefore, the peripheral interface to the BSL is now user-programmable. See the MSP430 Memory Programming Users Guide (SLAU265) for further information concerning how to program the peripheral interface of the BSL.8 现在手中有一个BSL下载器,电路是参考了官方资料通过引导加载程序进行MSP430 编程.pdf,请问有什么软件

11、可以支持通过BSL下载程序至F5438A?我试了mspfet(161014版),但是出现错误“Synchronization error”。下载器截图: 答:第一步:找到5438A的数据手册如下列表 第二步:按照通过引导加载程序进行MSP430 编程.pdf中的下图所示内容测试,最好使用双探头的示波器,对照启动信号是否正确,不过从错误提示看启动应该是正常的: 第三步是看串口与BSL之间的数据的,您是USB的可以在上位机做个打印数据的窗口,看看这个过程的数据。或者网上下载个USB数据抓包工具,看同步数据是否发送正确。具体文档中说明如下:9 我纠结了好几天,想烧断2533的熔丝,通过BSL来更新程

12、序,在网上买了个BSL的,但发现不支持这型号。贵论坛上说用Lauchpad板子用BSLDEMO2的方式(参考的是SLA535A),但不知如何使用BSLDEMO.EXE文件啊.特请教啊, 正的很急,或有其他好的方法,先谢了! 答:你是不是直接双击了?试着用 WIN + R 运行 cmd ,然后在DOS窗口下使用。10 刚才阅读了文档 SLOA160 非接触式NFC 引导加载程序BSL_使用MSP430 和TRF7970A,想知道MSP430FR57xx和最新推出的MSP430FR5969有没有支持TRF7970A的BSL?答:FRAM系列MCU只支持UART和I2C的BSL。可以这样解决:通过M

13、SP430的SPI接口读取TRF7970A的更新程序到内部RAM,再调用BSL函数重写Flash。如果要用NFC加载,需要对BSL指令熟悉,自己开发搬移程序。或者可以考虑使用NFC tag来做,比如RF430CL330。11 在MSP430 BSL 通信中80h ,仅用于同步还是必须跟每个bootstrap loader 命令一起发送?答:在每次传输中80h 用于同步。芯片返回90h 作为响应,然后发送一个数据帧。每一帧以一个80h 的字节开头,帧其它字节紧跟在80h 之后。BSL 数据帧的格式在“Features of the MSP430 Bootstrap Loader”(文献编号SLA

14、A089)有定义。,可以在MSP430网站上下载。在应用笔记“Application of Bootstrap Loader in MSP430 w/Flash -Hardware and Software Proposal”(文献编号SLAA096)中,有详细的代码测试证明此技术的正确性。在应用笔记中提到的软件和硬件已经经过测试并且可以工作。12 Launchpad 板子上仿真器单元和目标板连接在一起的有P1.1(3)和P1.2(4)引脚 ,而G2553资料定义 BSL接口为P1.1和P1.5引脚!?不解其中道理!另 JATG接口的定义和BSL有啥联系没有啊?!多 谢 解疑! 答:JTAG权

15、限最高,一旦MCU被JTAG接管,比如仿真调试的时候,MCU所有动作都需要按照JTAG的命令进行,包括擦写FLASH,所以一般是在开发时使用。BSL是提供一种直接擦写FLASH的方案,方便在生产使或者升级时使用。在MSP430的设计中JTAG与BAL是share引脚的,但是当JTAG接管MCU时,BSL是不能工作的,这个可以在MSP430 Programming Via the Bootstrap Loader Users Guide (SLAU319) Page 6中查到。 但是当熔丝烧断后,jtag是不能使用,只有bsl可以使用。13 我们有一个项目,使用的是MSP430F5510,在应用

16、中把USB设备在PC上模拟CDC方式实现了上位机与下位机的正常通信。现在有一个需求是做通过USB升级固件(设备的客体只有一个USB接口,一则用于充电,二则用于USB通信,所有现目前只有通过USB的方式来升级固件),我们当时遇到一个问题是USB插上开机,51脚,PUR在硬件上连接了一个电阻,所以就自动进入BSL,这个和我们设计的需求不符合,所以我们就把PUR的电阻给去掉,就能够正常进入我们的main,现在的问题是,我们5510的空间只有32K,代码已经IAR最大优化size达到了30K左右,所以之前给相关的工程师提供的重定位USB功能模块的方式,实现起来有点困难,然后再论坛里面有问了有工程师提供

17、了一个slaa452b.pdf文档,我们按照里面所诉的方式通过软件跳转到0x1000地址BSL,由于我们使用的晶振是16M的,看了手册里面写的自动检测是2M,4M,6M,12,和24M的,所以我们通过BSL_USB_GUI.exe发现不了设备,请问5510是否可以通过上述方式(我们有上位机软件通过与通信,发送升级命令,接收到升级命令,关闭中断软件跳转到BSL,然后通过BSL_USB_GUI.exe来实现固件升级这样可以吗),那么BSL中是把设备作为的来实现的?望各位专家提供相关的信息,谢谢! 答:1). 如果采用USB做Boot程序的话,代码大概在2K左右。你可以考虑下是否在你的应用程序中增加

18、个BOOT程序.在你的代码足够的情况下,采用自己的BOOT程序具有较高的灵活性和安全性。 2). 调用MSP430F55XX内部固化的BOOT程序有3个途径,1) 上电复位后如果中断入口的地址为空,芯片会自动跳转到BOOT程序,2)从应用程序跳转到BOOT程序中可以通过(void (*)()0x1000)();这条代码来实现,所以你的代码中可以增加从软件进入BOOT程序的方法,3)硬件PUR,这个不多讲,你已经很清楚了。 3). 采用第一种方法最简单,你的应用程序如果接收到更新代码的命令,可以直接擦除0xFFFF开始的中断向量表,这样重新启动后就能自动进入BSL的代码。第二种方法也类似。 4)

19、.无论哪种方法,BSL代码如果要枚举成功,都需要2/4/6/12/24M的晶体,所以,如果你外部的晶体不是合法的晶体的话,又想用芯片内部的BSL就只能更换晶体。14 您好, 我们有一个蓝牙的系统,现在一直用msp430f5438a在做设计。系统功能主要是蓝牙通信,数据同步,存储卡文件操作等。由于系统还需要usb接口,所以我们一直想选一个带usb接口的430。再增加一个tusb3410成本还不少。我们有下面几个疑惑: 1.f5632是否也可以支持cc2564? 2.我们需要usb的现场flash升级功能,在论坛上找了很多信息,但都没讲清楚,5438a怎么来实现这个功能。也没有找到参考代码。 3.

20、f5632的主频是20m的,同时还有usb功能,集成的usb功能是否会影响mcu的性能会有多大影响? 4.从各位专家的角度来看,选择哪个芯片合适? 谢谢。 答:1)我们评判一个MCU是否支持你原来的应用,一般是评估FLASH/RAM的大小,外设接口数量,GPIO数量,以及CPU的最大主频, 从这意义上你需要和你实际使用的资源来判断MSP430F5632是否能替代5438A。F5632的FLASH和RAM大小和MSP430F5438A一样,但因为要用USB功能,所以你需要从你自己的代码上去衡量是否能够替代。 2).MSP430F5438是不带USB接口的,所以无法直接通过USB升级代码。 但是可

21、以通过一个USB转串口的芯片,连接到MSP430F5438A的UART接口上进行升级。一般来讲要升级芯片固件有两个方法,一是让MSP430进入BSL模式,二是你自己写一个BOOT程序用于升级。 3).F5632的主频最大可以跑到20M,带一个USB接口,集成USB功能基本不会影响到MCU的性能。但是会占用一定的RAM空间给USB接口做BUFF,具体的影响需要看你用USB接口干什么,如果你USB接口会长期工作传输数据,会消耗部分CPU的负载.如果你只是偶尔使用,CPU基本不会受到影响。 4).芯片的选择关键要看你原来的系统做了什么工作,消耗了多少资源。比如FLASH,RAM,用到哪些外设等15

22、用BSL按网上给的连接了,但是毫无反应 试了好几天了,求专家或者有成功用BSL下载过5418程序的高手指点!答:建议参考这个链接的内容:首先可通过其它编程器查看芯片能否正常编程,然后再检查 BSL 的握手时序是否正确,一步一步来,下面还有个中文文档,可以参考。16 exp-msp430F5529实验板开发问题,请问,您这款实验板的空闲引脚多少个啊?如果自己做5529的最小系统,外围电路如何设置呀?谢谢! 答:1). 此实验板是尽最大可能使用可用外设的。建议你直接查看exp-msp430f5529的原理图,在此链接中下载对应的user guide, 2). 5529最小系统,其实只要把JTAG接口和RST电路接出来即可,其他外设的话,看你需要什么。最小系统时注意PUR管脚要用电阻接地,否者MCU会进BSL模式。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号