This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
器件型号:SCI 引导加载程序可与 JTAG 配合使用、但在加载时不可独立运行- F28035
我在 VS2017中编写了一个串行程序、上传 SCI_Bootloader (以便我可以将程序写入闪存)、当我 使用 JTAG 将 SCI_Bootloader 加载到 F28035时、一切都按预期工作。 在 进入 main()之前,它会通过 LED 的快速闪烁来重新进入 SCI_Bootloader,经过一些设置,然后它开始并等待上载闪存文件。 (我删除了自动波特函数并重新编程为以9600波特运行。 这就像我看到我的所有字节回传一样。) 然后、我可以使用 VS2017工具通过 SCI 端口上传闪存固件并按预期运行。
因此、当我移除 JTAG 和 GND GPIO37并上拉 GPIO34以将 F28035置于 SCI 引导模式时、我显然可以上载 SCI_Bootloader 闪存实用程序、但当它完成时、 在进入 main()之前,我没有看到预期的 LED 快速闪烁,因此我上传闪存文件的尝试失败。 就好像没有 输入'Entry point symbol:"_c_int00" address:000081c3'一样
我非常关注 图2-12。 SPRUI10中 SCI_Boot 函数的概述–2018年12月 、自动波特模式除外。 我已经重新调整了9600波特的 BRR、它运行正常。
我已经尝试将映射文件放入此 TT 中、但它不断消失。 如果需要任何数据、我可以将其复制到中。
您好 Jeffrey、
我们有关这方面的专家今天不在办公室。 请在明天之前回复
此致、
Peter
Jeffrey、
查看本文档和相关软件示例、了解它们是否有助于您解决问题:
此致
Lori
谢谢。 我没有意识到 ROM 引导加载程序具有自动波特率。 现在可以正常工作、但仍然看不到我的 LED 亮起、以指示新的 SCI 闪存引导加载程序正在运行。 将继续标记我的进度。 这是 SCI 闪存引导加载程序作为独立文件且未连接 JTAG 的情况。
该文档中的任何其他内容都不会有所帮助。 以下是一些附加信息:
链接器 Cmd 文件: 28035_RAM_lnk.cmd
十六进制实用程序标志: --diag_wrap=off --boot --sci8 --ascii
bin 文件开始忽略 STX:
AA 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C3 81 02 00
00 00 00 00 40 00 FB 82
忽略 ETX 的 bin 文件:
1E 00 00 00 FE 00 FF 08 94 00 01 00 FE FF 0A 94 00 00 00 00 00 00 00
FE FF 0C 94 00 00 00 00 00 FE FF 0E 94 00 FA 82 00 FE FF 10 94
00 00 FA 82 00 00 FF 14 94 00 00 00 00 00 00 00 00 00 00 00
00
数据以字节的形式写入、并验证 F28035的所有回传数据字节、因此不会发生数据损坏。 这也证明了它对 AA08的满意、否则就不会有回传数据。 它还证明了自动波特率锁定、并且我们基于 GPIO 引脚处于 SCI 引导模式。
还有其他想法吗?
因此、我们发现自动波特率校验器有问题-看看您是否能看到问题
void setAutoBaud(){}<= Bur,不使用这些额外的括号
{
执行{
sp.write("a");
sp.read (rdBuf,0,1);
} while (RdBuf[0]!='A');
}
以上都是计时器功能。
请随时关闭机票。 问题是 VS2017应用中缺少自动波特。