轉載請注明:@小五義http://www.cnblogs.com/xiaowuyi QQ群:64770604
會python就能做硬件!
一、TPYBoard V102開發板
TPYBoard V102開發板MCU使用的是stm32F405RG,存在一個sd卡插槽、4個leds,1個復位按鈕,1個通用按鈕以及2個I2C,2個SPI和5個USART接口。具體參數見下表:
STM32F405RG MCU。 |
168 MHz Cortex-M4 CPU with 32-bit hardware floating point。 |
1 MiB flash storage, 192 KiB RAM。 |
USB口, 支持 串口,通用存儲,HID協議。 |
SD卡插槽。 |
MMA76603軸加速度計。 |
4 LEDs, 1復位按鈕, 1通用按鈕。 |
3.3V0.3A板載 LDO , 可從USB口或者外置電池供電。 |
實時時鍾。 |
30個通用IO口,其中28個支持5V輸入輸出。 |
2個 SPI接口, 2個 CAN接口, 2個I2C接口, 5個USART接口。 |
14個 12-bit ADC引腳。 |
2個DAC 引腳。 |
具體引腳如下:
具體實物圖如下:
二、開發板的連接方法
程序調試的連接方法:通過 USB 線連接開發板的microusb口與你的 PC 機(windows,mac,linux皆可)的usb口。當連接成功后開發板將上電和進入開機程序,綠色的 LED 燈應該在半秒或更少的時間內亮起,當其熄滅時意味着開機程序已完成。此時,電腦會出現一個u盤設備,容量97K左右。該u盤里存在4個文件:
boot.py 啟動文件,確定啟動方式,類似引導文件
main.py 主程序,boot.py默認引導啟動的程序,也就是你的python代碼主要是寫在這里。
pybcdc.inf 驅動程序,win7以上基本不需要驅動,個別精簡系統需要安裝驅動。如果確實需要安裝,請參考http://www.micropython.net.cn/support/tutorial/222.html
Readme.txt
使用的連接方法:使用時其實就是給該開發板供電,供電也是用microusb,直接將5V電源通過該口引入,如你可以使用充電寶、pc等具有供電能力的設備,利用usb連接供電。
三、第一個簡單程序——點亮板載led3
直接修改main.py文件,代碼如下:
# main.py -- put your code here! import pyb pyb.LED(3).on()
修改完,點擊保存時,板載的第一個燈會亮起,此時一定要等燈熄滅以后,才能按rst鍵或者是撥出usb。燈亮的過程表示正在存儲,因為此時是存在mcu的flash中,所以速度略慢一點。如果后面我們講了如何使用tf卡后,就會發現不存在這個過程。
重新給板子上電,此時會發現led3亮了。
四、讓板載led3閃爍
將main.py改為以下代碼:
led = pyb.LED(2) while True: led.toggle() pyb.delay(1000)
再次給板子通電,會發現,led3每秒閃一次。
關鍵代碼分析:
pyb.LED這個類有三個函數:
on( )表示開;
off( ) 表示關;
toggle( )表示閃爍
pyb.delay( ) 僅是一個簡單的毫秒級別的延時。pyb.delay(1000)表示1000毫秒。
五、點亮外殼led燈
1、硬件連接方法
取三個led燈(紅綠黃)分別接在板子對應gpio為Y1、Y2、Y3的口上。如下圖:
2、代碼
# main.py -- put your code here! import pyb led1 = pyb.Pin("Y1",pyb.Pin.OUT_PP) led2 = pyb.Pin("Y2",pyb.Pin.OUT_PP) led3 = pyb.Pin("Y3",pyb.Pin.OUT_PP) While True: led1.value(1) led2.value(1) led3.value(1)
3、實現效果
三個led亮起。
講到這里,后面大家就可以自己試着去做流水燈了。