19009|19

81

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【MicroPython】之thread多线程编程问题 [复制链接]

 
 
  1. # main.py -- put your code here!

  2. from pyb import Timer
  3. import thread
  4. # LED loop test
  5. def LED_loop_test():
  6.     for i in range(1, 5):
  7.         pyb.LED(i).on()
  8.         pyb.delay(100)
  9.         pyb.LED(i).off()
  10.         pyb.delay(100)
  11. LED_loop_test()

  12. thread.start_new_thread(LED_loop_test)
复制代码


    这里为什么无法使用thread模块?不支持吗


最新回复

库名前面有一个下划线,这个是真相 补充内容 (2019-12-21 12:59): 对于esp32 lobo移植,内置线程支撑,pyb的线程是单独的固件,标准固件就是不支持的  详情 回复 发表于 2019-12-9 11:02
点赞 关注
 
 

回复
举报

1万

帖子

25

TA的资源

版主

沙发
 
micropyhton中没有找到thread库。

点评

这么说 没有办法多线程编程吗?  详情 回复 发表于 2016-4-11 12:35
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
dcexpert 发表于 2016-4-11 10:57
micropyhton中没有找到thread库。

这么说 没有办法多线程编程吗?

点评

目前还不清楚。应该有办法的。  详情 回复 发表于 2016-4-11 12:38
 
 
 

回复

1万

帖子

25

TA的资源

版主

4
 
windworld 发表于 2016-4-11 12:35
这么说 没有办法多线程编程吗?

目前还不清楚。应该有办法的。

点评

嗯嗯 看看后面行不行  详情 回复 发表于 2016-4-11 12:45
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

5
 
dcexpert 发表于 2016-4-11 12:38
目前还不清楚。应该有办法的。

嗯嗯 看看后面行不行

点评

可以用中断,毕竟这个MicroPython上没有操作系统  详情 回复 发表于 2016-4-11 16:08
 
 
 

回复

129

帖子

0

TA的资源

一粒金砂(中级)

6
 
windworld 发表于 2016-4-11 04:45
嗯嗯 看看后面行不行

可以用中断,毕竟这个MicroPython上没有操作系统
个人签名昵称:灰小子
 
 
 

回复

5263

帖子

239

TA的资源

管理员

7
 
试试@ allankliu,能不能解决
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

点评

老大。别这样。我在和大家一起学习。 Python thread就有局限,upython就更加受限制了。但upython unix分支不知道是否有thread。待查。 micropython一般应用推荐使用while循环,加上中断callback。就像我们用C  详情 回复 发表于 2016-4-20 13:33
 
 
 

回复

17

帖子

0

TA的资源

一粒金砂(中级)

8
 
micropython 运行在mcu上,显然没法支持thread,应该是兼容不了原来的python thread库的

点评

应该是的  详情 回复 发表于 2016-4-15 18:29
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

9
 
ericdai 发表于 2016-4-15 16:13
micropython 运行在mcu上,显然没法支持thread,应该是兼容不了原来的python thread库的

应该是的
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

10
 
那应该能移植ucosii吧,但那就用不着Python了
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

104

帖子

0

TA的资源

一粒金砂(中级)

11
 
估计是没有RTOS,所以没有thread
 
 
 

回复

111

帖子

0

TA的资源

一粒金砂(高级)

12
 
呵呵,micropython != Python3。
 
 
 

回复

111

帖子

0

TA的资源

一粒金砂(高级)

13
 
本帖最后由 allankliu 于 2016-4-20 15:44 编辑

@nmg 老大。别这样。我在和大家一起学习。

Python thread就有局限,upython就更加受限制了。但upython unix分支不知道是否有threading。

【更新:查过了,threading是个dummy。但是有multiprocessing, asyncore......】

MCU版本的micropython应用还是推荐使用while循环,加上中断ISR callback。就像我们用在裸机上运行C代码一样的模式。

另外,micropython文档中4.2节标准库中提到了select, poll方法。但都是没有给出例子。

4.2.1 select,等待数据流事件发生
该模块提供函数用于等待数据流事件(选择可以操作的)。

Pyboard specifics(只限于PyBoard)
Polling轮询是在多个对象中等待读写操作的有效方式。当前支持的对象有:pyb.UART,pyb.USB_VCP。

函数
select.poll()
select.select(rlist,wlist,xlist[,timeout]),该函数效率不高,推荐使用Poll类。

class Poll
poll.register(obj[,eventmask])
poll.unregsiter(obj)
poll.modify(obj,eventmask)
poll.poll([timeout])

点评

nmg
Relax,多@你就习惯了  详情 回复 发表于 2016-4-21 10:19
 
 
 

回复

5263

帖子

239

TA的资源

管理员

14
 
allankliu 发表于 2016-4-20 13:33
@nmg 老大。别这样。我在和大家一起学习。

Python thread就有局限,upython就更加受限制了。但upython u ...

Relax,多@你就习惯了
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
 
 

回复

39

帖子

0

TA的资源

一粒金砂(中级)

15
 
我看官方说micropython是精减过了的,标准的python3的thread会不会依赖于低层的OS接口?
要能支持thread就好了。
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

16
 

_thread 库名

点评

库名前面有一个下划线,这个是真相  详情 回复 发表于 2019-12-9 11:02
 
 
 

回复

67

帖子

3

TA的资源

一粒金砂(中级)

17
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

18
 

500块钱的东西,不支持多线程,要你何用,骗吃骗喝md

点评

新固件已经支持thread,你是什么板这么贵  详情 回复 发表于 2019-8-14 10:48
 
 
 

回复

1万

帖子

25

TA的资源

版主

19
 
tanjingui 发表于 2019-8-14 10:33 500块钱的东西,不支持多线程,要你何用,骗吃骗喝md

新固件已经支持thread,你是什么板这么贵

 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(中级)

20
 

库名前面有一个下划线,这个是真相

补充内容 (2019-12-21 12:59): 对于esp32 lobo移植,内置线程支撑,pyb的线程是单独的固件,标准固件就是不支持的
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表