一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是MicroPython 它能做什么有什么局限

電子森林 ? 來(lái)源:電子森林 ? 作者: 蘇老師 ? 2021-10-12 11:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著Python成為主流的編程語(yǔ)言,MicroPython在嵌入式系統(tǒng)領(lǐng)域也越來(lái)越熱門(mén)起來(lái),尤其是大家喜愛(ài)的ESP32以及樹(shù)莓派基金會(huì)剛推出的基于RP2040微控制器Pico模塊都支持MicroPython。

作為一行代碼都不會(huì)寫(xiě)的板農(nóng),在很多時(shí)候覺(jué)得非常受限,發(fā)誓一定要找個(gè)時(shí)機(jī)好好學(xué)會(huì)一門(mén)編程語(yǔ)言,這不國(guó)慶7天的假期我都奉獻(xiàn)給了MicroPython,并在自己設(shè)計(jì)的Pico擴(kuò)展學(xué)習(xí)板上實(shí)現(xiàn)了板上所有外設(shè)的功能:

花式點(diǎn)燈 - 單色、RGB三色,各種組合,還可以按鍵和傳感器來(lái)控制

OLED屏幕上顯示文本、圖像、波形

音頻信號(hào)進(jìn)行數(shù)據(jù)采集并顯示在OLED屏幕上 - 做了一個(gè)炫酷的波形顯示

用板上的蜂鳴器奏響了“我和我的祖國(guó)”

移植了別人的代碼生成了任意波形 - 改變波形、改變頻率、改變幅度等等

。。。。

通過(guò)這7天的“探索”我自己最大的感觸就是,以MicroPython入門(mén)嵌入式系統(tǒng)實(shí)在是太方便了 - 豐富的開(kāi)源資源、多種形式的參考,比如視頻課程、文本案例等。

MicroPython確實(shí)是一個(gè)很好的編程語(yǔ)言 - 面向?qū)ο蟆㈧`活、簡(jiǎn)單、優(yōu)美!

我個(gè)人的學(xué)習(xí)得益于別人的分享(開(kāi)源)、傳遞知識(shí)最好的方式就是把自己所學(xué)、所悟也分享出去,因此我計(jì)劃上線一套基于Pico的Micro Python嵌入式編程教程,一個(gè)月以后正式開(kāi)播,當(dāng)然,前期會(huì)有15節(jié)PCB設(shè)計(jì)的直播課程帶著大家自己設(shè)計(jì)一款Pico的學(xué)習(xí)板,畢竟在打板都能免費(fèi)且包郵的便利大環(huán)境下,基于一個(gè)Pico核心板,未來(lái)每個(gè)人都可以通過(guò)自己設(shè)計(jì)PCB來(lái)做各種有趣的應(yīng)用出來(lái),學(xué)會(huì)PCB的設(shè)計(jì)也會(huì)讓嵌入式系統(tǒng)工程師如虎添翼。

從現(xiàn)在開(kāi)始陸續(xù)連載與這個(gè)課程相關(guān)的技術(shù)文章,今天是第一篇:

1. 什么是MicroPython

MicroPython是一個(gè)小型的開(kāi)源Python編程語(yǔ)言解釋器,運(yùn)行在小型嵌入式開(kāi)發(fā)板上。使用MicroPython,您可以編寫(xiě)干凈、簡(jiǎn)單的Python代碼來(lái)控制硬件,而不必使用復(fù)雜的底層語(yǔ)言,如C或c++Arduino用于編程)。

Python編程語(yǔ)言的簡(jiǎn)單性使MicroPython成為編程和硬件新手的理想選擇。MicroPython功能非常齊全,支持大多數(shù)Python語(yǔ)法,所以即使是經(jīng)驗(yàn)豐富的Python老手也會(huì)發(fā)現(xiàn)使用MicroPython很熟悉和有趣。

除了易于使用之外,MicroPython還有一些獨(dú)特的特性,使它有別于其它嵌入式系統(tǒng):

使用交互式解釋器:REPL(讀Read-評(píng)估Evaluate-打印Print-循環(huán)Loop) - 這允許你連接到一個(gè)板,并讓它執(zhí)行代碼,而不需要編譯或上傳-完美的快速學(xué)習(xí)和試驗(yàn)硬件!

豐富的軟件庫(kù) - 像普通的Python編程語(yǔ)言一樣,MicroPython內(nèi)置了非常多的庫(kù)來(lái)支持許多任務(wù)。例如,通過(guò)MicroPython的內(nèi)置庫(kù),可以很容易地解析來(lái)自Web服務(wù)的JSON數(shù)據(jù),使用正則表達(dá)式搜索文本,甚至進(jìn)行網(wǎng)絡(luò)套接字編程。

可擴(kuò)展性 - 對(duì)于高級(jí)用戶(hù)來(lái)說(shuō),MicroPython可以通過(guò)低級(jí)C/C++函數(shù)進(jìn)行擴(kuò)展,因此在需要時(shí),您可以將富有表現(xiàn)力的高級(jí)MicroPython代碼與更快的低級(jí)代碼混合使用。

MicroPython是Python 3語(yǔ)言的一個(gè)變種,其思想來(lái)源于劍橋大學(xué)的Darrien P. George博士,他與一個(gè)眾籌團(tuán)隊(duì)一起于2013年開(kāi)發(fā)了一款支持MicroPython的硬件開(kāi)發(fā)板 - 叫PyBoard,并于2014年的Python大會(huì)(PyCon)上提出了MicroPython1.0。George博士也建立了micro python.org網(wǎng)站(www.micropython.org)來(lái)支持MicroPython和Pyboard。

2. MicroPython能做什么?

MicroPython被設(shè)計(jì)用于快速有效地創(chuàng)建嵌入式系統(tǒng)控制程序。嵌入式系統(tǒng)可以簡(jiǎn)單定義為任何需要使用微控制器以滿(mǎn)足工程需要的工程。典型的嵌入式系統(tǒng)通常使用傳感器,有時(shí)會(huì)使用電子機(jī)械傳動(dòng)結(jié)構(gòu)與微控制器接口,它們可能附接有人機(jī)接口設(shè)備,便于交互,但是更多為自動(dòng)的,為單機(jī)運(yùn)行或連接至云端進(jìn)行遠(yuǎn)程訪問(wèn)。

就像Arduino板一樣,MicroPython可以控制硬件和連接的設(shè)備 - 可以控制GPIO引腳閃爍燈、讀取開(kāi)關(guān)以及更多;可以驅(qū)動(dòng)能夠驅(qū)動(dòng)伺服器、LED的PWM信號(hào); 能通過(guò)模數(shù)轉(zhuǎn)換器讀取讀取模擬傳感器的信息,與I2C或SPI設(shè)備通信也很容易,你甚至可以在一些板上找到網(wǎng)絡(luò)和WiFi支持。MicroPython甚至有用于控制其它硬件的庫(kù),如NeoPixels和LED條,微型OLED顯示器等等。簡(jiǎn)而言之,MicroPython可以做很多事情!

3. MicroPython有什么局限?

MicroPython有很少的限制,幾乎Arduino能做的任何事情都可以通過(guò)MicroPython板來(lái)完成。然而,需要注意的是,與類(lèi)似的Arduino或其它基于C/C++的底層代碼相比,MicroPython代碼沒(méi)有那么快,需要的內(nèi)存也可能更大,不過(guò)通常這并不重要,因?yàn)樗俣群蛢?nèi)存差異并不大,大多數(shù)的應(yīng)用不會(huì)受到影響。要注意的是,那些對(duì)時(shí)間或性能要求很?chē)?yán)格的代碼可能無(wú)法在MicroPython中工作。

例如,在MicroPython中完全使用軟件來(lái)驅(qū)動(dòng)IO管腳實(shí)現(xiàn)一些高速的串行通信協(xié)議可能不是最好的主意。然而,有一些方法可以混合MicroPython和低級(jí)C/C++代碼,這樣我們就可以同時(shí)擁有這兩個(gè)世界的優(yōu)點(diǎn) - 主要的邏輯是干凈且易于理解的MicroPython代碼,而性能關(guān)鍵部分使用更快的低級(jí)代碼編寫(xiě)的。

MicroPython語(yǔ)言實(shí)現(xiàn)了大部分核心Python 3語(yǔ)言,但是MicroPython不能實(shí)現(xiàn)整個(gè)Python 3標(biāo)準(zhǔn)庫(kù)。Python以擁有廣泛的標(biāo)準(zhǔn)庫(kù)而聞名,但是試圖將這么大的庫(kù)壓縮到只有千字節(jié)內(nèi)存的小板上是不可能的。相反,MicroPython實(shí)現(xiàn)了一些Python標(biāo)準(zhǔn)庫(kù)的更小版本,為我們提供了很棒的開(kāi)發(fā)體驗(yàn)。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4381

    瀏覽量

    64905
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70758
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86774
  • 解釋器
    +關(guān)注

    關(guān)注

    0

    文章

    103

    瀏覽量

    6768

原文標(biāo)題:嵌入式系統(tǒng)輕松入門(mén)(1)- MicroPython是什么?

文章出處:【微信號(hào):xiaojiaoyafpga,微信公眾號(hào):電子森林】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    什么是STM32? STM32與ARM什么關(guān)系? STM32能做什么?

    什么是STM32 具體用于什么方面較多?? STM32與ARM什么關(guān)系 STM32能做什么,簡(jiǎn)單的比如調(diào)節(jié)協(xié)議,為什么那么久的產(chǎn)品到現(xiàn)在還是主流?
    發(fā)表于 06-23 17:34

    昱櫟技術(shù)有限公司能做什么?

    工業(yè)設(shè)計(jì)·IndustrialDesign1.百人工程師專(zhuān)業(yè)設(shè)計(jì)團(tuán)隊(duì),上百家行業(yè)客戶(hù)的選擇;2.多年設(shè)計(jì)經(jīng)驗(yàn)積累,近千種產(chǎn)品設(shè)計(jì)案例;3.從市場(chǎng)調(diào)研,原型探索,模型創(chuàng)建,全流程設(shè)計(jì)準(zhǔn)備;4.精益求精,科學(xué)嚴(yán)謹(jǐn)?shù)脑敿?xì)設(shè)計(jì)過(guò)程;5.始終建立在以用戶(hù)需要為導(dǎo)向,體驗(yàn)為王的設(shè)計(jì)理念;6.最大化考慮產(chǎn)品成本及后期產(chǎn)業(yè)鏈服務(wù)與運(yùn)維;7.創(chuàng)新,創(chuàng)新,創(chuàng)新,用最先進(jìn)的技術(shù)幫
    的頭像 發(fā)表于 05-16 14:58 ?139次閱讀
    昱櫟技術(shù)有限公司<b class='flag-5'>能做什么</b>?

    請(qǐng)問(wèn)如何使用micropython在K230上使用usb攝像頭?

    如何使用micropython在K230上使用usb攝像頭?
    發(fā)表于 04-23 06:10

    開(kāi)關(guān)量對(duì)傳模塊能做什么

    開(kāi)關(guān)量對(duì)傳模塊是一種用于傳輸開(kāi)關(guān)信號(hào)(即“開(kāi)”或“關(guān)”、“高”或“低”、“1”或“0”等二進(jìn)制狀態(tài))的專(zhuān)用設(shè)備或模塊,通常用于工業(yè)控制、自動(dòng)化系統(tǒng)或遠(yuǎn)程監(jiān)控場(chǎng)景。它的核心功能是將開(kāi)關(guān)量信號(hào)通過(guò)有線或無(wú)線方式從一個(gè)位置傳輸?shù)搅硪粋€(gè)位置,實(shí)現(xiàn)遠(yuǎn)程控制或狀態(tài)反饋。 主要用途 1. 遠(yuǎn)程控制 - 控制設(shè)備啟停:通過(guò)傳輸開(kāi)關(guān)信號(hào),遠(yuǎn)程控制電機(jī)、閥門(mén)、燈光、繼電器等設(shè)備的啟動(dòng)或停止。 - 自動(dòng)化聯(lián)動(dòng):在自動(dòng)化生產(chǎn)線中,觸發(fā)其他設(shè)備
    的頭像 發(fā)表于 04-17 15:17 ?204次閱讀

    模擬量對(duì)傳模塊能做什么

    模擬量對(duì)傳模塊是一種用于連續(xù)信號(hào)傳輸?shù)脑O(shè)備,能夠?qū)⒛M量輸入(如電壓、電流、溫度、壓力等)通過(guò)有線或無(wú)線方式從一個(gè)位置傳輸?shù)搅硪粋€(gè)位置,并進(jìn)行高精度還原。與開(kāi)關(guān)量(離散信號(hào))不同,模擬量是連續(xù)變化的物理量,因此這類(lèi)模塊在需要精確測(cè)量或控制的場(chǎng)景中至關(guān)重要。 核心功能 1.信號(hào)傳輸與轉(zhuǎn)換 -模擬信號(hào)傳輸:將傳感器輸出的模擬信號(hào)(如4-20mA、0-10V、PT100熱電阻信號(hào)等)遠(yuǎn)距離傳輸?shù)絇LC、DCS或控制器。 -信號(hào)隔離與轉(zhuǎn)換:防止干擾,實(shí)現(xiàn)
    的頭像 發(fā)表于 04-17 15:16 ?272次閱讀

    峟思:什么是滲壓計(jì),使用滲壓計(jì)能做什么?

    、可靠、耐用的地下滲壓監(jiān)測(cè)利器!滲壓計(jì)是什么?滲壓計(jì)是一種用于測(cè)量巖土體或結(jié)構(gòu)內(nèi)部孔隙水壓力的專(zhuān)業(yè)儀器,相當(dāng)于給工程安裝了一雙"透視眼"。它能實(shí)時(shí)感知地下水壓的細(xì)微變化,幫助工程師判斷地
    的頭像 發(fā)表于 03-21 13:50 ?323次閱讀
    峟思:什么是滲壓計(jì),使用滲壓計(jì)<b class='flag-5'>能做什么</b>?

    如何為micropython添加自己的C代碼庫(kù)?

    部分代碼需要更高效的效率 如何為micropython添加自己的C代碼庫(kù)? 是否教程? 如果可以的話(huà)是否可以提供一個(gè)實(shí)現(xiàn)實(shí)例?
    發(fā)表于 03-11 07:03

    DLPC7540EVM整個(gè)色段周期80μs的時(shí)間RGB_EN都同時(shí)為低電平,請(qǐng)問(wèn)DLP在做什么工作或者預(yù)留的這80μs是什么用途?

    DLPC7540EVM整個(gè)色段周期80μs的時(shí)間RGB_EN都同時(shí)為低電平,請(qǐng)問(wèn)這個(gè)時(shí)間DLP在做什么工作或者預(yù)留的這80μs是什么用途?
    發(fā)表于 02-24 07:20

    TTS語(yǔ)音播報(bào)控制器能做什么?

    TTS(Text-to-Speech)語(yǔ)音播報(bào)控制器,作為一種能夠?qū)⑽谋拘畔⑥D(zhuǎn)換為語(yǔ)音輸出的技術(shù)設(shè)備,在現(xiàn)代社會(huì)的各個(gè)領(lǐng)域中展現(xiàn)出了廣泛的應(yīng)用前景。TTS技術(shù)的出現(xiàn),豐富人機(jī)交互的方式,提高信息傳播的效率和便捷性。 工作原理 文本語(yǔ)音:輸入文字自動(dòng)合成語(yǔ)音,支持任意中文、數(shù)字和英文字母。 語(yǔ)音播放:支持wav格式文件,可播放音樂(lè)或錄音文件。 協(xié)議支持:支持AT指令和Modbus RTU/TCP協(xié)議,方便接入各種播報(bào)系統(tǒng)可接入PLC、組態(tài)屏。 應(yīng)用功能 智能化控制:通過(guò)
    的頭像 發(fā)表于 02-20 18:18 ?699次閱讀

    典型的氧化局限面射型雷射結(jié)構(gòu)

    為了改善上述蝕刻柱狀結(jié)構(gòu)以及離子布植法制作面射型雷射的缺點(diǎn),在1994年從德州大學(xué)奧斯丁分校獲得博士學(xué)位的D.L. Huffaker 首次發(fā)表利用選擇性氧化電流局限(selective oxide confined) 技術(shù)制作面射型雷射電流局限孔徑[7]。
    的頭像 發(fā)表于 01-21 13:35 ?487次閱讀
    典型的氧化<b class='flag-5'>局限</b>面射型雷射結(jié)構(gòu)

    超高頻讀寫(xiě)器究竟是什么,能做什么?一文讀懂!

    在物聯(lián)網(wǎng)技術(shù)日新月異的今天,超高頻讀寫(xiě)器作為射頻識(shí)別(RFID)技術(shù)的重要組成部分,正逐漸滲透到我們生活的各個(gè)領(lǐng)域。那么,超高頻讀寫(xiě)器究竟是什么?它又能做些什么呢?本文將帶您一探究竟。一、超高頻
    的頭像 發(fā)表于 10-23 14:41 ?786次閱讀
    超高頻讀寫(xiě)器究竟是什么,<b class='flag-5'>能做什么</b>?一文讀懂!

    使用TAS5754m的單聲道模式需要軟件上做什么配置嗎?

    使用TAS5754m的單聲道模式需要軟件上做什么配置嗎?我在手冊(cè)沒(méi)有看到相關(guān)描述,是自動(dòng)識(shí)別的嗎?
    發(fā)表于 10-23 08:33

    除了連接設(shè)備,TYPE-C口還能做什么?

    在數(shù)字化時(shí)代,Type-C接口以其卓越的性能和廣泛的應(yīng)用,已經(jīng)成為了現(xiàn)代電子設(shè)備不可或缺的一部分。它不僅僅是一個(gè)簡(jiǎn)單的連接端口,更是一個(gè)多功能、高效率的傳輸和充電解決方案。今天,讓我們來(lái)一起探索Type-C接口的多用途應(yīng)用,以及它如何為我們的生活和工作帶來(lái)便利。 首先,Type-C接口的可逆插拔性徹底解決了傳統(tǒng)USB接口插反的困擾,這一設(shè)計(jì)上的革新極大地提升了用戶(hù)體驗(yàn)。它的雙向插入功能,使得連接更加方便快捷,減少了因插拔不當(dāng)導(dǎo)致
    的頭像 發(fā)表于 10-14 16:04 ?1302次閱讀

    《DNK210使用指南 -CanMV版 V1.0》第七章 基于CanMV的MicroPython語(yǔ)法開(kāi)發(fā)環(huán)境搭建

    第七章 基于CanMV的MicroPython語(yǔ)法開(kāi)發(fā)環(huán)境搭建 前面章節(jié)中已經(jīng)介紹了如何編譯CanMV固件,并將編譯好的CanMV固件燒錄至Kendryte K210,本章將介紹如何在Windows
    發(fā)表于 09-13 09:30

    WDM技術(shù)的缺點(diǎn)和局限

    和效率。然而,盡管WDM技術(shù)具有諸多優(yōu)勢(shì),但它也存在一些缺點(diǎn)和局限性。以下是對(duì)WDM技術(shù)缺點(diǎn)和局限性的詳細(xì)分析:
    的頭像 發(fā)表于 08-09 11:42 ?1617次閱讀