STC16F單片機(jī)是STC新推出的一款16位單片機(jī),功能強(qiáng)大,有40K內(nèi)存、128K Flash,內(nèi)置USB/PWM/ADC/SPI/IIC/CAN/LIN等外設(shè),可以簡單理解為STC8H的高性能版本。
目前,STC16F40K128-LQFP64已經(jīng)開始送樣。STC16的特點(diǎn)是:16位8051,準(zhǔn)32位機(jī),多累加器結(jié)構(gòu),CAN/Lin,16位加減乘除指令,再高配32位乘除單元,單精度浮點(diǎn)運(yùn)器,計(jì)算能力直指M4,力壓M3,橫推M0。
根據(jù)部分宏晶供應(yīng)商介紹,實(shí)際上STC16是個(gè)32位的8051,為了編譯器,被閹割成16位機(jī),內(nèi)部32位訪問,用戶看到的是16位。傳統(tǒng)8051的位都支持,后續(xù)版本加強(qiáng)擴(kuò)充的位。
供應(yīng)商表示,STC16是STC8051的自然延伸,管腳兼容,擁有相同時(shí)鐘頻率,是碾壓M0的存在。M0是閹割的16位機(jī),還沒除,位操作不方便。STC16有指令集16位乘除,再加 32位乘除單元和單精度浮點(diǎn)運(yùn)算器,ARM的話直接上STC32M4。
不過,近期,一位21ic壇友提出了靈魂拷問,引發(fā)了網(wǎng)友的討論。
用戶 tzgok 表示,在看了幾天STC16F的資料,感覺如下這2個(gè)主要問題不解決,國內(nèi)的技術(shù)員很難全面使用它。
1、開發(fā)環(huán)境問題: 如果后續(xù)得不到KEIL全面的編譯和調(diào)試支持,開發(fā)和使用會很麻煩,至于第三方提供的“圖形化編程”,這玩意只適合學(xué)生玩玩,套用老姚的話就是,“不要和趨勢作對,你要跟著行情走”,目前KEIL就是趨勢,而且KEIL這20多年累積的經(jīng)驗(yàn),不是任何一個(gè)新出的小軟件可以替代的,更何況全球無數(shù)的技術(shù)員在使用它。
2、芯片性能問題: STC16F本身定位為16位MCU,但最高工作頻率只有33MHZ,這太雞肋了,如果不能運(yùn)行到100MHZ以上,那么16位MCU就毫無優(yōu)勢,因?yàn)?6位的目標(biāo)應(yīng)該是:價(jià)格和功耗接近8位機(jī),功能和速度接近32位機(jī)。現(xiàn)在連STC8H都跑到48MHZ了,更別說100MHZ的C8051F120,而STC16F居然只有33MHZ,這個(gè)太遺憾,說難聽點(diǎn),這個(gè)運(yùn)行速度就是——雞肋。
用戶autopccopy認(rèn)為,STC16 就是增強(qiáng)INTEL C251內(nèi)核,當(dāng)然使用 KEIL 四駕馬車之一 的C251 完善支持。速度稱以后會72M-140M!一步一步來。既有高速度也有開發(fā)的便利性,STC16承上啟下。打通8-16-32的產(chǎn)品線。
但tzgok 認(rèn)為,目前STC16還有四個(gè)痛點(diǎn): 1、目前無法在線仿真。
2、目前的有效FLASH是60K可用,另外60K無法使用。
3、要到后期版本才推出更高頻率的版本。 4、目前的EEPROM/IAP也不能用;以后會增加DMA功能。
“STC的51就是攪局兒的,雖然我用了10年STC,但最后還是放棄了,因?yàn)樵?jīng)給予很多希望,但最后發(fā)現(xiàn)這家伙就是個(gè)混世魔王,從頭到尾不能仿真,我就不了解為啥還有些人在使用,現(xiàn)在我轉(zhuǎn)向了深圳賽元的,能仿真,手冊例程非常正規(guī),用的很爽”,用戶taobaofarmer 無奈說出心聲。
他還說:“我在用國產(chǎn)賽元8051,性能很高,文檔例程寫的很好,有自己的仿真器,仿真很完善,整個(gè)產(chǎn)業(yè)鏈都挺完善的,不像STC,官網(wǎng)亂的跟一窩螞蟻似的,永遠(yuǎn)不能仿真,市場就是這樣,總是用先進(jìn)的價(jià)格低廉的東西淘汰老舊落后的東西,STC估計(jì)也蹦噠不了多久了,但因?yàn)檫€是有一批學(xué)習(xí)能力差的不能升級的用戶,等到這批用戶再被淘汰了,那STC倒閉也就差不多到時(shí)候了?!?/span>
用戶coody 表示,這幾天測試了STC16F的樣片,使用KEIL C251的編譯器,主要是測試其擴(kuò)展的硬件整數(shù)運(yùn)算單元、硬件單精度浮點(diǎn)單元,單精度浮點(diǎn)運(yùn)算速度比不帶硬件浮點(diǎn)的M0、M3快得多。整數(shù)運(yùn)算速度速度也很快。
測試了DFT、FFT、Goertzel濾波算法軟解DTMF,采樣市電交流電壓電流計(jì)算電壓電流有效值、有功功率、功率因素。
其中FFT運(yùn)算最耗時(shí)間,跑30MHz,ADC使用32K采樣,256點(diǎn)FFT(8ms),頻點(diǎn)分頻率125Hz,int整數(shù)運(yùn)算,蝶形計(jì)算時(shí)間為4.24ms,128頻點(diǎn)幅度計(jì)算為0.7ms,計(jì)算過程中,ADC會持續(xù)32K采樣。這個(gè)速度非常滿意,F(xiàn)FT分析是實(shí)時(shí)連續(xù)的。
數(shù)字濾波也比較耗時(shí)間,我常用8階IIR數(shù)字濾波器,32位有符號整數(shù)運(yùn)算耗時(shí)20us,這個(gè)非常好,滿足40KHz以內(nèi)的采樣速度要求。單精度運(yùn)算耗時(shí)53us,已經(jīng)滿足低速的要求(采樣16KHz以下)。
“我覺得 STC 最大的絆腳石,是沒有完善的庫函數(shù)。51芯片寄存器少,做大一點(diǎn)的項(xiàng)目已經(jīng)有些復(fù)雜了,更不用說 STC16、ARM 和 RISC-V 了。如果官方一直不給庫函數(shù),那將是開發(fā)者的噩夢,將會限制芯片的推廣”,用戶guysxpf 這樣說。
你怎么看待STC16以及STC本身?歡迎留言交流。
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!