转载请注明:@小五义http://www.cnblogs.com/xiao*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亮起。
讲到这里,后面大家就可以自己试着去做流水灯了。