STM32C071和GUI是什么關(guān)系?如何基于STM32C071創(chuàng)建應(yīng)用?
微控制器能夠根據(jù)預(yù)設(shè)程序?qū)Ω鞣N設(shè)備進(jìn)行控制,例如智能家電、工業(yè)自動(dòng)化設(shè)備等,而STM32C071便是微控制器中的一種。為增進(jìn)大家對(duì)STM32C071的認(rèn)識(shí),本文將對(duì)STM32C071的方方面面予以介紹。如果你對(duì)STM32C071具有興趣,不妨和小編一起來(lái)繼續(xù)往下閱讀哦。
一、什么是微控制器
微控制器是將微型計(jì)算機(jī)的主要部分集成在一個(gè)芯片上的單芯片微型計(jì)算機(jī)。微控制器誕生于20世紀(jì)70年代中期,經(jīng)過(guò)20多年的發(fā)展,其成本越來(lái)越低,而性能越來(lái)越強(qiáng)大,這使其應(yīng)用已經(jīng)無(wú)處不在,遍及各個(gè)領(lǐng)域。例如電機(jī)控制、條碼閱讀器/掃描器、消費(fèi)類電子、游戲設(shè)備、電話、HVAC、樓宇安全與門禁控制、工業(yè)控制與自動(dòng)化和白色家電(洗衣機(jī)、微波爐)等。
微控制器(Microcontroller Unit,即MCU)可從不同方面進(jìn)行分類:根據(jù)數(shù)據(jù)總線寬度可分為8位、16位和32位機(jī);根據(jù)存儲(chǔ)器結(jié)構(gòu)可分為Harvard結(jié)構(gòu)和Von Neumann結(jié)構(gòu);根據(jù)內(nèi)嵌程序存儲(chǔ)器的類別可分為OTP、掩膜、EPROM/EEPROM和閃存Flash;根據(jù)指令結(jié)構(gòu)又可分為CISC(Complex Instruction Set Computer)和RISC(Reduced Instruction Set Computer)微控制器。
微處理器是20世紀(jì)偉大的技術(shù)創(chuàng)新之一,由此而衍生的微控制器將微處理器和外設(shè)集于一身,為多種應(yīng)用開(kāi)創(chuàng)了新局面,并將繼續(xù)發(fā)揮不可替代的作用。
二、STM32C071讓GUI更普及
通常,基于STM32C071的圖顯系統(tǒng)成本包括一個(gè)沒(méi)有觸摸功能的2.4 TFT顯示器、STM32C071、4MB外部閃存,采用2層PCB設(shè)計(jì),BOM成本大約5美元。這樣的BOM成本和芯片性能讓更多的嵌入式系統(tǒng)用得起GUI,比如很多用按鍵或數(shù)碼管顯示的小家電,可以升級(jí)為圖顯系統(tǒng),突出產(chǎn)品優(yōu)勢(shì)。
以電飯煲UI為例,基于TouchGFX 軟件工具開(kāi)發(fā)的代碼僅102KB,而部分幀緩沖區(qū)和UI框架需要20.8KB的RAM。GUI應(yīng)用程序大約需要900KB的外部閃存,而STM32C071的SPI接口提供了足夠的帶寬防止畫面卡頓。
當(dāng)開(kāi)發(fā)者選型時(shí),如果需要STM32G0的降維產(chǎn)品,STM32C071是非常好的選擇,它彌合了STM32C0其他系列與STM32G0的性能差,擁有一個(gè)USB控制器、新增的SPI和I2C接口、一個(gè)32位定時(shí)器,相比STM32C011、STM32C031子產(chǎn)品線,可以實(shí)現(xiàn)更多功能。STM32C071新增64引腳封裝,所有封裝與STM32G0引腳全兼容。
三、從STM32C0開(kāi)始創(chuàng)建入門級(jí)應(yīng)用
盡管8位MCU還有一定的市場(chǎng)份額,但多數(shù)情況下,選用8位MCU的終極原因是價(jià)格。開(kāi)發(fā)者為了降低BOM成本而選用8位MCU,但在降低成本的表象背面是忽略了8位架構(gòu)后期的高昂潛在成本,也就是說(shuō)可升級(jí)性極為有限。
開(kāi)發(fā)者在MCU選型階段,會(huì)計(jì)算目標(biāo)系統(tǒng)需要的內(nèi)存、計(jì)算吞吐量、引腳等,如果選用8位MCU,后續(xù)升級(jí)的可能性幾近于零;8位MCU的固有局限性也意味著開(kāi)發(fā)者必須對(duì)多個(gè)設(shè)備進(jìn)行資質(zhì)認(rèn)證,這往往會(huì)拉長(zhǎng)產(chǎn)品上市時(shí)間,錯(cuò)失市場(chǎng)先機(jī)。同時(shí),嵌入式應(yīng)用市場(chǎng)以不可逆的迭代方式從8位向32位MCU邁進(jìn),在這樣的市場(chǎng)條件下還堅(jiān)持選用8位MCU,那么后續(xù)升級(jí)到32位時(shí),以前的軟件棧和現(xiàn)有代碼都不可復(fù)用,需要重新開(kāi)發(fā)。
因此,開(kāi)發(fā)者從現(xiàn)在開(kāi)始,用新型32位MCU STM32C0開(kāi)始創(chuàng)建入門級(jí)應(yīng)用是一個(gè)明智的選擇。作為一款用于入門級(jí)應(yīng)用的新型微控制器STM32C0系列,其價(jià)格與8位MCU一樣便宜,基于Cortex-M0+內(nèi)核,主頻為48 MHz,CoreMark跑分114分,各方面性能遠(yuǎn)超8位MCU。STM32軟硬件生態(tài)全面兼容STM32C0,這將為開(kāi)發(fā)者帶來(lái)極大的便利性。
為了幫助工程師盡可能高效地將系統(tǒng)從8位MCU升級(jí)到32位MCU,ST發(fā)布了一份從STM328L或STM328S遷移到STM32C0的應(yīng)用筆記,這份文檔不僅詳細(xì)詮釋了外圍設(shè)備遷移方法,同時(shí)還表明,多數(shù)情況下,8位遷移到32位架構(gòu)通常意味著代碼大小僅增加6%至15%。STM32的軟件開(kāi)發(fā)環(huán)境,如STM32CubeMX 和 STM32CubeIDE等軟件工具、STM32CubeProgrammer等調(diào)試軟件或STM32Cube expansion packages 會(huì)大幅優(yōu)化工作流程,可以方便地重用代碼或模塊,加快開(kāi)發(fā)速度。
此外,值得一提的是,開(kāi)發(fā)者如果選用了STM32C0,當(dāng)產(chǎn)品性能需要升級(jí)時(shí),可快速遷移到STM32G0,兩者擁有相同的Vdd和Vss電源,相似的ADC、定時(shí)器和高速RC振蕩器,引腳全兼容,無(wú)需添加外部組件。
以上就是小編這次想要和大家分享的有關(guān)STM32C071的內(nèi)容,希望大家對(duì)本次分享的內(nèi)容已經(jīng)具有一定的了解。如果您想要看不同類別的文章,可以在網(wǎng)頁(yè)頂部選擇相應(yīng)的頻道哦。