| **银杏科技有限公司旗下技术文档发布平台** |||| |技术支持电话|**0379-69926675-801**||| |技术支持邮件|Gingko@vip.163.com||| ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | V1.0 | 2020-06-15 | gingko | 初次建立 | ===== 例程六:【micropython】定时器实验 ===== ==== 一、实验目的 ==== 使用micropython定时器定时控制iCore3的ARM-LED。 ==== 二、实验设备及平台 ==== - iCore3双核心板[[https://item.taobao.com/item.htm?id=524229438677|点击购买]] - Micro USB线 - 电脑 ==== 三、实验原理 ==== 开发板STM32板上LED引脚为LED_RED,PI5;LED_GREEN,PI6;LED_BLUE,PI7。micropython默认LED(1)为PI5红灯、LED(2)为PI6绿灯、LED(3)为PI7蓝灯。输出高电平LED灭,输出低电平LED亮。通过定时器实现0.1s定时,每次翻转一次蓝色LED状态。驱动示意图如下图所示: {{ :micropython_2_1.png?direct&600 |}} ==== 四、实验步骤 ==== - 用数据线将iCore3的USB-OTG口与电脑相连; - 打开PYBFLASH磁盘,将代码包中的main.py文件替换到PYBFLASH的main.py; - 弹出磁盘,将iCore3重新上电,代码运行; ==== 五、实验现象 ==== iCore3双核心板上蓝色LED每秒状态翻转10次。 ==== 六、实验程序 ==== # -*- coding: utf-8-*- # main.py -- put your code here! from pyb import Timer #导入定时器 #定时器回调函数 def Timer_callback(): pyb.LED(3).toggle() #蓝色LED状态翻转 #创建定时器1,freq频率为10,每0.1秒执行一次回调函数,回调函数为Timer_callback() tm = Timer(1,freq=10,callback=lambda t:Timer_callback())