4 Replies Latest reply on Jan 15, 2019 6:32 PM by 1313_3839421

    PSoC6 bootloader

    1313_3839421

      我用官方的 "PSoC6_BLE_Three_Masters_One_Slave_RTOS"这个demon,按照官方”CE216767“的demon指示添加bootloader,给板子升级成功后,发现Freertos系统正常工作,但是蓝牙没有工作,请问这是什么原因呢?

        • 1. Re: PSoC6 bootloader
          ShipingW_81

          我这边在"PSoC6_BLE_Three_Masters_One_Slave_RTOS"基础上做了一个bootloadable的demo,经过测试是可以完成OTA并且实现原工程的所有功能,附上来你试下。

          另外,蓝牙没起来有可能是没有启动adv/scan导致,一开始需要通过串口输入相应指令才能启动,请注意。

          关于bootloadable的修改步骤,请参考文档 4.3.2章节- http://www.cypress.com/file/385706/download

          code exmple的工程文档里面讲的不是很详细。

          1 of 1 people found this helpful
          • 2. Re: PSoC6 bootloader
            1313_3839421

            非常感谢!问题已解决。基于CE216767的bootloader,还有一个问题就是每次通过PSoC Creator4.2下载程序时只是把APP0的部分下载进去了,我自己的工程没有附带一起下载进去,必须要通过OTA才行,这个怎么解决

            • 3. Re: PSoC6 bootloader
              ShipingW_81

              可以按照以下方法步骤把app0和app1生成的hex文件合并到一起 -

               

              1. 把附件中的文件添加到app0(bootloader)工程->Shared Files下面;

               

              2. 在app0的Build Settings中按下图添加post_build_core1.bat creator ${OutputDir} ${ProjectShortName}到Post Build Commands

              3. 在app1下,post_build_core1.bat文件中最后添加以下命令

              @rem Merges App0 and App1 into a single hex file for easier programming

              %CY_MCU_ELF_TOOL% -M %OUTPUT_DIR%\%PRJ_NAME%%ELF_EXT% ..\App0%ELF_EXT% --output %OUTPUT_DIR%\%PRJ_NAME%_merged%ELF_EXT% --hex %OUTPUT_DIR%\%PRJ_NAME%.hex

               

              4. 按顺序编译app0,app1,在app1工程路径CortexM4\ARM_GCC_541\Debug下会生成包含app0和app1的hex文件,烧录此文件即相当于同时烧录了bootloader和application.

              1 of 1 people found this helpful
              • 4. Re: PSoC6 bootloader
                1313_3839421

                非常感谢!问题已解决!