電子工程網(wǎng)

標題: 【PSoC4 試用報告】試用Bootloader和Bootloadable引導加載程序 [打印本頁(yè)]

作者: 1770309616    時(shí)間: 2013-11-18 19:08
標題: 【PSoC4 試用報告】試用Bootloader和Bootloadable引導加載程序
        一、概述
        Bootloader  系統使用新應用代碼和/或數據管理組件閃存的更新流程。為了使流程生效,我們使用以下組件:
        Bootloader 工程 - 包含 Bootloader 和通信組件的工程
        Bootloadable 工程- 包含用于創(chuàng )建代碼的 Bootloadable 組件的工程

       1、Bootloader  組件
       Bootloader 組件允許用戶(hù)對組件閃存進(jìn)行代碼更新。Bootloader  接受并執行命令,然后將這些命令的響應傳回通信組件。Bootloader 收集并整理接收到的數據,并通過(guò)一個(gè)簡(jiǎn)單的命令/狀態(tài)寄存接口管理對閃存的寫(xiě)入操作。
        工程應用類(lèi)型需與原理圖上放置的組件匹配。例如,對于 Bootloader 工程,將應用類(lèi)型設置為 Bootloader 并將 Bootloader 組件放置在原理圖上。

       2、通信組件
       通信組件管理通信協(xié)議從外部系統接收命令,然后將這些命令傳遞到 Bootloader 。它還將 Bootloader 的命令響應傳遞回片外系統。

       3、Bootloadable 組件
       使用 Bootloadable 組件時(shí),可以為 Bootloadable 項目指定附加參數。

       二、應用程序編程 (API )接口

       應用程序編程接口 (API) 庫例程允許您使用軟件配置組件。下表列出了每個(gè)函數的接口并進(jìn)行了說(shuō)明。以下各節將更詳細地介紹每個(gè)函數。
       默認情況下,PSoC Creator 將實(shí)例名稱(chēng)“Bootloade _1”分配給指定設計中的 Bootloader 組件的第一個(gè)實(shí)例,將“Bootloadable_1”分配給 Bootloadable 組件的第一個(gè)實(shí)例。您可以將該實(shí)例重命名為符合標識符語(yǔ)法規則的任意唯一值。實(shí)例名稱(chēng)會(huì )成為每個(gè)全局函數名稱(chēng)、變量和常量符號的前綴。出于可讀性考慮,下表中使用的實(shí)例名稱(chēng)為“Bootloader” 和  “Bootloadable”。
       Bootloader 和  Bootloadable 的函數

                  

        三、功能描述

       1、Bootloader Bootloadable 的函數
Bootloader 工程通過(guò) Bootloader工程的通信組件可將 Bootloadable 工程(或新代碼)整體燒寫(xiě)到閃存中。傳輸后,會(huì )始終對處理器進(jìn)行復位。Bootloader 工程還負責在復位時(shí)測試特定條件,并有可能在 Bootloadable 工程不存在或損壞的情況下自動(dòng)啟動(dòng)傳輸操作。
       啟動(dòng)時(shí),Bootloader  代碼加載其自己配置的配置字節。此外還必須初始化堆棧和其他資源以及外設以便進(jìn)行傳輸。傳輸完成后,控件通過(guò)軟件復位傳遞到 Bootloadable 中。
        然后, Bootloadable 加載其自己配置的配置字節,并對堆棧及其函數的其他資源和外設重新進(jìn)行初始化。 Bootloadable 可調用其中的 Bootloadable_Load() 函數,以切換為引導加載應用程序(這會(huì )再次造成軟件復位)。
下圖顯示了 Bootloader 的工作原理。

                        
        2、Bootloader 應用程序
        通常,您可以通過(guò)將 Bootloader 組件和通信組件拖到原理圖上、將 I/O 路由至引腳、設置時(shí)鐘等操作來(lái)完成 Bootloader 設計工程。包含 Bootloader 組件和通信組件的工程實(shí)現基本引導加載應用程序函數的新代碼接收并將其寫(xiě)入閃存。您可以通過(guò)將其他組件拖到原理圖上或添加源代碼來(lái)向基本的 Bootloader 工程添加自定義函數。

       3、Bootloadable 應用
       Bootloadable 應用實(shí)際上就是代碼。它與常規應用類(lèi)型非常相似。主要區別是,Bootloadable 應用始終與引導加載應用相關(guān)聯(lián),而常規工程從不會(huì )與引導加載應用關(guān)聯(lián)。

        四、應用例子
        以上經(jīng)典描述,顯得生澀難懂,不知所云,難以理解。下面幾個(gè)例子就是Bootloader、Bootloadable工程程序,在The PSoS 4 kit CY8CKIT-042開(kāi)發(fā)板上的試用,目的是了解引導加載應用程序的實(shí)現、特點(diǎn)(與常規工程應用相比)和過(guò)程。

       一)、UART Bootloader工程

       UART Bootloader工程有三個(gè)項目:UART_Bootloader、Bootloadabie1Bootloadabie2。建造完畢(過(guò)程略)、硬件連接(UART和PSoC 5LP 之間P0.0-P12.7、P0.1-P12.6的連接)后,經(jīng)BuildProgramCY8CKIT-042經(jīng)USB接口與PC相連)成功后,可以進(jìn)行工作。

                    
                                         
        1、UART_Bootloader項目

                    

        這時(shí)可以看到CY8CKIT-042板上RGB LED紅燈閃亮,原理圖如下:
                                            
         說(shuō)明Bootloader處于等待引導加載命令狀態(tài),UART是通信組件,配置給Bootloader組件,PWM已處于工作狀態(tài),脈沖輸出分配給P1.6管腳,紅燈點(diǎn)亮。
         組件和組件配置見(jiàn)附件UART_Bootloader_Project圖片.
        軟件及其它見(jiàn)附件:UART_Bootloader_Project.

        2、Bootloadabie1項目
        Bootloadabie1配置有UART_Bootloader.hex代碼,點(diǎn)壓CY8CKIT-042板上的“SW2”按鈕,系統處于Bootloader處于等待引導加載命令狀態(tài),CY8CKIT-042板上RGB LED紅燈閃亮;打開(kāi)Bootloader  Host  Application (UARTBootloaderHost.exe,在附件文件夾:UART_Bootloader_Project), 選擇通信端口COM(PC設備管理器查找),點(diǎn)擊Connect按鈕進(jìn)行連接;連接成功后,選擇引導加載文件(從文件夾里查找,路徑...\Bootloadable1.cydsn\CortexM0\ARM_GCC_441\Debug\Bootloadable1.cyacd),點(diǎn)擊“Bootload” 按鈕引導加載文件, 引導加載成功后,點(diǎn)亮CY8CKIT-042板上RGB LED綠燈。

                                 
                       

        實(shí)現原理圖如下:
                                    
        組件和組件配置見(jiàn)附件UART_Bootloader_Project圖片.
        軟件及其它見(jiàn)附件:UART_Bootloader_Project.

       3、Bootloadabie2項目
       過(guò)程與“2、Bootloadabie1項目”完全相同,只不過(guò)加載的是“Bootloadable1.cyacd”代碼文件,點(diǎn)亮的是CY8CKIT-042板上RGB LED藍燈。同樣,點(diǎn)壓CY8CKIT-042板上的“SW2”按鈕,系統處于Bootloader處于等待引導加載命令狀態(tài),CY8CKIT-042板上RGB LED紅燈閃亮,RGB LED其它燈滅,可以引導加載“Bootloadable1.cyacd”代碼文件等循環(huán)過(guò)程。

                  
                  

       實(shí)現原理圖如下:
                                 
        組件和組件配置見(jiàn)附件UART_Bootloader_Project圖片.
        軟件及其它見(jiàn)附件:UART_Bootloader_Project.

        4、視頻:
                 http://player.youku.com/player.php/sid/XNjM1OTU0MjA0/v.swf

        5.附件:
          UART_Bootloader_Project.zip (5.95 MB)
          UART_Bootloader_Project圖片.zip (750.59 KB)

二)、I2C Bootloader工程

(河南 薛)

作者: sjyspaceembcom    時(shí)間: 2013-11-20 21:56

作者: chenyuanzhi1989    時(shí)間: 2013-11-22 22:33

作者: pcbkey    時(shí)間: 2015-2-22 14:37
支持一下

作者: vikings335    時(shí)間: 2017-5-2 10:25
非常感謝,資源正是需要的




歡迎光臨 電子工程網(wǎng) (http://selenalain.com/) Powered by Discuz! X3.4
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页