64位 linux 32位连接器,意法半导体为 32 位微控制器发布了一款自由的 Linux 集成开发环境...
32 位微控制器世界向 Linux 敞開大門。前一段時間,領先的 ARM Cortex-M 供應商意法半導體(ST)發(fā)布了 一款自由的 Linux 桌面版開發(fā)程序,該軟件面向其旗下的 STM32 微控制單元(MCU)。包含了 ST 的 STM32CubeMX 配置器和初始化工具,以及其 STM32 系統(tǒng)工作臺(SW4STM32) ,這個基于 Eclipse 的 IDE 由工具 Ac6 創(chuàng)建。支撐 SW4STM32 的工具鏈,論壇,博客以及技術會由 openSTM32.org 開發(fā)社區(qū)提供。
“Linux 社區(qū)以吸引富有創(chuàng)意的自由思想者而聞名,他們善于交流心得、高效地克服挑戰(zhàn)。” Laurent Desseignes,意法半導體微控制器產(chǎn)品部,微控制器生態(tài)系統(tǒng)市場經(jīng)理這么說道:“我們正著手做的是讓他們能極端簡單的借力 STM32 系列的特性和性能施展自己的才能,運用到富有想象力的新產(chǎn)品的創(chuàng)造中去。
Linux 是物聯(lián)網(wǎng)(IoT)網(wǎng)關和樞紐,及高端 IoT 終端的領先平臺。但是,大部分 IoT 革命,以及可穿戴設備市場基于小型的低功耗微控制器,對 Cortex-M 芯片的運用越來越多。雖然其中的一小部分可以運行精簡的 uCLinux (見下文),卻沒能支持更全面的 Linux 發(fā)行版。取而代之的是實時操作系統(tǒng)(RTOS)們或者有時干脆不用 OS 來控制。固件的開發(fā)工作一般會在基于 Windows 的集成開發(fā)環(huán)境(IDE)上完成。
通過 ST 的自由工具,Linux 開發(fā)者們可以更容易的開疆拓土。ST 工具中的一些技術在第二季度應該會登錄 Mac OS/X 平臺,與 STM32 Nucleo 、開發(fā)套件、以及評估板同時面世。Nucleo 支持 32 針、64 針、和 144 針的版本,并且提供類似 Arduino 連接器這樣的插件。
STM32CubeMX 配置器和 IDE SW4STM32 使 Linux 開發(fā)者能夠配置微控制器并開發(fā)調(diào)試代碼。SW4STM32 支持在 Linux 下通過社區(qū)更改版的 OpenOCD 使用調(diào)試工具 ST-LINK/V2。
據(jù) ST 稱,軟件兼容 STM32Cube 軟件包及標準外設庫中的微控制器固件。目標是囊括 ST 的全系列 MCU,從入門級的 Cortex-M0 內(nèi)核到高性能的 M7 芯片,包括 M0+,M3 和 DSP 擴展的 M4 內(nèi)核。
ST 并非首個為 Linux 準備 Cortex-M 芯片 IDE 的 32 位 MCU 供應商,但似乎是第一大自由的 Linux 平臺。例如 NXP,MCU 的市場份額隨著近期收購了 Freescale (Kinetis 系列 MCU,等)而增加,提供了一款 IDE LPCXpresso IDE,支持 Linux 、Windows 和 Mac。然而,LPCXpresso 每份售價 $450。
在其 SmartFusion FPGA 系統(tǒng)級芯片(SoC)上集成了 Cortex-M3 芯片的 Microsemi,擁有一款 IDE Libero IDE,適用于 RHEL 和 Windows。然而,Libero 需要許可證才行,并且 RHEL 版缺乏如 FlashPro 和 SoftConsole 的插件。
為什么要學習 MCU?
即便 Linux 開發(fā)者并沒有計劃在 Cortex-M 上使用 uClinux,但是 MCU 的知識總會派上用場。特別是牽扯到復雜的 IoT 工程,需要擴展 MCU 終端至云端。
對于原型和業(yè)余愛好者的項目,Arduino 板為其訪問 MCU 提供了非常便利的接口。然而原型之外,開發(fā)者常常就會用更快的 32 位 Cortex-M 芯片以及所帶來的附加功能來替代 Arduino 板和板上的那塊 8 位 MCU ATmega32u4。這些附加功能包括改進的存儲器尋址,用于芯片和各種總線的獨立時鐘設置,以及芯片 Cortex-M7 自帶的入門級顯示芯片。
還有些可能需求 MCU 開發(fā)技術的地方包括可穿戴設備,低功耗、低成本和小尺寸給了 MCU 一席之地,還有機器人和無人機這些使用實時處理和電機控制的地方更為受用。在機器人上,你更是有可能看看 Cortex-A 與 Cortex-M 集成在同一個產(chǎn)品中的樣子。
對于 SoC 芯片還有這樣的一種溫和的局勢,即將 MCU 加入到 Linux 驅(qū)動的 Cortex-A 核心中,就如同 NXP i.MX6 SoloX。雖然大多數(shù)的嵌入式項目并不使用這種混合型 SoC 或者說將應用處理器和 MCU 結(jié)合在同一產(chǎn)品中,但開發(fā)者會漸漸地發(fā)現(xiàn)自己工作的生產(chǎn)線、設計所基于的芯片正漸漸的從低端的 MCU 模塊發(fā)展到 Linux 或安卓驅(qū)動的 Cortex-A。
uClinux 是 Linux 在 MCU 領域的籌碼
隨著物聯(lián)網(wǎng)的興起,我們見到越來越多的 SBC 和模塊計算機,它們在 32 位的 MCU 上運行著 uClinux。不同于其他的 Linux 發(fā)行版,uClinux 并不需要內(nèi)存管理單元(MMU)。然而,uClinux 對市面上可見 MCU 有更高的內(nèi)存需求。需求更高端的 Cortex-M4 和 Cortex-M4 微控制器內(nèi)置內(nèi)存控制器來支持外部 DRAM 芯片。
Amptek SBC 在 NXP LPC Cortex-M3 和 -M4 芯片上運行 uClinux,以提供常用的功能類似 WiFi、藍牙、USB 等眾多接口。Arrow 的 SF2+ 物聯(lián)網(wǎng)開發(fā)套件將 uClinux 運行于 SmartFusion2 模塊計算機的 Emcraft 系統(tǒng)上,該模塊計算機是 Microsemi 的 166MHz Cortex-M3/FPGA SmartFusion2 混合 SoC。
Emcraft 銷售基于 uClinux 的模塊計算機,有 ST 和 NXP 的,也有 Microsemi 的 MCU,是 32 位 MCU 上積極推進 uClinux 的重要角色。日益頻繁的 uClinux 開始了與 ARM 本身 Mbed OS的對抗,至少在高端的 MCU 工程中需要無線通信和更為復雜的操作規(guī)則。Mbed 和 modern 的支持者,開源的 RTOS 們,類似 FreeRTOS 認為 uClinux 需要對 RAM 的需求太高以至于難以壓低 IoT 終端的價格,然而 Emcraft 與其他 uCLinux 擁躉表示價格并沒有如此夸張,而且擴展 Linux 的無線和接口也是相當值得的,即使只是在像 uClinux 這樣的精簡版上。
當被問及對于這次 ST 發(fā)布的看法,Emcraft 的主任工程師 Vladimir Khusainov 表示:“ST決定將這款開發(fā)工具 移植至 Linux 對于 Emcraft 是個好消息,它使得 Linux 用戶能輕易的在嵌入式 STM MCU 上展開工作。我們希望那些有機會熟悉 STM 設備,使用 ST 配置器和嵌入式庫的用戶可能對在目標機上使用嵌入式 Linux (以 uClinux 的形式)感興趣。”
最近關于 Cortex-M4 上運行 uClinux 的概述,可以查看去年 Jim Huang 與 Jeff Liaws 在嵌入式 Linux 大會上使用的幻燈片。更多關于 Cortex-M 處理器可以查看這里過的 AnandTech 總結(jié)。
本文由 LCTT 原創(chuàng)翻譯,Linux中國 榮譽推出
總結(jié)
以上是生活随笔為你收集整理的64位 linux 32位连接器,意法半导体为 32 位微控制器发布了一款自由的 Linux 集成开发环境...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux ssh rpm包,RHEL6
- 下一篇: 余承东发朋友圈:智界S7预定过万 比问界