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.
工具/软件:Code Composer Studio
我是 TI 微控制器的新手、尝试为 uart7构建引导加载程序时遇到了一些问题。 我认为我已经从 boot_serial 示例中正确配置了文件 bl_config.h 并通过 JTAG 进行了刷写。
但是、当我尝试通过 LM Flash 上载.bin 文件时、它不起作用。 我还通过 Uniflash 在起始地址上载.bin 文件、该地址在 尝试与引导加载程序一起运行时设置为 APP_START_ADDRESS、但也不起作用。
我出了什么问题? 我可以使用 LM Flash 将.bin 文件上传到 uart7吗?
我使用的是 Tiva TM4C129ENCPDT 、我唯一可以访问的 UART 端口是5和7。
此致、
Vinícius μ A
您好、Charles、
感谢您的回复。 我已经检查了串行通信的参数。
在调试期间、我可以看到它在接收 数据包函数的 while 中等待。
我还尝试通过 Docklight 发送两次0x55、但它没有收到任何响应。
Vinicius
您好!
我正在使用 FTDI 芯片与 PC 通信、我可以在设备管理器上看到 COM 端口。
UART7和 PC 之间的通信工作正常。
此致、
Vinicius
您好!
我已经尝试过你说的。 结果如下:
这是 bl_config.h 文件。
e2e.ti.com/.../2273.bl_5F00_config.h
感谢你的帮助。
此致、
Vinicius
{Edit](编辑)、但有一些修正。 我指的是扇区。
您的程序地址偏移是一个问题。 您有0x1C00。 这是一个地址、与闪存引导加载程序本身位于同一个闪存扇区中。 是否确定要执行此操作? 请注意、闪存擦除的工作是按扇区粒度进行的。 如果要强制覆盖第一个闪存扇区 、则需要取消注释 #define ENABLE_BL_UPDATE。 但是、不建议这样做。 我建议您像 boot_demo1那样将偏移地址更改为0x4000。
您好!
我将尝试更改偏移、并尝试使用 Launchpad 来更好地了解引导加载程序。
我还有其他一些问题:
1) 1)我收到的消息错误仅与引导加载程序相关、或者可能是其他问题?
2) 2)程序偏移量、APP_BASE 和 APP_START_ADDRESS 必须相同?
3) 3)我能否上传具有不同程序偏移量的1个以上.bin 文件、并让引导加载程序处理其他偏移量? 例如、将其发送到其他位置。 (我只是想知道是否可能)
此致、
Vinicius
您好!
Vinicius Trentin 说:1)我收到的消息错误仅与引导加载程序有关,或者可能是其他问题?
我只在闪存未针对应用的闪存空间进行完全擦除时看到此错误。 例如、如果应用程序占用的地址为0x4000、那么闪存必须完全擦除从0x4000开始的闪存扇区。 从0x0开始的引导加载程序位于第一个闪存扇区。 如果从0x4000开始的扇区未被擦除、那么您将得到该错误。 我自己也看到过这一点。 我以前曾就此向您指出过。 如果您的应用程序偏移量为0x1C00、则会要求引导加载程序将程序加载到引导加载程序本身所在的闪存扇区中。 这是可行的、但完全不建议执行、如前所述、因为这会破坏您的引导加载程序。
Vinicius Trentin 说:2)程序偏移量、app_base 和 app_start_address 必须相同?[/quot]
是的、
[引用 user="Vinicius Trentin"]3)我能否上传具有不同程序偏移的1个以上.bin 文件、并让引导加载程序处理额外偏移? 例如、将其发送到其他位置。 (我只是想知道是否可能)
TivaWare 引导加载程序示例不支持这一点。 在本示例中、可能在加载应用程序后、按 launchpad 上的 SW1开关以加载另一个.bin 文件、但该.bin 文件将覆盖闪存中先前的.bin 文件。 您可以编写自己的应用程序、该应用程序将调用引导程序来将新的.bin 文件加载到未使用的闪存扇区中、而不会影响当前引导加载程序和现有应用程序所在的闪存扇区。 但是、您为什么要这么做? 您会使自己变得过于复杂。 您将需要编写一个引导加载程序、该引导加载程序知道要跳转到哪个应用程序。 引导加载程序如何知道何时覆盖第一个应用程序或第二个应用程序、甚至添加第三个应用程序? 您的应用是什么? 我会简单地从开始。