国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

使用 Python 來開發(fā) STM32F411 !

發(fā)布時間:2020-5-11 17:11    發(fā)布者:嵌入式人生17
使用 Python 來開發(fā) STM32F411 !
MicroPython是什么
程序猿中有句俗語:
人生苦短,我用Python
Python的強大和易用性讓它不僅可以寫網(wǎng)站,編程序,在嵌入式領(lǐng)域也有一席之地。
MicroPython,是Python3編程語言的一個完整軟件實現(xiàn),包括Python標準庫的一小部分,用C語言編寫,經(jīng)過優(yōu)化可在微控制器和受限環(huán)境中運行。MicroPython是運行在微控制器硬件之上的完全的Python編譯器和運行時系統(tǒng)。提供給用戶一個交互式提示符(REPL)來立即執(zhí)行所支持的命令。除了包括選定的核心Python庫,MicroPython還包括了給予編程者訪問低層硬件的模塊。
§
MicroPython官方網(wǎng)站:MicroPython - Python for microcontrollers
§
§
MicroPython中文社區(qū):micropython - 中文社區(qū)
§
MicroPython支持的開發(fā)板
從官方網(wǎng)站我們可以了解到,官方開發(fā)板主要有以下幾種:
§
PYB Nano V1.1基于STM32F401
§
§
PYB Nano V2基于STM32F411
§
§
PyBoard CN V2基于STM32F405
§
§
MicroPython ESP32
§
另外還支持其他系列的開發(fā)板:
§
WiPy
§
§
ESP8266 boards
§
§
ESP32 boards
§
§
STM32F4 Discovery board
§
§
NUCLEO-F401RE board
§
§
NUCLEO-F411RE board
§
§
NUCLEO-F767ZI board
§
§
NUCLEO-L476RG board
§
§
Espruino Pico
§
MicroPython移植和板子關(guān)系不大,主要支持的是芯片,如果自己的板子芯片是上面的這些型號,也可以刷MicroPython固件,對應的IO口需要更改,而且需要重新編譯生成對應的固件。具體操作方法可以查看:官方Github地址:https://github.com/micropython/micropython,里面包括了源代碼和Linux下的編譯方法。開發(fā)板固件下載:MicroPython downloads
Nucleo-F411RE移植MicroPython固件
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps1.png
正好MicroPython支持本次申請的Nucleo-F411RE開發(fā)板,就試著把刷成MicroPython的固件,嘗試一下使用Python來開發(fā)STM32,具體移植過程。
1.準備工作
§
支持Nucleo-F411REMicroPython固件:NUCLEO_F411RE-20190604-v1.11-25-gce8262a16.dfu
§
§
用于STM32 DFU下載的軟件:STSWSTM32080V3.0.6.zip
§
§
PUTTY串口終端:putty-64bit-0.71-installer.msi
§
2.安裝Dfu下載軟件
下載完成后,安裝DFU下載軟件DfuSeDemo,非常簡單,一路Next就行,在選擇安裝目錄時,可以選擇非系統(tǒng)盤。
3.硬件連接
由于Nucleo-F411RE板子的USB口是連接到ST-Link調(diào)試器,并沒有一個連接到STM32 USB引腳的接口,所以我使用的是這種轉(zhuǎn)接板,把USB的5個信號轉(zhuǎn)接成5個排針,并和板子上的引腳連接:
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps2.png
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps3.png
4.燒錄MicroPython固件
和串口下載程序一樣,使用DFU燒錄固件前,也要先把STM32切換為系統(tǒng)存儲器啟動模式:即下載模式。上電之前要先設置BOOT0=1,BOOT1(PB2)=0,然后燒錄MicroPython固件。
§
設置完成之后,連接電腦,設備管理會出現(xiàn)一個DFU設備
§
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps4.png
§
打開DfuSeDemo軟件,選擇已經(jīng)下載的固件:NUCLEO_F411RE-20190604-v1.11-25-gce8262a16.dfu
§
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps5.png
§
點擊Upgrade升級,在彈出的界面,點擊
§
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps6.png
§
等待升級完成,斷電,把BOOT短接線拔掉,重新上電。
§
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps7.png
5.安裝Putty
安裝Putty,打開串口終端,選擇ST-Link虛擬串口號,波特率115200
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml16188\wps8.png
按一下板子上的黑色復位按鍵,串口輸出:
00001.
MicroPython v1.11-12-g6077d1715 on 2019-06-03; NUCLEO-F411RE with STM32F411xE
00002.
00003.
Type "help()" for more information.
00004.
00005.
>>> help()
00006.
00007.
Welcome to MicroPython!
00008.
00009.
00010.
00011.
For online help please visit http://micropython.org/help/.
00012.
00013.
00014.
00015.
Quick overview of commands for the board:
00016.
00017.
pyb.info() -- print some general information
00018.
00019.
pyb.delay(n) -- wait for n milliseconds
00020.
00021.
pyb.millis() -- get number of milliseconds since hard reset
00022.
00023.
pyb.Switch() -- create a switch object
00024.
00025.
Switch methods: (), callback(f)
00026.
00027.
pyb.LED(n) -- create an LED object for LED n (n=1,2,3,4)
00028.
00029.
LED methods: on(), off(), toggle(), intensity()
00030.
00031.
pyb.Pin(pin) -- get a pin, eg pyb.Pin('X1')
00032.
00033.
pyb.Pin(pin, m, [p]) -- get a pin and configure it for IO mode m, pull mode p
00034.
00035.
Pin methods: init(..), value([v]), high(), low()
00036.
00037.
pyb.ExtInt(pin, m, p, callback) -- create an external interrupt object
00038.
00039.
pyb.ADC(pin) -- make an analog object from a pin
00040.
00041.
ADC methods: read(), read_timed(buf, freq)
00042.
00043.
pyb.DAC(port) -- make a DAC object
00044.
00045.
DAC methods: triangle(freq), write(n), write_timed(buf, freq)
00046.
00047.
pyb.RTC() -- make an RTC object; methods: datetime([val])
00048.
00049.
pyb.rng() -- get a 30-bit hardware random number
00050.
00051.
pyb.Servo(n) -- create Servo object for servo n (n=1,2,3,4)
00052.
00053.
Servo methods: calibration(..), angle([x, [t]]), speed([x, [t ]])
00054.
00055.
pyb.Accel() -- create an Accelerometer object
00056.
00057.
Accelerometer methods: x(), y(), z(), tilt(), filtered_xyz()
00058.
00059.
00060.
00061.
Pins are numbered X1-X12, X17-X22, Y1-Y12, or by their MCU name
00062.
00063.
Pin IO modes are: pyb.Pin.IN, pyb.Pin.OUT_PP, pyb.Pin.OUT_OD
00064.
00065.
Pin pull modes are: pyb.Pin.PULL_NONE, pyb.Pin.PULL_UP, pyb.Pin.PULL_DOWN
00066.
00067.
Additional serial bus objects: pyb.I2C(n), pyb.SPI(n), pyb.UART(n)
00068.
00069.
00070.
00071.
Control commands:
00072.
00073.
CTRL-A -- on a blank line, enter raw REPL mode
00074.
00075.
CTRL-B -- on a blank line, enter normal REPL mode
00076.
00077.
CTRL-C -- interrupt a running program
00078.
00079.
CTRL-D -- on a blank line, do a soft reset of the board
00080.
00081.
CTRL-E -- on a blank line, enter paste mode
00082.
00083.
00084.
00085.
For further help on a specific object, type help(obj)
00086.
00087.
For a list of available modules, type help('modules')
00088.
00089.
>>>
00090.
6.開始Python開發(fā)之旅——點亮一個LED
點亮板載的綠色LED,串口輸入命令點亮和熄滅LED
00001.
>>> pyb.LED(1).on()
00002.
00003.
>>> pyb.LED(1).off()
00004.
00005.
>>> pyb.LED(1).on()
00006.
00007.
>>>
00008.
更多Python控制外設的命令:Quick reference for the pyboard:
http://docs.micropython.org/en/latest/pyboard/quickref.html
一些問題
官方介紹移植成功之后,會在電腦上顯示一個PYBFLASH的盤符,但是我這次移植并沒有出現(xiàn),不知道是什么問題。
參考資料
§
Micropython學習(二)STM32移植:
§

本文地址:http://m.qingdxww.cn/thread-588309-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉(zhuǎn)USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 青青青激情视频在线最新 | 国产三级第一页 | 中文字幕一区二区三区久久网站 | 久久这里只有精品23 | 午夜色视频在线观看 | 久草成人在线视频 | 97精品国产97久久久久久 | 久久99国产精品二区不卡 | 国产白嫩在线 | 看片日韩 | 恐怖片大全免费观看 | 国产欧美日韩综合精品一区二区 | 天天夜夜狠狠一区二区三区 | 精品在线观看一区 | 国产成人啪精品午夜在线观看 | 日韩精品视频免费网址 | 国产亚洲欧美在线视频 | 色花堂你懂的国产第一页 | 亚洲国产日韩在线人成下载 | 婷婷综合视频 | 免黄网站 | 国产成人经典三级在线观看 | 成人黄色在线 | 国产黄色片在线免费观看 | 亚洲国产成人精品女人久久久 | 四虎国产精品免费久久麻豆 | 国产91香蕉在线精品 | 麻豆高清在线 | 日韩视频免费观看 | 国产精品欧美一区二区三区 | 日韩一区二区三区在线视频 | 日韩一级大片 | 自拍偷拍亚洲视频 | 亚洲成人www | 天堂色| 黄色视屏免费观看 | 青青国产成人久久激情911 | 97一级毛片全部免费播放 | 婷婷综合国产激情在线 | 色婷婷影院 | 国产精品永久在线 |