研究了一下esp32
我把micropython和pystone弄了上去,测试了一下跑python的性能...
>>> pystone.main(5000)
Pystone(1.2) time for 5000 passes = 11.2669
This machine benchmarks at 443.778 pystones/second
这个成绩能凑合...
双核心CPU,主频240Mhz,这个测试只测单线程性能。
对比下e3 1230 v2,3.3G主频下跑micropython的性能...
>>> pystone.main()
Pystone(1.2) time for 50000 passes = 0.497
This machine benchmarks at 100604 pystones/second
速度是这个esp32的225倍...
但这个esp32的cpu按照手册的说法只需要用3mA电流...
实测整个系统耗电为5mA,但我不确定这个usb电流表在小电流下的精度够不够...
网络实际带宽测过么
老的那个只有几百KB 太挫了
双核240M电流只要3mA太强了,28335 150M就300多mA。stm32跑到72M差不多也要二三十mA
什么USB电流表?如果是3421方案的基本上做到0.1mA分辨率是靠谱的。
工艺先进。28335这种估计使用的还是奔腾时代的工艺。
看他官网上deep sleep能做到2.5uA,在40nm下也是有点凶,好奇这个leakage都是怎么控制,做的这么好。。。。
240MHz双核 3mA,低功耗模式 2.5uA,他们这是什么团队,感觉技术相当出众,国内应该是没多少人做得到。
纠正下错误,实测是50mA,另外今天仔细看了下datasheet,3mA得降主频到80Mhz,这个
也没看清楚...昨天搞得太晚了发帖的时候有点迷糊...
但我那款usb电流表是某次买零件的时候从那个店铺顺手买的...最小分辨率只到了
10mA...测试的过程中电流低到usb电流表会自动关断(丫主要是检测到充电完毕后自己关
断的用处),所以我对这个实测结果也有点怀疑。
我准备先换个usb电流表再说~
网络还没测,昨天只在micropython下scan了下wifi,确认能work就没继续。
有空我再测下。
感觉还不成熟
有个项目想用它
搞了半天最后放弃了
连基本的驱动都没有
wifi速度只有几百kB
是什么方面的驱动?
我觉得配套环境挺好的啊,成熟度肯定不能算是rock stable,但esp-idf目前更新的挺火
热的,过几天pull一下都有新东西。
micropython目前还处于beta阶段,我可以看到还剩一些比较fancy的esp8266的东西还没
port过去,但大部分核心工作也都做好了。
一般来说,开源环境能有这样的支持力度,我用起来就会很放心~
80MHz主频电流3mA也相当逆天了,这相当于37.5uA/MHz,这是什么概念?430和STM32L都差不多200uA的水平,一定还有什么条件没有给出,否则老夫表示不信。
这个是datasheet上说的~
我买了0.01mA分辨率的电流表,等到货了我再测量下看看~
但我测的是usb供电端,肯定会略大于3mA,起码板上还亮着一个led呢...
我对esp32的期待就是网络带宽 8266太弱了
淘宝下了两个 一直没顾上测 找不到了
功耗是挺牛逼
我整个0元路由器便宜呀
另外,我想了想觉得并非不可能。现在测的值,50ma/240mhz,不就是208uA/MHz嘛。
这已经是cpu全开最高性能,usb端测电流,板上还亮着led~如果测模块电流肯定得更小。
80MHz是丫的最低功耗工作模式,应该可以期待下~
我其实更感兴趣的是加上phy之后走rj45如何~以这个处理能力应该不会差。
可以买我的电流表,给你优惠:)
最近刚刚做了个USB接口的,有外壳体积很小。
我有1uA分辨率的,量程100mA,专门用来测试这种电路的功耗。当然取样率比较低,脉冲电流测不准。
连续工作芯片是不是很烫?
这个小东西上不可能用pyqt,pygtk,tkinter,因为丫木有屏幕...
用micropython其实和python区别很大,这个micropython小的很,连pdb都没有。它有独
立的第三方包环境,独立的pip工具。
你可以认为只是一个普通的script engine而已,只不过这个script engine恰好采用了
python语法,很多地方像python而已。至于这个script engine是否经过大量测试只是小
问题,反正一个是很简单,代码量才4k行,二是你终归要写个类似的东西,用它总比自己
写的经历的测试要多。
我也不需要它和cpython通用,事实上在pc上跑的也会是micropython(就像我前面的测
试,注意我用的也不是python版的pystone)。我也不需要操心内存使用问题,我会直接
在pc上构建一个类esp32的环境,用ulimit把内存限制到和esp32差不多大小,或者严格一
点限制成一半;用cpulimit或者直接改micropython代码,把cpu运行速度限制到接近
esp32,把esp32上需要spi,i2c扩展的东西都接到pc上,然后让他们直接在pc上写业务逻
辑。业务逻辑首先用python下的测试体系测试,pylint规范代码风格,doctest规范代码
的接口文档,pytest确保代码逻辑没问题;然后到micropython测试内存使用量,代码执
行效率;通过了再在pc上用qemu-esp32虚拟机里,在最接近硬件的虚拟环境中经历一轮测
试。等这三步测试做完了,最终才丢到硬件上去跑。在这2个虚拟环境里面我可以任意调
整分配给他们代码的资源,有没有问题跑个测试很快就能知道,有问题在pc上也有很强的
分析工具可以分析。这比在硬件上出了问题两眼一抹黑要方便的多。
你说的skillset技能问题我当然知道了,你没理解我要干这个事情的根本目的并不仅仅是
如何方便的解决一个问题,更重要的是能沿用python以及pc下的测试体系,搭建一个强大
而又完善的测试环境。就算我不在了,这套测试体系还在,接手的人能力不足要犯错误的
话,那不管用什么手段或者走什么技术路线,他终究是会把错误带入到系统中去的。在测
试环境暴露总比在生产环境暴露好。