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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

藍牙開發零門檻之十四-Cube

海闊天空的專欄 ? 來源:桃芯科技 ? 作者:桃芯科技 ? 2023-11-07 18:28 ? 次閱讀

SDK 新工具 Cube 是一個圖形化的初始化代碼生成器,可為桃芯各種芯片型號生成 C 代碼。

關鍵特性

這是一個交互式工具,輔助開發者正確配置芯片。各種特性總結如下:

  • 支持各種芯片型號
  • 以最直觀的方式完成外設和時鐘樹配置
  • 豐富、易用的圖形界面
    • 啟發式、交互式設計
    • 無需文檔,使用方法一目了然
  • 自動檢查,減少錯誤
  • 管腳沖突
  • 參數范圍
  • 低調
  • 生成的代碼匯總于一個文件
  • 由開發者決定是否使用它生成的代碼
  • 不會搞亂開發者的工程設置
  • 極快的運行速度
  • 所有的檢查都是實時進行
  • 對于運行環境要求低
  • 與其它基于 Eclipse 的工具相比,效率不可同日而語
  • 生成的代碼更高效
  • 對于某些外設直接輸出“計算”后的代碼
  • 比調用驅動程序代碼更短、速度更快

在 Wizard 里右鍵單擊一個項目,從快捷菜單中選擇“Edit with Cube…”即可打開 Cube。Cube 生成的代碼保存在項目里的 /data/setup_soc.cgen 文件內,Cube 本身的數據保存在 /data/cube_SERIES.dat 文件內,這里 SERIES 為芯片系列。

要使用 Cube 生成的代碼,只需 3 步:

  1. main.c 里包含 ../data/setup_soc.cgen
    這行代碼需要在 #include "ingsoc.h" 之后。
  2. setup_peripheral 函數里調用 cube_setup_peripherals()
  3. app_main 函數的開頭調用 cube_soc_init()

下面通過幾個具體的場景介紹 Cube 的使用:

使用場景 1. 硬件工程師設計天線陣

比如現在要用 ING91880C 設計一塊天線陣,天線開關連哪個 IO 腳?新建一個 ING9188xx 的工程,打開 Cube,將型號選為 ING91880C,點擊 Antenna,再點擊菜單 Configure,彈出天線開關編輯窗口。點擊 Enable All,可以用做天線開關的 IO 腳一目了然:

圖片

使用場景 2. 硬件工程師設計LED指示燈

比如現在要用 ING91680A 設計一個產品,其中用到 LED 指示燈,打算使用 PWM 控制閃爍。可以使用哪個 IO 腳?新建一個 ING9168xx 的工程,打開 Cube,將型號選為 ING91680A,點擊 PWM,再點擊菜單 Configure,彈出 PWM 編輯窗口。馬上就可以直觀檢查哪些管腳可用作PWM 輸出:

圖片

假設硬件工程師選定使用 IO 16 控制 LED 燈,通知軟件工程師。

使用場景 3.軟件工程師實現 LED 燈的 PWM 控制

軟件工程師繼續使用 Cube 編輯 PWM。假設軟件工程師要使 LED 的初始狀態為 1 秒閃爍一次,占用比 50%。在 Easy 標簽下,分別輸入頻率 1Hz,占空比 50%,—— 輸入數據時回車生效。這時,從驗證窗口內馬上可以看到存在兩處錯誤:PWM 的 PERA、HIGH 兩個數據都超出范圍了, 它們最多支持 20 個比特,即最大為 0xfffff。

圖片

由于 PWM 分頻比例有限,如果降低 PWM 的工作頻率,就能獲得更低頻的輸出。切換到時鐘樹頁面,我們發現 PWM 有兩種時鐘可選:一為從 Slow Clk 分頻,一為使用 CLK 32k。讓我們直接使用 CLK 32k。

圖片

回到 PWM 編輯窗口 Channel 0 的 Easy 標簽,這時,驗證窗口提示一切正常:

圖片

編譯下載程序,連接必要的硬件,即可看到 LED 燈在按要求閃爍。

打開 setup_soc.cgen 文件,可看到最末尾幾行的內容為:

// dump PINCTRL registers
APB_PINCTRL- >OUT_CTRL[4] = 0x00001522; // 0x00001547

這是 Cube 對 PINCTRL_SetPadMux(16, IO_SOURCE_PWM0_A) 做了“計算”后得出的結果, 顯然比在芯片里執行 PINCTRL_SetPadMux(16, IO_SOURCE_PWM0_A) 效率更高。這對于 ING916XX 系列為重要:因為 PINCTRL 配置需要查一張復雜的表格,(https://github.com/ingchips/ING918XX_SDK_SOURCE/blob/07ffc140a28b86dfeda95cc9ea1f560e2b5adeae/src/FWlib/peripheral_pinctrl.c#L265)每次睡眠醒來都需要重新配置, 所以使用 Cube 既可以減小程序體積,對于降低功耗也有一定好處。

使用場景 4.軟件工程師借助 TIMER 實現 LED 燈的 PWM 控制

由于某些原因,PWM 模塊另有它用,軟件工程師決定改用硬件定時器輸出 PWM 波形控制 LED 燈。查閱 PinCtrl 模塊的文檔可知, 萬幸 ,IO 16 可用于硬件定時器 PWM 波形的 A 路輸出。

選用 TIMER2 的 Channel 0 輸出 PWM 信號,從編輯窗口發現計數器長度僅用 16 比特,切換到時鐘樹窗口, 將 TIMER2 的時鐘切換為 32k。這樣,兩個計數數各配為 16000 就可以輸出 1 秒為周期,占空比 50% 的 PWM 波形了:

圖片

這個編輯窗口還出現了一個“陌生”的 “Park Value”,將鼠標移動到 “?” 上可以了解其功能。編譯下載程序,即可看到 LED 燈在按要求閃爍。

文章來源 桃芯科技

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23742

    瀏覽量

    671387
  • 芯片
    +關注

    關注

    459

    文章

    52253

    瀏覽量

    436976
  • 藍牙
    +關注

    關注

    116

    文章

    6042

    瀏覽量

    173292
  • PWM
    PWM
    +關注

    關注

    116

    文章

    5409

    瀏覽量

    218288
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    門檻阻礙“寬帶中國” 潛力有效釋放

    信息消費雖然前景光明,但要想成功實施“寬帶中國”戰略,必須邁過三道門檻
    發表于 07-15 11:22 ?1143次閱讀

    門檻踏入以太網的世界,行走物聯網江湖

    了解以太網協議,使用MCU的一個三線串口即可與通訊,大大降低了以太網的門檻,無需牛B的程序員也能玩轉以太網,節省了企業研發投入。
    發表于 03-05 17:21 ?4195次閱讀

    每個人都可以有個收音機 0門檻搞定收音機電路

    ` 本帖最后由 eehome 于 2013-1-5 09:47 編輯 每個人都可以有個收音機0門檻搞定收音機電路 強大的收音機電路及其資料基于小51DIY樂在其中收音機樂趣無窮`
    發表于 08-18 09:49

    干貨!Android藍牙驅動開發經驗

    干貨!Android藍牙驅動開發經驗目錄一 Bluetooth基本概念1二 Android Bluetooth架構12.1 Bluetooth架構圖12.2 Bluetooth代碼層次結構3三
    發表于 02-29 15:53

    在FireFly RK3288開發板上運行Flint OS是怎樣的體驗?

    Flint OS是一款更快速,更簡單,更高效的云驅動操作系統,從主流x86平臺電腦設備到超輕量單板機物聯網設備均可完美適配,是一款可塑性極強的“門檻”操作系統。而FireFly RK3288開發
    發表于 03-08 17:55

    Android藍牙驅動開發總結

    Android藍牙驅動開發總結
    發表于 07-15 16:44

    STM32H7打破CoreMark2000分門檻,喜歡STM32的嵌友可以上手了

    STM32H7打破CoreMark 2000分門檻,喜歡STM32的嵌友可以上手了!意法半導體發布全新微控制器STM32H7。該新產品是業界性能最高的Arm Cortex-M通用MCU,集強勁的雙
    發表于 04-23 15:22

    ShineBlink是什么?有何作用

    ShineBlink是一款門檻開發環境、低代碼的萬能物聯網智能硬件開發板機智云為開發者提供
    發表于 02-22 06:10

    機智云邊緣操作管理系統及邊緣服務器滿足企業全球化需求

    機智云自助開發平臺,作為一個門檻、超低代碼的iot開發平臺,通過傻瓜化的自助工具、在線可視化開發環境、圖形化
    的頭像 發表于 09-30 16:06 ?2962次閱讀

    采用百度飛槳EasyDL完成指定目標識別

    EasyDL從2017年11月中旬起,在國內率先推出針對AI算法基礎或者追求高效率開發的企業用戶的門檻AI開發平臺,提供從數據采集、標注
    的頭像 發表于 08-14 10:30 ?2512次閱讀

    4G氣象站的設計與實現

    ShineBlink 是一款門檻開發環境、低代碼的萬能物聯網智能硬件開發
    的頭像 發表于 08-27 11:17 ?1162次閱讀

    開發者案例:智能加濕器

    ShineBlink是一款門檻開發環境、低代碼的萬能物聯網智能硬件開發板機智云為開發者提供
    的頭像 發表于 08-29 16:47 ?1411次閱讀
    <b class='flag-5'>開發</b>者案例:智能加濕器

    低代碼快速開發智能產品新系統

    聯網系統。作為一個門檻、超低代碼的自助開發平臺,通過傻瓜化的自助工具、在線可視化開發環境、圖形化開發界面、完善的SDK與API服務能力,最
    的頭像 發表于 09-09 14:32 ?709次閱讀
    低代碼快速<b class='flag-5'>開發</b>智能產品新系統

    標普云DeepSeek一體機發布:門檻部署企業DeepSeek

    標普云DeepSeek一體機重磅發布:開箱即用,門檻快速部署企業自己的DeepSeek 在AI技術加速滲透千行百業的今天,企業如何既保障數據安全,又快速落地智能化應用? 2024年2月14日,標普
    的頭像 發表于 02-17 16:49 ?519次閱讀

    運動控制模塊:Delta機械手柔性上下料開發門檻

    正運動運動控制模塊結合第三方視覺實現Delta機械手柔性上下料應用開發
    的頭像 發表于 05-23 10:29 ?118次閱讀
    運動控制模塊:Delta機械手柔性上下料<b class='flag-5'>開發</b><b class='flag-5'>零</b><b class='flag-5'>門檻</b>!
    主站蜘蛛池模板: 亚洲欧美日韩动漫 | 年轻的护士3在线观看 | 老师办公室高h文小说 | 1300部小u女视频免费 | 天天爽天天爽天天片a久久网 | 国产午夜小视频 | 亚洲高清一区二区三区四区 | www欧美在线观看 | 中文字幕人成不卡一区 | 国产1024一区二区你懂的 | 免费看a| 黑色丝袜美女被视频网站 | 国产激情在线观看 | 六月丁香激情网 | 成人午夜免费视频 | 人人射人人草 | swag系列国产精品 | 黄视频网站观看 | 天堂在线最新资源 | 亚洲人成人网毛片在线播放 | 国产白白白在线永久播放 | 米奇精品一区二区三区 | 久久精品最新免费国产成人 | 天天看影院 | 天堂在线最新版www中文 | 天天干天天干天天干天天 | 久久久久久午夜精品 | 亚洲va久久久噜噜噜久久天堂 | 欧美yw193.c㎝在线观看 | 一区二区三区高清在线 | 色色就色色| 色天天综合色天天碰 | 日本国产视频 | 国产精品三级在线观看 | 三级完整在线观看高清视频 | 人人草草 | 极品美女写真菠萝蜜视频 | 国产一级一片免费播放视频 | 免费一级黄 | 亚洲免费视频网 | 色在线视频免费 |