在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于YCT的云途SDK配置工程升級(jí)方法

jf_ocihYtwl ? 來(lái)源:汽車電子expert成長(zhǎng)之路 ? 2023-11-14 11:16 ? 次閱讀

內(nèi)容提要

引言

云途配置工具(YCT - Yuntu Config Tool)自去年Q4推出以來(lái),已經(jīng)有不少云途車規(guī)MCU的客戶在實(shí)際項(xiàng)目使用了。它簡(jiǎn)明快捷高效的SDK和MCAL配置界面以及強(qiáng)大的工具鏈整合能力大大提高了用戶汽車電子ECU應(yīng)用代碼的開(kāi)發(fā)效率,深受好評(píng)。

Tips:關(guān)于云途YCT工具的功能特性(features)、下載安裝和使用請(qǐng)參考以下公眾號(hào)文章(點(diǎn)擊文章標(biāo)題即可直接跳轉(zhuǎn)閱讀):

《云途配置工具(YCT)快速上手指南(QSG)》

隨著云途車規(guī)MCU型號(hào)的日益增加(cover越來(lái)越多汽車電子應(yīng)用),云途SDK和MCAL也在不斷升級(jí),作為配套的圖形化配置工具YCT也進(jìn)行了若干次升級(jí),在修改已知bug的同時(shí)也新增了不少新功能。

最近,云途車規(guī)MCU的非AUTSOAR架構(gòu)驅(qū)動(dòng)軟件包 - YTM32 SDK進(jìn)行了一次比較大的升級(jí),強(qiáng)烈推薦大家將之前使用的SDK升級(jí)到最新的RTM v1.1.1版本,以快速修改已知云途車規(guī)MCU外設(shè)底層驅(qū)動(dòng)代碼的bug及硬件勘誤表(Errata)的Workaroud,以下為YTM32 SDK RTM v1.1.1版本的Release note的下載鏈接,供大家參考:

為了方便大家進(jìn)行SDK的快速升級(jí)替換,特撰寫(xiě)本文介紹升級(jí)YCT創(chuàng)建的云途SDK配置工程的詳細(xì)步驟和方法。

確認(rèn)當(dāng)前應(yīng)用工程的YCT配置工程使用的SDK/MCAL版本

打開(kāi)應(yīng)用工程根目錄下的YCT工程,在YCT的頂行Home菜單旁邊即為當(dāng)前YCT工程使用的SDK或者M(jìn)CAL的版本信息

MCAL的YCT配置工程:

7a08fdce-8289-11ee-939d-92fbcf53809c.png

7a1b6af4-8289-11ee-939d-92fbcf53809c.png

SDK的YCT配置工程:

7a3fc48a-8289-11ee-939d-92fbcf53809c.png

7a52a0a0-8289-11ee-939d-92fbcf53809c.png

確認(rèn)要升級(jí)目標(biāo)版本的SDK/MCAL軟件包已經(jīng)安裝好

通過(guò)YCT主頁(yè)界面的SDK/MCAL升級(jí)界面確實(shí)確認(rèn)要升級(jí)目標(biāo)版本的SDK/MCAL軟件包已經(jīng)安裝好,比如本文想要將上面的MD14的v0.8.1版本SDK的應(yīng)用工程升級(jí)到v1.1.1版本:

7a6bcc74-8289-11ee-939d-92fbcf53809c.png

修改YCT文件中的SDK版本信息

使用任意文本編輯器,比如Notepad++或者在VSCode中雙擊打開(kāi)工程根目錄下的yct文件,Ctrl + F查找“sdkVersion”配置:

7a892efe-8289-11ee-939d-92fbcf53809c.png

將其從原有的“0_8_1”修改為新版本“1_1_1”,并保存:

7ab05a2e-8289-11ee-939d-92fbcf53809c.png

修復(fù)YCT工程中的SDK外設(shè)差異配置error

接下來(lái),使用YCT工具打開(kāi)上一步驟修改后的應(yīng)用工程YCT文件,修改Problems窗口提示的所有配置error。

本文示例工程,打開(kāi)后有eTMR/PWM和CAN兩個(gè)配置報(bào)錯(cuò),下面介紹具體修復(fù)方法。

4.1 修復(fù)CAN驅(qū)動(dòng)模塊的波特率配置錯(cuò)誤

在v0.8.1版本SDK的CAN通信波特率配置中傳輸段(Propagation Segment)相位段1(Phase Segment 1)相位段2(Phase Segment 2)時(shí)鐘預(yù)分頻因子(Prescaler Division factor)在配置時(shí)會(huì)將配置值減1寫(xiě)入FlexCAN模塊的寄存器,而在新版本v1.1.1 SDK中這些配置將被直接寫(xiě)入FlexCAN模塊的寄存器,因此,為了實(shí)現(xiàn)相同的波特率(500Kbit/s)相應(yīng)的配置值需要減1。

v0.8.1版本的CAN波特率配置在v1.1.1中為錯(cuò)誤配置:

7ac9499e-8289-11ee-939d-92fbcf53809c.png

v1.1.1版本SDK中相應(yīng)波特率(500kbit/s)的正確配置如下:

7af5b27c-8289-11ee-939d-92fbcf53809c.png

4.2 修改eTMR/PWM驅(qū)動(dòng)模塊的配置錯(cuò)誤

v1.1.1版本SDK相對(duì)于之前老版本的SDK驅(qū)動(dòng)和配置界面做了一些bug修改,因?yàn)樾枰菵isable ETMR模塊的配置,然后重新Enable進(jìn)行配置才能解決相關(guān)error。

首先、Disable ETMR驅(qū)動(dòng)模塊,之前的配置信息將全部丟失:

7b0b5af0-8289-11ee-939d-92fbcf53809c.png

然后,重新Enable ETMR模塊,添加Common配置:

7b27a138-8289-11ee-939d-92fbcf53809c.png

使能PWM配置,并根據(jù)原有工程的需求添加PWM通道配置:

7b41941c-8289-11ee-939d-92fbcf53809c.png

Tips:為了減少應(yīng)用代碼中調(diào)用SDK配置參數(shù)的修改,需要將以上ETMR驅(qū)動(dòng)模塊的Common和PWM配置的配置結(jié)構(gòu)體名字配置參數(shù)保持與原工程相同。

重新生成工程和替換SDK底層驅(qū)動(dòng)

將以上配置error全部修復(fù)之后,點(diǎn)擊保存(Save),然后重新生成(Generate):

點(diǎn)擊確認(rèn)覆蓋(OverWrite)原有工程的SDK驅(qū)動(dòng)靜態(tài)代碼即可完成SDK驅(qū)動(dòng)更新和版本升級(jí):

7b5a6d48-8289-11ee-939d-92fbcf53809c.png

Tips:連續(xù)點(diǎn)擊多個(gè)文件覆蓋后,YCT會(huì)提示是否覆蓋所有文件,點(diǎn)擊“OK”確認(rèn)即可快速完成覆蓋替換:

7b8009a4-8289-11ee-939d-92fbcf53809c.png

重新編譯應(yīng)用工程,修改編譯錯(cuò)誤

重新編譯工程,根據(jù)編譯錯(cuò)誤和SDK releasenote中的bug list,修復(fù)/調(diào)整所有SDK API的參數(shù),比如PWM占空比更新函數(shù)--eTMR_DRV_UpdatePwmChannel()的0.8.11.1.1版本SDK的差異如下:

-------------------------------------------------------------
//v10.8.1 SDK:
-------------------------------------------------------------
/*!
 * @brief This function updates the waveform output in PWM mode (duty cycle and phase).
 *
 * @param [in] instance The eTMR peripheral instance number.
 * @param [in] channel The channel number. In combined mode, the code finds the channel.
 * @param [in] typeOfUpdate The type of PWM update in the duty cycle/pulse or in ticks.
 * @param [in] alignMode The alignment of PWM update in the duty cycle/pulse or in ticks.
 * @param [in] dutyCycle  Duty cycle of PWM.
 * @param [in] offset the offset from counter initial value to the first rising edge.
 *                    It is used for asymmetrical alignment pwm. When in edge align and
 *                    center align pwm mode, it is forced to 0.
 * @return success
 *        - STATUS_SUCCESS : Completed successfully.
 *        - STATUS_ERROR : Error occurred.
 */
status_t eTMR_DRV_UpdatePwmChannel(uint32_t instance,
                                   uint8_t channel,
                                   etmr_pwm_update_option_t typeOfUpdate,
                                   etmr_pwm_align_mode_t alignMode,
                                   uint32_t dutyCycle,
                                   uint32_t offset);


-------------------------------------------------------------
//v1.1.1 SDK:
-------------------------------------------------------------
/*!
 * @brief This function updates the waveform output in PWM mode (duty cycle and phase).
 *
 * @param [in] instance The eTMR peripheral instance number.
 * @param [in] channel The channel number. In combined mode, the code finds the channel.
 * @param [in] dutyCycle  Duty cycle of PWM.
 * @param [in] offset The offset from counter initial value to the first rising edge.
 *                    It is used for asymmetrical alignment pwm. When in edge align and
 *                    center align pwm mode, it is forced to 0.
 * @return success
 *        - STATUS_SUCCESS : Completed successfully.
 *        - STATUS_ERROR : Error occurred.
 */
status_t eTMR_DRV_UpdatePwmChannel(uint32_t instance, uint8_t channel, uint32_t dutyCycle, uint32_t offset);

在新版本SDK中,該API函數(shù)少了typeOfUpdate和alignMode兩個(gè)參數(shù),需要將其刪除。

另外,PWM通道參數(shù)配置結(jié)構(gòu)體etmr_pwm_param_t的通道配置成員名由*pwmIndependentChannelConfig改為了*pwmChannelConfig,也需要做相應(yīng)的調(diào)整:


-------------------------------------------------------------
//v0.8.1 SDK:
-------------------------------------------------------------
/*!
 * @brief eTMR driver PWM parameters
 *
 * Implements : etmr_pwm_param_t_Class
 */
typedef struct
{
    uint8_t nNumIndependentPwmChannels;                         /*!< Number of independent PWM channels */
    etmr_channel_mode_t mode;                                   /*!< eTMR pwm mode */
    uint32_t uFrequencyHZ;                                      /*!< PWM period in Hz */
    etmr_counter_init_src_t counterInitSrc;                     /*!< Counter initial value source */
    etmr_independent_ch_param_t *pwmIndependentChannelConfig;  /*!< Configuration for independent PWM channels */
#if (0 == FEATURE_eTMR_SUPPORT_CHANEL_DEADTIME)
    uint16_t evenDeadTime;           /*!< Enable/disable dead time for channel 0,2,4,6 */
    uint16_t oddDeadTime;            /*!< Enable/disable dead time for channel 1,3,5,7 */
#endif
    etmr_fault_param_t *faultConfig;                           /*!< Configuration for PWM fault */
} etmr_pwm_param_t;
-------------------------------------------------------------
//v1.1.1 SDK:
-------------------------------------------------------------
/*!
 * @brief eTMR driver PWM parameters
 *
 * Implements : etmr_pwm_param_t_Class
 */
typedef struct
{
    uint8_t nNumPwmChannels;  /*!< Number of independent PWM channels */
    etmr_channel_mode_t mode; /*!< eTMR pwm mode */
    uint32_t uFrequencyHZ;    /*!< PWM period in Hz */
#if FEATURE_eTMR_HAS_CNT_INIT_SRC
    bool counterInitValFromInitReg; /*!< Counter initial value source from INIT register or not */
#endif
    uint32_t cntVal;                       /*!< Counter initial value from CNT register */
    etmr_pwm_ch_param_t *pwmChannelConfig; /*!< Configuration for independent PWM channels */
#if !FEATURE_eTMR_DEADTIME_CONFIG_EACH_CHANNEL
    etmr_deadtime_param_t *deadtimeConfig; /*!< Configuration for PWM dead time */
#endif
    etmr_fault_param_t *faultConfig; /*!< Configuration for PWM fault */
} etmr_pwm_param_t;

PWM占空比更新API函數(shù)調(diào)用修改如下:

v0.8.1版本SDK調(diào)用:

/* update the PWM output duty cycle */
eTMR_DRV_UpdatePwmChannel(eTMR_INST, eTMR0_CH5_PWM_Config.pwmIndependentChannelConfig[0].hwChannelId,
                          etmrStatePtr[eTMR_INST]->typeOfUpdate, etmrStatePtr[eTMR_INST]->alignMode, (0x8000U * pwm_duty), 0x0000U);

v1.1.1版本SDK調(diào)用:

/* update the PWM output duty cycle */
eTMR_DRV_UpdatePwmChannel(eTMR_INST, eTMR0_CH5_PWM_Config.pwmChannelConfig[0].hwChannelId,
                          (0x8000U * pwm_duty), 0x0000U);

修復(fù)所有編譯error后,編譯成功即完成SDK升級(jí):

7b985004-8289-11ee-939d-92fbcf53809c.png

總結(jié)

本文詳細(xì)介紹了基于YCT的云途SDK配置工程升級(jí)方法,希望對(duì)大家有所幫助。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17173

    瀏覽量

    351628
  • 汽車電子
    +關(guān)注

    關(guān)注

    3027

    文章

    7979

    瀏覽量

    167233
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    889

    瀏覽量

    54569
  • SDK
    SDK
    +關(guān)注

    關(guān)注

    3

    文章

    1038

    瀏覽量

    46015
  • 云途
    +關(guān)注

    關(guān)注

    1

    文章

    4

    瀏覽量

    1959

原文標(biāo)題:云途配置工具(YCT)使用指南之如何快速升級(jí)YCT配置工程的云途SDK版本

文章出處:【微信號(hào):汽車電子expert成長(zhǎng)之路,微信公眾號(hào):汽車電子expert成長(zhǎng)之路】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何把賽靈思SDK工程移植到Vitis

    從 2019.2 版開(kāi)始,賽靈思 SDK 開(kāi)發(fā)環(huán)境已統(tǒng)一整合到全功能一體化的 Vitis 統(tǒng)一軟件平臺(tái) 中。 馬上開(kāi)始將工程從賽靈思 SDK 移植到 Vitis 吧。 Vivado 工程
    的頭像 發(fā)表于 11-09 16:57 ?2742次閱讀

    sdk_7_20_00_29升級(jí)sdk_7_40_00_64,如何操作?

    我的工程使用的是sdk_7_20_00_29,現(xiàn)在想升級(jí)SDKsdk_7_40_00_64。該如何操作? 我在CCS中切換了部分內(nèi)容,但是
    發(fā)表于 05-30 07:05

    升級(jí)到RTOS SDK v1.5版本編譯報(bào)錯(cuò)如何解決?

    準(zhǔn)備升級(jí)到RTOS SDK v1.5版本,在進(jìn)行工程編譯的時(shí)候出現(xiàn)問(wèn)題,cJSON.c使用了floor和pow兩個(gè)方法,并且該文件#include ,但在鏈接的時(shí)候庫(kù)中找不到這兩個(gè)
    發(fā)表于 07-12 06:10

    升級(jí)SDK過(guò)程中,如何更新in_config.h

    SDK
    橙群微電子
    發(fā)布于 :2023年03月21日 14:22:59

    靈犀智能語(yǔ)音平臺(tái)的語(yǔ)音評(píng)測(cè)SDK使用方法

    ` 靈犀是中國(guó)移動(dòng)與科大訊飛合作建立的一個(gè)為移動(dòng)應(yīng)用提供智能語(yǔ)音能力的平臺(tái)。近日靈犀正式對(duì)外發(fā)布了語(yǔ)音評(píng)測(cè)能力,各位可以申請(qǐng)靈犀SDK
    發(fā)表于 08-20 10:57

    阿里SDK升級(jí),宣布支持C++語(yǔ)言

    摘要: 日前,阿里官方SDK發(fā)布支持新語(yǔ)言——C++ 語(yǔ)言SDK,意味著90%以上產(chǎn)品可以隨時(shí)生成并發(fā)布C++ SDK,給C++ 語(yǔ)言的開(kāi)發(fā)者使用。 此次阿里
    發(fā)表于 02-08 13:48

    再次升級(jí)!阿里Kubernetes日志解決方案

    摘要: 今天阿里Kubernetes日志解決方案再次升級(jí),為您帶來(lái)以下改進(jìn): 1、極致部署體驗(yàn):只需一條命令一個(gè)參數(shù)即可完成整個(gè)K8S集群的日志解決方案部署。 2、支持更多配置方式:除原生控制臺(tái)
    發(fā)表于 05-28 19:08

    如何在阿里上安全的存放您的配置 - 續(xù)

    Token,那么開(kāi)發(fā)者無(wú)需在SDK配置任何AK相關(guān)敏感信息。詳細(xì)使用方法,請(qǐng)參考阿里SDK支持InstanceProfileCrede
    發(fā)表于 06-04 20:09

    YCT電磁調(diào)是什么, YCT電磁調(diào)速電機(jī)的工作原理

    文章來(lái)源:http://www.sztengcang.com/newsview.htm?ID=570YCT電磁調(diào)速電機(jī)是Y系列三相異步電動(dòng)機(jī)的主要派生系列。電磁調(diào)速電機(jī)由拖動(dòng)電機(jī)、電磁轉(zhuǎn)差離合器
    發(fā)表于 09-14 10:39

    機(jī)友分享 | 導(dǎo)入機(jī)智Android開(kāi)源項(xiàng)目的正確姿勢(shì)

    頁(yè)面編寫(xiě)了機(jī)智SDK控制設(shè)備的標(biāo)準(zhǔn)流程,APP源碼二次開(kāi)發(fā)過(guò)程中只需按照該流程進(jìn)行相關(guān)代碼的優(yōu)化即可快速完成針對(duì)自身產(chǎn)品的智能控制APP。因此只要我們將源碼工程文件成功導(dǎo)入Android
    發(fā)表于 09-28 10:58

    H3 SDK1.0 USB模塊的配置方法及注意事項(xiàng)

    本文介紹H3 sdk1.0 USB模塊配置方法,以及使用注意事項(xiàng)。
    發(fā)表于 03-26 16:36 ?6次下載
    H3 <b class='flag-5'>SDK</b>1.0 USB模塊的<b class='flag-5'>配置</b><b class='flag-5'>方法</b>及注意事項(xiàng)

    機(jī)智SDK Logs分析教程

    是開(kāi)發(fā)者已經(jīng)具備獲取Android日志的條件和能力,并且已經(jīng)熟悉機(jī)智SDK相關(guān)使用方法。如不具備這些前提,請(qǐng)先參考網(wǎng)絡(luò)上的相關(guān)資料。 二、設(shè)置SDK級(jí)別 要查看
    的頭像 發(fā)表于 07-27 11:12 ?1710次閱讀
    機(jī)智<b class='flag-5'>云</b><b class='flag-5'>SDK</b> Logs分析教程

    干貨丨耀服務(wù)器 L 實(shí)例需要配置升級(jí)教程

    需提前聲明:耀服務(wù)器 L 實(shí)例不支持直接升級(jí)配置,本實(shí)踐指導(dǎo)僅為如何升級(jí)耀
    的頭像 發(fā)表于 08-22 21:29 ?735次閱讀
    干貨丨<b class='flag-5'>云</b>耀<b class='flag-5'>云</b>服務(wù)器 L 實(shí)例需要<b class='flag-5'>配置</b><b class='flag-5'>升級(jí)</b>教程

    車規(guī)MCU VSCode IDE工程使用教程

    作者按:隨著越來(lái)越多云車規(guī)MCU芯片型號(hào)的量產(chǎn),越來(lái)越多的客戶開(kāi)始使用的車規(guī)MCU應(yīng)用軟件開(kāi)發(fā)工具鏈,其中基于CMake + ninja + GNU gcc toolchain的VSCode
    的頭像 發(fā)表于 09-24 10:51 ?2590次閱讀
    <b class='flag-5'>云</b><b class='flag-5'>途</b>車規(guī)MCU VSCode IDE<b class='flag-5'>工程</b>使用教程

    鴻蒙開(kāi)發(fā)實(shí)例:【配置OpenHarmony SDK

    在設(shè)置OpenHarmony應(yīng)用開(kāi)發(fā)環(huán)境時(shí),需要開(kāi)發(fā)者在DevEco Studio中配置對(duì)應(yīng)的SDK信息。
    的頭像 發(fā)表于 04-22 15:24 ?2044次閱讀
    鴻蒙開(kāi)發(fā)實(shí)例:【<b class='flag-5'>配置</b>OpenHarmony <b class='flag-5'>SDK</b>】
    主站蜘蛛池模板: 韩国三级在线不卡播放| 888米奇在线视频四色| 第四色亚洲色图| 甘婷婷一级毛片免费看| 欧美三级视频| 噜噜吧噜噜色| 国产一级片免费看| www黄色大片| 国产一级特黄特色aa毛片| 国产一级特黄的片子| bt天堂在线最新版www| 天天干夜夜添| 国产成人影院在线观看| 国产人成午夜免费噼啪视频| 一区二区三区高清视频在线观看| 久久久久国产一级毛片高清版| 亚州 色 图 综合| 日本a级片视频| 国产免费成人在线视频| 国产手机在线国内精品| 在线视频一本| 久久国产成人午夜aⅴ影院| 日日操夜夜| 天天爱天天射| 久操中文| 又粗又大又爽又色又过瘾视频 | videosgratis欧美另类老太| 天天摸天天做天天爽天天弄| 99久久久精品免费观看国产| 欧美午夜剧场| 四虎影院在线看| 寄宿日记在线看| 天天射天天搞| xxxxxx日本老师hd68| 亚洲欧美色鬼久久综合| 免费看欧美一级特黄a大片| 在线天天干| 欧美性猛交xxxx免费看久久| 怡红院网址| 免费毛片网| 天天爽天天操|