卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

python學(xué)習(xí)交互模式 micropython是用python寫的嗎?

micropython是用python寫的嗎?MicroPython本來是為嵌入式微處理器設(shè)計(jì)運(yùn)行的,比如也可以在nRF51822 (256kB flash 16kB RAM)的芯片上運(yùn)行,也有人慌慌

micropython是用python寫的嗎?

MicroPython本來是為嵌入式微處理器設(shè)計(jì)運(yùn)行的,比如也可以在nRF51822 (256kB flash 16kB RAM)的芯片上運(yùn)行,也有人慌慌張張?jiān)赟TM32F103上運(yùn)行。拜托,從代碼的角度來說,Python函數(shù)棧的官方默認(rèn)是16K RAM,也就是說它可以在很多微芯片上提供一個(gè)極小的Python代碼交互環(huán)境,但這并不包括它們的擴(kuò)展函數(shù)。畢竟編譯更多的功能代碼意味著。需要更多的閃存或外部存儲。

高度和寬度

根據(jù)定位場景,我們可以看到MicroPython在硬件深度上可以走向超低功耗芯片開發(fā)領(lǐng)域,Python語言的開發(fā)模式?jīng)Q定了它的軟件寬度,在全世界流行的Python領(lǐng)域都可以借鑒。參考一下,這帶來了很多改變,比如改變了以前的硬件測試流程和開發(fā)流程,改變了硬件程序開發(fā)難的刻板印象,后面會詳細(xì)介紹。

Arduino(C)

基于c代碼的設(shè)計(jì)

它的優(yōu)勢是兼容C,可以無縫訪問ESP-IDF。

大量的遺留代碼庫可以直接集成使用。

近年來外設(shè)硬件庫質(zhì)量大打折扣,導(dǎo)致硬件開發(fā)后缺乏穩(wěn)定性。

Java description language

常見于Ruff lite、JerryScript等。

一個(gè)新的東西,類似于MicroPython的結(jié)構(gòu)。

支持JS異步驅(qū)動事件模型要求芯片必須有系統(tǒng)(RTOS)。

在硬件上使用瀏覽器開發(fā)方法。

硬件驅(qū)動相關(guān)的支持庫比較薄弱,所以基于它深耕硬件接口的開發(fā)者并不多。

相關(guān)開發(fā)資料和代碼不夠穩(wěn)定。

Left upper arm

與MicroPython和JerryScript相比,它的可移植性更簡單。

如倉庫:

但因?yàn)閘ua是小眾語言,所以地位和bat、bash差不多。

所以它在開發(fā)和應(yīng)用領(lǐng)域不是很受歡迎,但作為一個(gè)自動化腳本工具,它仍然很棒。

基本沒有周邊相關(guān)的開發(fā)資料,了解lua的大多是自戀的,比如我(大概)。

ESPEasy

大概是一個(gè)開發(fā)環(huán)境,類似于路由器系統(tǒng)(openwrt)。

It 除了好玩之外,它一無是處。

像這樣的固件還有很多,所以我贏了。;這里就不舉例了。

esp-idf

硬件開發(fā)芯片廠商一般提供SDK,esp32提供的多為esp-idf、esp-adf、esp-mdf等等,對應(yīng)的stm32 hal或CC25XX棧為原生。c代碼SDK。

上述開發(fā)環(huán)境是基于這種持續(xù)開發(fā)所獲得的產(chǎn)品。

在上述對各種開發(fā)環(huán)境的初步了解之后,讓 下面我們來比較一下MicroPython的優(yōu)缺點(diǎn)。

Advantages and disadvantages of microfilaments

不難看出,MicroPython和Python一樣,發(fā)揮了glue語言的優(yōu)勢,最大限度地兼容并保持了各自的優(yōu)勢,減少了劣勢。

在動態(tài)語言大戰(zhàn)中,MicroPython保持了面向進(jìn)程、對象、節(jié)和函數(shù)的編程語法,豐富的開發(fā)帶來了代碼開發(fā)的廣度。另一方面,lua從語法上砍掉了很多開發(fā)中常用的語法糖,大大削減了代碼量。從開箱即用的角度來看,MicroPython迎合了大多數(shù)開發(fā)者的拿來主義(我?)。

與JavaScript相比,Python沒有。;在性能上沒有太多優(yōu)勢。唯一的優(yōu)勢是Js s編程思維很長一段時(shí)間不適合面向過程領(lǐng)域的C語言硬件編程,比如串口收發(fā)機(jī)。在Js中,在基于的異步事件綁定模型下,需要設(shè)置一些回調(diào)函數(shù)等待處理。在MicroPython中,通過多線程可以實(shí)現(xiàn)Js效果,但是通過While無限循環(huán)輪詢或者不使用多線程的非阻塞狀態(tài)機(jī)也可以實(shí)現(xiàn)同樣的功能。后者 s無限循環(huán)是嵌入式c中常見的編程習(xí)慣,然而在JS的硬件編程中,如果一個(gè)函數(shù)出現(xiàn)無限循環(huán),那真的是災(zāi)難,所有后臺線程都可以 t run,但是無限循環(huán)的開發(fā)確實(shí)不好,建議多開發(fā)硬件。編寫異步驅(qū)動程序代碼或狀態(tài)機(jī)代碼來提高IO性能。

所以在眾多動態(tài)語言中,MicroPython與C語言的兼容性最好,在編程中也是如此。同時(shí),向后兼容語言吸收了優(yōu)秀上層代碼的精華,尤其是異常機(jī)制和動態(tài)類型。

此時(shí),與C或C語言相比,MicroPython犧牲了部分執(zhí)行性能,返回C的每段Python代碼平均執(zhí)行函數(shù)操作增加了5 us左右,這是我寫軟串口時(shí)發(fā)現(xiàn)的,但也帶來了解釋器連接。通過動態(tài)調(diào)整執(zhí)行接口的參數(shù),加速了硬件程序的驗(yàn)證和開發(fā)。

在硬件程序的主控開發(fā)中,我們經(jīng)常會面臨大量的硬件API通信調(diào)試,就像在網(wǎng)絡(luò)服務(wù)中調(diào)試HTTP API,在硬件中控制UART、I2C、SPI、RS485、CAN等從設(shè)備,使得用Micropthon開發(fā)驗(yàn)證比用C和Arduino快。畢竟他們每次編譯2分鐘,運(yùn)行10秒,而Micropthon燒2分鐘,然后每5秒運(yùn)行一次。反復(fù)操作,這也得益于MicroPython的硬件外設(shè)驅(qū)動開發(fā)相當(dāng)可靠穩(wěn)定(其實(shí)也是ESP-IDF穩(wěn)定可靠XD的原因)。

所以我可以在幾個(gè)小時(shí)內(nèi)調(diào)試別人花一天調(diào)試的硬件接口,尤其是多機(jī)協(xié)議的重復(fù)測試接口,比如Modbus readaddr或者這種接口。當(dāng)然,上面提到的開發(fā)甚至是封裝成AT指令的接口。模式也可以,但是更復(fù)雜的后續(xù)邏輯操作可以在Python解釋器的基礎(chǔ)上編寫,而不是調(diào)試AT固件的指定接口形式。

總而言之,MicroPython s硬件開發(fā)狀態(tài)處于硬件開發(fā)的初步驗(yàn)證和原始開發(fā)階段,后期大部分會轉(zhuǎn)回C。在軟件領(lǐng)域,有大量的邏輯樣本代碼供硬件開發(fā)調(diào)用和測試,對于硬件開發(fā)人員來說會收獲更多。多控硬件的方讓軟件人員更容易配合硬件人員開發(fā)調(diào)試硬件。

標(biāo)簽

Python如何畫出交互式漏斗圖?

pyecharts中的漏斗功能可以繪制漏斗圖,根據(jù)數(shù)據(jù)大小自動生成自上而下排列的漏斗狀圖形。

工具/原材料pythonpyecharts方法/步驟導(dǎo)入到漏斗模塊。

Import funnel from pyecharts

初始化圖形參數(shù)。

Funnel funnel (funnel diagram