器件型号:MSP432P401R
您好!
我尝试通过我的应用软件使 BSL 运行并进行调用。
我的板上有一个 MAX3386E RS232转换器、连接到 eUSCI_A0。 根据 SLAU622G 第3.3.1节的规定、这是可能的。
我已将以下代码包含在我的应用软件中、通过串行连接命令调用该软件。
#include "msp.h"
#include
(笑声)
#define BSL_Param 0xFC48DFFF // I2C 从地址= 0x48,接口选择= UART
//#define BSL_API_TABLE_ADDR 0x00202000 // BSL API 表的地址
#define BSL_Entry_function (*((UINT32_t *) BSL_API_TABLE_ADDR)))
...
main()
{...
if (status & STATUS_BSL)
{
Status &=~STATUS_BSL;
MAP_Interrupt_disableMaster();
NVIC->icer[0]= 0xFFFF;
NVIC->ICPR[0]= 0xFFFF;
NVIC->icer[1]= 0xFFFF;
NVIC->ICPR[1]= 0xFFFF;
(((void (*)()) BSL_entry_function)((uint32_t) BSL_Param);//使用给定的 BSL 参数调用 BSL
}
...
}
当我现在尝试输入 BSL 时、MCU 离开我的应用软件(不响应我在串行上的命令)、但 BSL_scripter 无法与器件建立连接。 使用示波器、我可以看到脚本编写器传入的信号、但器件没有应答。
当我使用全新的 MCU 或器件、并将其重置为出厂默认值时、它会起作用。
BSL_Scripter 从一个命令窗口中启动、如下所示
C:\EigeneDaten\Workspace_v7\Datenloger\Debug>C:\EigeneDateneDataen\Datenblaetter_u_sonstiges\MSP_Doku\MSPBSL_Scripter_win\BSL-Scripter.exe -d -g -n P4xx -i [COM1、UART、9600、奇偶校验]-b -z [reset-->------------------- 用于 BSL 编程的 BSL Scripter 3.3.0 PC 软件2018年4月27日10:50:22 --------------------- 日志模式已关闭! C:\EigeneDaten\Datenetter_u_sonstiges\MSP_Doku\MSPBSL_Scripter_win\BSL-Scripter.exe -d -g -n P4xx -i [COM1、UART、9600、奇偶校验]-b -z [复位] 打开了详细信息! 设备:P4xx Init 通信参数:[COM1、UART、9600、奇偶校验] [ERROR_MESSAGE] P4xx BSL 的初始化失败! 退出脚本编辑器!
我不知道为什么它不能正常工作。
此致
Thomas
